درخت تصمیم( Decision Tree) چیست؟

2020-02-16 17:06:29فرزاد حیدری

درخت تصمیم یک روش یادگیری با ناظر و از روشهای قدیمی و معروف برای ساخت مدل دسته بندی است و بسیاری از الگوریتم‌های طبقه‌بندی بر پایه‌ی این درخت‌ها ساخته شده‌اند.

 Decision Treeمفهومی است که اگر در نظر دارید تا تصمیم پیچیده‌ای بگیرید و یا می‌خواهید مسائل را برای خودتان به بخش‌های کوچک‌تری تقسیم کرده تا به شکل بهتری قادر به حل آن‌ها گردیده و ذهن‌تان را سازمان‌دهی کنید، می‌توانید از آن استفاده نمایید.

یادگیری درخت تصمیم روشی برای تقریب توابع هدف با مقادیر گسسته است. این روش نسبت به نویز داده ها مقاوم بوده و قادر است ترکیب فصلی گزاره های عطفی  را یاد بگیرد. درخت تصمیم درختی است که در آن نمونه ها  را به نحوی دسته بندی میکند که از ریشه به سمت پائین رشد میکنند و در نهایت به گره های برگ میرسد:

یک درخت تصمیم شامل سه نوع گره است:

  • گره ریشه: گره ای که هیچ یالی به آن وارد نمیشود و ممکن است تعدادی یال از آن خارج شوند
  • گره داخلی: دقیقا یک یال به آن وارد شده و تعداد دو یا بیشتر یال از آن خارج میشود
  • گره برگ: دقیقا یک یال به آن وارد شده و هیچ یالی از آن خارج نمیشود

علت نامگذاری آن با درخت تصمیم این است که این درخت فرایند تصمیم گیری برای تعیین دسته یک مثال ورودی را نشان میدهد. فرض کنید مدیر یک پایگاه هستید و میخواهید یک طبقه بندی انجام دهید که بر اساس ان تشخیص دهید که ایا فرد فرار مالیاتی داشته است یا خیر؟ این طبقه بندی به ما کمک میکند که جلوی فرار مالیاتی را بگیریم . بنابر این میخواهیم یک مدل ر ا بر اساس مجموعه داده موجود آموزش دهیم .

در این جا مجموعه داده اموزش و یک نمونه درخت تصمیم از روی داده ها نشان داده شده است:

                   

حال پس از آموزش الگوریتم، با توجه به مجموعه داده ازمایش باید مقدار ویژگی دسته را برای رکورد آزمایشی پیشبینی کنیم

بنابراین الگوریتم از ریشه درخت تصمیم گیری شروع کرده

اگر باز پرداخت داشته بود که کلاس ان NO بود ولی چون باز پرداخت نداشته است پس وارد مرحله بعد میشویم

حال چون فرد متاهل است و بر اساس درخت تصمیم گیری هیچ فرد متاهلی فرار مالیاتی نداشته است پس بنابراین تصمیم گرفته میشود که در کلاس NO باشد یعنی فرار مالیاتی نداشته است.