اگر شما نیز مایلید به طور کامل با درخت تصمیم گیری آشنا شده و نحوه استفاده از درخت تصمیم گیری و همچنین چگونگی ایجاد این درخت را بدانید، حتماً این مطلب برای شما بسیار مفید خواهد بود، با ما همراه باشید. قبل از اینکه به سراغ ادامه مقاله برویم مایلم مجموعه آموزش روانشناسی فرادرس را به شما معرفی کنم؛ برای دریافت این آموزش ارزشمند روی لینک زیر کلیک کنید:
درخت تصمیم گیری چیست؟
تصمیم گیری معمولاً برای اکثر افراد کاری دشوار و پر از استرس است. خیلی از مواقع نیز این تصمیم گیری برای امور مهم زندگی است و سهل انگاری در آن میتواند برای ما عواقبی را به همراه داشته باشد. نوشتن مراحل تصمیم از روشهایی است که باعث شده از درستی تصمیم خود مطمئن شوید. البته نوشتن مراحل تصمیم قوانین خاص خود را دارد. یکی از سادهترین راهها برای داشتن تصمیمی صحیحی و اصولی، استفاده از درخت تصمیم گیری است.
Decision Tree یا درخت تصمیم گیری در واقع نقشهایی از نتایج احتمالی مجموعههایی از انتخابها یا گزینههای مرتبط با هم است. این درخت باعث شده یک فرد یا سازمان به خوبی قادر به سنجش اقدامات متحمل از نظر هزینهها، احتمالات و مزایا باشد
. این روش برای پیشبرد اهداف و برنامههای شخصی و غیررسمی یا ترسیم الگوریتمی برای پیش بینی بهترین گزینه از طریق ریاضیات بسیار کارآمد است. درخت تصمیم گیری این امکان را به افراد داده تا یک تصمیم منطقی و عاقلانه گرفته و همچنین در مواجهه با مسائل مختلف، بدون استرس و نگرانی وارد عمل شوند.
مزایای درخت تصمیم گیری
استفاده از درخت تصمیم گیری دارای مزایای متعددی به نسبت سایر روشهای دادهکاوی است که در ادامه به طور خلاصه با آنها آشنا خواهیم شد:
- قابل استخراج و قابل فهم بودن قوانین تولید شده و به کار برده شده در درخت تصمیم گیری
- دارای توانایی لازم برای کار با دادههای پیوسته و گسسته
- حذف مقایسههای غیرضروری در این ساختار
- امکان استفاده از ویژگیهای متفاوت برای نمونههای متفاوت
- عدم نیاز به تخمین تابع توزیع
- ساده بودن آماده سازی دادهها برای یک درخت تصمیم گیری برخلاف دیگر روشها
- سادگی توصیف شرایط در درختان تصمیم گیری با استفاده از منطق بولی
- وجود امکان تایید یک مدل در درختهای تصمیم به کمک آزمونهای آماری
- قدرت بالای ساختارهای درخت تصمیم گیری جهت تحلیل دادههای بزرگ در زمان کوتاه
- امکان پیدا کردن روابط غیرمنتظره یا نامعلوم
- شناسایی تفاوت زیرگروهها توسط درختهای تصمیم گیری
- سازگاری درختهای تصمیم گیری با دادههای بدون مقدار
- عدم نیاز درخت تصمیم گیری به تنظیمی خاص جهت افزایش دقت الگوریتم
چگونگی عملکرد درخت تصمیم گیری
درخت تصمیم گیری را میتوان خیلی شبیه به بازی بیست سوالی دانست. در بازی بیست سوالی نیز فرد موضوع خاصی را در ذهن داشته و شخص مقابل با پرسشهای متوالی سعی کرده با بله و خیری که دریافت میکند به جواب نزدیک شود.
در مورد درخت تصمیم گیری نیز به همین شکل است. در واقع پرسشهایی وجود داشته و بعد از تعیین پاسخ هر سوال، سوالی دیگر مطرح خواهد شد. در صورت انتخاب صحیح پرسشها، با استفاده از تعداد کمی از پرسشها به خوبی میتوان به پیش بینی رکورد جدید دست پیدا نمود.
در این روش در واقع یک گره ریشه در بالا قرار گرفته و در پایین، برگهای آن آورده خواهند شد. یک رکورد در گره ریشه وارد شده و انتهای این گره یک تست ایجاد شده تا به این شکل مشخص شود رکورد باید به کدام یک از گرههای فرزند برود.
این درخت دارای تعدادی گره و شاخه است و طبقه بندی نمونهها در آن به شکلی انجام شده که از ریشه به سمت پایین رشد کرده و در نهایت به گرههای برگ ختم خواهند شد. هر گره داخلی یا غیر برگ دارای یک ویژگی است.
این ویژگی باعث ایجاد سوالی در رابطه با مثال ورودی میشود. در هر گره داخلی، تعداد شاخههای موجود با تعداد جوابهای ممکن برابر است و هر یک با مقدار آن جواب تعیین خواهند شد. برگهای این درخت با یک کلاس یا یک طبقه از جوابها معین میگردد.
نحوه طراحی یک درخت تصمیم گیری به زبان ساده
همانطور که پیش از این نیز گفتیم درخت تصمیم گیری به نوعی یک نمودار ترسیمی است که پروسه تصمیم گیری یا سلسله مراتب تصمیمات را به نمایش در خواهد آورد. این درخت ابزاری کمکی برای پروسه تصمیم گیری است و متشکل از یک گراف یا مدل درخت مانند است که تصمیمات و عواقب متحمل آنها را به نمایش در خواهند آورد. در ادامه با هم یاد خواهیم گرفت که چگونه یک درخت تصمیم گیری ساده را برای داشتن تصمیمات مختلف زندگی خود طراحی کنیم:
تعیین صورت مسئله
در وهله اول شما باید صورت مسئله را به صورت واضح و مشخص مطرح کنید. باید تصمیم نهایی خود را تعیین کنید، جرقه فکری خود را روی کاغذ بیاورید و به اولویت بندی متغیرهای مشخص شده بپردازید. در واقع باید در اولین قدم خوب به این فکر کنید که موضوع اصلی درخت یا مشکل شما چیست. تعیین موضوع اصلی باعث میشود که حواشی حذف شده و بهتر بتوانید روی موضوع اصلی تمرکز کنید. بعد از آن میتوانید برای گسترش ایدههای خود از جرقههای فکری کمک بگیرید.
بر روی برگهای جداگانه یا در حاشیه برگه اصلی، متغیرهای وابسته به تصمیم خود را یادداشت کنید. برای مثال اگر قصد خرید یک خانه دارید، مواردی چون قیمت، متراژ و… متغیرهای این تصمیم به شمار خواهند آمد. بعد از تعیین متغیرها باید براساس اهمیتی که هر یک داشته اولویت بندی کنید. این کار باعث شده شما در تصمیم خود ثابت قدم تر و مصمم تر شوید.
طراحی یک درخت تصمیم گیری ساده
برای طراحی درخت تصمیم گیری ابتدا باید یک دایره یا مربع در گوشه کاغذ رسم نموده و در آن به نوشتن متغیرهای مهم تصمیم خود بپردازید. دست کم ۲ تا ۴ شاخه از متغیر اول خود خارج کنید. برای هر شاخه باید گزینه یا گزینههایی که به واسطه متغیر پیش روی شما قرار خواهد گرفت را تعیین کنید.
برای مثال اگر قصد خرید خانهای را داشته و متغیر اول شما قیمت است میتوانید برای آن زیرشاخههایی با عناوین قیمت ۸۰۰ میلیون تا ۱ میلیارد و نیز بالای یک میلیارد را خارج کنید. بعد از اتمام این بخش به انتهای هر شاخه، دایرهها و مربعهای جدیدی بکشید. این دایرهها و مربعها نشاندهنده اولویتهای بعدی شما از فهرست متغیرها هستند. شاخههای خارج شده از آن دایرهها در واقع گزینههای بعدی شما هستند.
براساس پارامترهای درنظر گرفته برای انتخاب اول، اغلب گزینههای مرتبط به هر مربع در هر زیرمجموعه متفاوت از دیگری خواهد بود. برای نمونه در مثال خرید خانه، تمامی گزینهها در قدم بعدی به متراژ خواهند رسید. گزینههای خارج شده از دایره مصرف سوخت واقع در انتهای هر شاخه دارای محدوده متفاوتی هستند؛ چرا که هر خانه ممکن است از نظر متراژ با دیگری متفاوت باشد.
حال به افزودن مربعها و شاخهها ادامه دهید. با این کار نمودار شما گسترش پیدا کرده و شکل نهایی خود را نشان خواهد داد. قطعاً وقتی شروع به نوشتن و طراحی میکنید متغیرهایی بیشتر به ذهنتان خواهد رسید. گاهی یک متغیر صرفاً در یک شاخه اعمال شده و گاهی نیز تمامی شاخهها را درگیر میکند.
طراحی یک درخت تصمیم گیری برای نگرانی ها
شاید عجیب به نظر برسد اما این درخت نقش فوقالعادهای در کاهش نگرانیهای شما خواهد داشت. این درخت باعث شده منشاء نگرانیهای خود را پیدا کرده و از آنها مشکلاتی قابل حل بسازید. این کار نقش بسیار موثری در از بین رفتن استرس و نگرانی شما خواهد داشت.
بعد از مطرح کردن نگرانیها، در صورتی که نگرانیها مرتبط با مشکلی است که حل آن از عهده شما خارج است بهترین کار دست برداشتن از نگرانی بابت آن است. بهتر است برای فراموشی این مشکل و نگرانیهای آن، به مسائل دیگری فکر کنید.
اما چنانچه قادر به حل آن هستید میتوانید برای حل آن چارهای اندیشیده تا این نگرانی را برطرف کنید. برای مشخص کردن دقیق نگرانیها باید در وهله اول به طور صریح تعیین کنید چه چیزی شما را نگران کرده است. آن را در بالای برگه نوشته و به آن به عنوان موضوع اصلی درخت تصمیم گیری نگاه کنید. بعد از تعیین نگرانی باید ببینید که آیا برای حل آن کاری از دست شما ساخته است یا خیر؟
شاخهای از موضوع اصلی خارج کرده و بنویسید که آیا در این رابطه کاری از عهده من برمیآید؟ بعد از آن، دو شاخه بله و خیر خارج کنید. در صورتی که پاسخ شما مثبت است میتوانید بر روی برگهای جداگانه کارهایی که میتوانید برای حل مشکل موردنظر انجام دهید را یادداشت کنید.
هرس کردن درخت تصمیم گیری
یکی از راههایی که در روش طراحی درخت تصمیم گیری به شما کمک میکند راحتتر دست به تصمیم و انتخاب بزنید هرس کردن این درخت است. هرس کردن این درخت به معنای حذف برخی از زیر گرههای درخت تصمیم است. برخی از شاخهها در زمان ساخت یک درخت تصمیم، در دادههای آموزش ناهنجاریهایی را به وجود خواهند آورد که از دادههای پرت و یا نویز منشاء میگیرند.
در برخی از الگوریتمهای ایجاد درخت، هرس کردن یکی از اجزای الگوریتم است. اما در برخی الگوریتمها نیز، هرس کردن صرفاً برای از بین بردن مشکل بیش بر ارزش به کار برده میشود.
تمایل درختهای هرس شده به کوچکتر بودن و با پیچیدگی کمتر باعث شده که فهم سادهتری داشته باشند. در طبقهبندی صحیح دادههای تست، معمولاً عملکرد این درختها از درختهای هرس نشده بهتر و سریعتر است. برای هرس درخت دو رویکرد زیر بسیار متداول هستند:
پیش هرس
در این روش توقفهای مکرر در مراحل ساخت درخت، به خودی خود درخت به صورت هرس شده ایجاد خواهد شد. در واقع با ایجاد یک توقف، گره تبدیل به برگ میشود.
هرس پسین
این نوع رویکرد هرس، استفاده بیشتری دارد. در این روش، زیر درختها از یک درخت تکامل یافته هرس خواهند شد. یک زیر درخت در یک گره از طریق حذف شاخهها و جایگزینی آنها با یک برگ، هرس میشود.
متغیرها در درخت تصمیم گیری
بسته به نوع مسئله موردنظر ممکن است در درخت تصمیم گیری، از دو نوع متغیر زیر استفاده شود:
متغیر عددی (پیوسته)
این دسته از متغیرها همچون پارامترهایی چون قد، وزن، سن و… هستند و از مجموعه اعداد حقیقی مقدار خود را میگیرند.
متغیر ردهای (گسسته)
این نوع متغیر نیز همچون نوع، کیفیت، جنس و… به صورت دو یا چند مقدار گسسته میباشند. این که برخی از متغیرها دارای دو دو جواب هستند و باید از بین آنها یک جواب را انتخاب نمود نشان دهنده طبقهای بودن متغیر است. از طرفی امکان تقسیم این متغیر به دو گروه مستقل و وابسته نیز وجود خواهد داشت. منظور از متغیرهای مستقل، متغیرهایی است که مقدار آنها به عنوان مبنای تصمیم گیری ما مورد استفاده قرار میگیرد.
از طرفی متغیرهای وابسته نیز از آن دسته متغیرهایی هستند که باید براساس مقدار متغیرهای مستقل، مقدار آنها پیشبینی شود. برای نمایش متغیرهای مستقل از گرههای میانی استفاده خواهد شد و برگ نشان دهنده متغیرهای وابسته است. در هر حال هر یک از این دو نوع متغیر احتمال داشته از نوع گسسته یا پیوسته باشند.
آشنایی با اصطلاحات مرتبط با درخت تصمیم گیری
به طور کلی در زمینه طراحی درخت تصمیم گیری شما نیاز است که برخی از اصطاحات را به خوبی بدانید. در ادامه مهمترین آنها را با هم بررسی خواهیم نمود:
گره ریشه
این نوع گره دارای تمامی نمونههای موجود است و به نوعی سطح بعدی اولین تقسیم مجموعه اصلی به دو مجموعه همگنتر میباشد. برای مثال یک گره ریشه ممکن است از ۳۰ نمونه برخوردار باشد.
گره تصمیم
منظور از گره تصمیم، گرهای است که به زیر گرههای بعدی تقسیم خواهد شد.
برگ یا گره پایانه
گرههایی که تقسیم نشده و در واقع از طریق آنها تقسیم پیاپی پایان خواهد یافت برگ یا گره پایانه نامیده میشوند.
انشعاب یا زیر درخت
به بخشی از کل درخت، انشعاب یا زیر درخت گفته میشود.
گره پدر و فرزند
گره والد یا گره پدر در واقع گرهای است که به چندین زیر گره تقسیم خواهد شد و برای زیر گرههای خود پدر یا والد است. حال آن که گرههای دارای والد، گرههای فرزند نامیده میشوند.
کلام آخر در مورد درخت تصمیم گیری
در این مقاله ابتدا به این سوال پاسخ دادیم که درخت تصمیم گیری چیست و چه مزایایی دارد و در ادامه در مورد چگونگی طراحی درخت تصمیم گیری صحبت کردیم؛ امیدواریم از این مقاله نهایت استفاده را برده باشید. در پایان مایلم آموزش تصمیم گیری چند هدفه را که در فرادرس منتشر شده است به شما معرفی کنم؛ برای دریافت این آموزش روی لینک زیر کلیک کنید: