یادگیری درخت تصمیم
اسلاید 1: یادگیری درخت تصمیمAmirkabir University of Technology Computer Engineering & Information Technology DepartmentInstructor : Saeed Shiry& Mitchell Ch. 3
اسلاید 2: مقدمهدر یک مسئله یادگیری با دو جنبه مختلف روبرو هستیم:نحوه نمایش فرضیه هاروشی که برای یادگیری برمی گزینیمدر این فصل برای نمایش فرضیه ها از درخت تصمیم استفاده میکنیم و برای یادگرفتن این درخت از روش ID3 استفاده میکنیم.
اسلاید 3: درخت تصمیمدرختها درهوش مصنوعی برای نمایش مفاهیم مختلفی نظیر ساختار جملات، معادلات، حالات بازی، و غیره استفاده میشود.یادگیری درخت تصمیم روشی برای تقریب توابع هدف با مقادیر گسسته است. این روش نسبت به نویز داده هامقاوم بوده وقادر است ترکیب فصلی گزاره های عطفی را یاد بگیرد.این روش جزو مشهورترین الگوریتمهای یادگیری استقرائی است که بصورت موفقیت آمیزی در کاربردهای مختلف بکار گرفته شده است.
اسلاید 4: نمایش درخت تصمیم درخت تصمیم درختی است که در آن نمونه ها را به نحوی دسته بندی میکند که از ریشه به سمت پائین رشد میکنند و در نهایت به گره های برگ میرسد:هر گره داخلی یاغیر برگ (non leaf) با یک ویژگی (attribute) مشخص میشود. این ویژگی سوالی را در رابطه با مثال ورودی مطرح میکند.درهر گره داخلی به تعداد جوابهای ممکن با این سوال شاخه (branch) وجود دارد که هر یک با مقدار آن جواب مشخص میشوند.برگهای این درخت با یک کلاس و یا یک دسته از جوابها مشخص میشوند.علت نامگذاری آن با درخت تصمیم این است که این درخت فرایند تصمیم گیری برای تعیین دسته یک مثال ورودی را نشان میدهد.
اسلاید 5: مثالی از یک درخت تصمیممحل دردتبسرفهشکمباکتریگلوسکتهسینههیچکدامبلهخیرآپاندیسویروسیتببلهخیرآنفولانزاسرماخوردگیبلهخیرهیچکدامهر برگ این درخت یک کلاس یا دسته را مشخص میکند.یک مثال آموزشی در درخت تصمیم به این صورت دسته بندی میشود:از ریشه درخت شروع میشود.ویژگی معین شده توسط این گره تست می گردد.و سپس منطبق با ارزش ویژگی در مثال داده شده در طول شاخه ها حرکت رو به پائین انجام می دهد.این فرآیند برای گره های زیردرختان گره جدید تکرار می شود.
اسلاید 6: کاربردهادرخت تصمیم در مسایلی کاربرد دارد که بتوان آنها را بصورتی مطرح نمود که پاسخ واحدی بصورت نام یک دسته یا کلاس ارائه دهند.برای مثال میتوان درخت تصمیمی ساخت که به این سوال پاسخ دهد: بیماری مریض کدام است؟ و یا درختی ساخت که به این سوال پاسخ دهد: آیا مریض به هپاتیت مبتلاست؟برای مسائلی مناسب است که مثالهای آموزشی بصورت زوج (مقدار-ویژگی) مشخص شده باشند.تابع هدف دارای خروجی با مقادیر گسسته باشد. مثلا هر مثال با بله و خیر تعیین شود.نیاز به توصیف گر فصلی (disjunctive) باشد.
اسلاید 7: ویژگی های درخت تصمیمبرای تقریب توابع گسسته بکار می رود (classification)نسبت به نویز داده های ورودی مقاوم استبرای داده های با حجم بالا کاراست از این رو درData mining استفاده می شودمی توان درخت را بصورت قوانین if-then نمایش داد که قابل فهم برای استفاده استامکان ترکیب عطفی و فصلی فرضیه ها را می دهددر مواردی که مثالهای آموزشی که فاقد همه ویژگیها هستند نیز قابل استفاده است
اسلاید 8: نحوه نمایش درخت تصمیم ارتباط مستقیمی بین درخت تصمیم ونمایش توابع منطقی وجود دارد.درواقع هردرخت تصمیم ترکیب فصلی گزاره های عطفی است مسیر از ریشه به برگ ترکیب عطفی (AND)از ویژگی ها را مشخص نموده و خوددرخت ترکیب فصلی(OR) این ترکیبات را میسازد.
اسلاید 9: مثالترکیب عطفیOutlook=Sunny AND Wind=NormalNoNo
اسلاید 10: مثالترکیب فصلیOR
اسلاید 11: مثالتابع XOR XOR
اسلاید 12: الگوریتم یادگیری درخت تصمیماغلب الگوریتم های یادگیری درخت تصمیم بر پایه یک عمل جستجوی حریصانه (greedy) بالا به پائین (top-down) در فضای درختهای موجود عمل میکنند. این الگوریتم پایه، Concept Learning System (CLS) نامیده می شود که در سال 1950 معرفی شده است. این الگوریتم توسط Ross Quilan در سال 1986 بصورت کاملتری تحت عنوان Inducing Decisition trees (ID3) مطرح گردید. بعدها الگوریتم کاملتر دیگری تحت عنوان C4.5 ارائه گردید که برخی نقائص ID3 را برطرف میکند.
اسلاید 13: ایده اصلی ID3این ایده به Ocuum’s Razor مشهور است ومی گوید : ” دنیا ذاتا ساده است“ بنابراین از کوچکترین درخت تصمیم که با داده سازگار باشد انتظار می رود که مثالهای نادیده را به درستی دسته بندی کند.
اسلاید 14: بایاس درخت تصمیم انتخاب درختهای کوچکتر بایاس درخت تصمیم بر این ایده است که درختهای کوچکتر بر درختهای بزرگتر ترجیح داده شود.
اسلاید 15: سئوالاگر مسئله ما دارای m ویژگی باشد، ارتفاع درخت تصمیم چقدر خواهد بود؟جواب: درخت تصمیم دارای یک ریشه است که آن خود یک ویژگی است،در سئوال از آن ویژگی به پاسخی می رسیم که آن خود نیز، ویژگی است.پس حداکثر ارتفاع درخت m خواهد بود. ویژگی1 ویژگی2 ویژگیm دستهA دستهB
اسلاید 16: الگوریتم ID3در این الگوریتم درخت تصمیم از بالا به پائین ساخته میشود. این الگوریتم با این سوال شروع میشود: کدام ویژگی باید در ریشه درخت مورد آزمایش قرار گیرد؟برای یافتن جواب از یک آزمون آماری استفاده میشود تا مشخص گردد هر کدام تا چه حد قادر است به تنهائی مثالهای آزمایشی را دسته بندی کند.با انتخاب این ویژگی، برای هر یک از مقادیر ممکن آن یک شاخه ایجاد شده و مثالهای آموزشی بر اساس ویژگی هر شاخه مرتب میشوند. سپس عملیات فوق برای مثالهای قرار گرفته در هر شاخه تکرار میشوند تا بهترین ویژگی برای گره بعدی انتخاب شود.این الگوریتم یک جستجوی حریصانه است که در آن انتخاب های قبلی هرگز مورد بازبینی قرار نمیگیرند.
اسلاید 17: الگوریتم ID3
اسلاید 18: نحوه ساختن درختبرای ساختن درخت تصمیم از مثالهائی استفاده میشود که علامت گذاری (label) شده باشند. درواقع ورودی سیستم یادگیر مجموعه ای از مثالهاست که هر مثال توسط مجموعه ای از ویژگی ها بیان شده است، هرویژگی می تواند دارای مجموعه متناهی ازمقادیر مختلف باشد. برای هر مثال علاوه بر ویژگیها مقدار دسته بندی آن نیز لازم می باشد.در این فصل با درختهای تصمیمی آشنا خواهیم شد که برای دسته بندی بولی بکار می روند ولی درحالت کلی می توان یک درخت تصمیم ساخت که برای هر نوع دسته بندی بکار می رود.
اسلاید 19: کدام ویژگی طبقه بندی کننده بهتری است؟در درخت تصمیم (ID3) از یک مقدار آماری به نام بهره اطلاعات Information Gain استفاده می شود تا اینکه مشخص کنیم که یک ویژگی تا چه مقدار قادر است مثالهای آموزشی را بر حسب دسته بندی آنها جدا کند.
اسلاید 20: مثال برای یادگیری نحوه دسته بندی مثال ساده ای را بررسی می کنیم.در مثال ذیل کدام ویژگی باید در ریشه درخت قرار گیرد؟ x2 x1 x0با توجه به صفحه عبوری از مکعب زیر x0 یا x2 می توانند ریشه باشند
اسلاید 21: حل مثال :درخت کامل ما به این صورت است :این درخت کامل و پیچیدهاست وضمنا خطا هم ندارد. در بایاس کردن هم هدف ساده کردن است که ممکن است ایجاد خطا کند.
اسلاید 22: معیار کمی اندازه گیری یک ویژگی کدام است؟سئوال را می توان به روش دیگری نیز بیان کرد: ” بهترین ویژگی برای قرار گرفتن در ریشه درخت را چگونه باید انتخاب کنیم؟ “ برای حل تعداد مثالهای مثبت و منفی جدا شده را در نظر میگیریم
اسلاید 23: آنتروپی :میزان خلوص (بی نظمی یا عدم خالص بودن) مجموعه ای از مثالها را مشخص می کند. اگر مجموعه S شامل مثالهای مثبت و منفی از یک مفهوم هدف باشد آنتروپی S نسبت به این دسته بندی بولی بصورت زیر تعریف می شود. که نسبت مثالهای مثبت به کل مثالها و نسبت مثالهای منفی به کل مثالها می باشد. همچنین 0 log0=0 فرض میشود.
اسلاید 24: مثال : آنتروپی x0 و x1 و x2 چقدراست؟سئوال: اگر همه اعضاء S یکسان باشند آنتروپی چقدر است؟ صفر
اسلاید 25: سئوالاگر اعضای S نیمی مثبت و نیمی منفی باشد آنتروپی چقدر است ؟ یک
اسلاید 26: آنتروپی برای دسته بندی های غیر بولیاگر ویژگی هدف دارایC مقدار مختلف باشد آنتروپی S نسبت به این دسته بندی Cگانه بصورت زیر تعریف میشود:که در آن pi نسبتی از S است که به دسته i تعلق دارند. توجه شود که log همچنان در مبنای 2 گرفته میشود. در این حالت حداکثر آنتروپی میتواند log2C باشد.
اسلاید 27: بهره اطلاعات(Information Gain)بهره اطلاعات یک ویژگی عبارت است از مقدار کاهش آنتروپی که بواسطه جداسازی مثالها از طریق این ویژگی حاصل میشود.بعبارت دیگر بهره اطلاعات Gain(S,A) برای یک ویژگی نظیر A نسبت به مجموعه مثالهای S بصورت زیر تعریف میشود:که در آن Values(A) مجموعه همه مقدار ویژگی های A بوده و SV زیرمجموعه ای از S است که برای آن A دارای مقدار V است.در تعریف فوق عبارت اول مقدار آنتروپی داده ها و عبارت دوم مقدار آنتروپی مورد انتظار بعد از جداسازی داده هاست.
اسلاید 28: مثالبا استفاده از مثالهای آموزشی زیر درختی بسازید که لذت بخش بودن بازی در روزهایی با ویژگیهای مختلف راتعیین کند.
اسلاید 29: Overfittingبرای فرضیه ای مثل h متعلق به فضای فرضیه H دو نوع خطا تعریف میشود:خطا روی داده های آموزشی errortrain(h) خطا روی کل داده های ممکن D errorD(h) میگوئیم برای فرضیه h H روی داده های آموزشی Overfitting رخ میدهد اگر فرضیه ای مثل h0 H وجود داشته باشد که:errortrain(h) < errortrain(h0)anderrorD(h) > errorD(h0)
اسلاید 30: Overfitting
اسلاید 31: دلایل بروز Overfittingالگوریتم ID3 هر شاخه از درخت را آنقدر به عمق میبرد که بتواند بطور کامل مثالهای آموزشی را دسته بندی کند. این امر میتواند منجر به Overfitting شود. دلایل بروز overfitting عبارتند از:وجود نویز در داده های آموزشیتعداد کم مثالهای آموزشیبرای مثال اگر فقط دو بار پرتاب سکه داشته باشیم و هر دو بار شیر آمده باشد چه نتیجه ای در مورد این آزمایش میتوان گرفت؟
اسلاید 32: پرهیز ازOverfittingجلوگیری از رشد درخت قبل از رسیدن به مرحله ای که بطور کامل داده های آموزشی را دسته بندی نماید.اجازه به رشد کامل درخت و سپس حرس کردن شاخه هائی که مفید نیستند. (post pruning)در عمل روش دوم بیشتر استفاده شده است زیرا تخمین اندازه صحیح درخت کار ساده ای نیست.
اسلاید 33: حرس کردن درخت به روش Reduced Error Pruningاین روش توسط Quinlan ارائه شده است. ابتدا به درخت اجازه داده میشود تا به اندازه کافی رشد کند. سپس گره هائی را که باعث افزایش دقت دسته بندی نمیشوند حرس میگردند:داده ها به دو مجموعه تست و آموزشی تقسیم میشوند.درخت با داده های آموزشی مطابق روش قبل یاد گرفته میشود.سپس برای یک گره داخلی (غیر برگ n )زیرشاخه n حذف میگردد. این زیر شاخه با یک برگ جایگزین میشود. به این برگ دسته مثالهای اکثریت یعنی دسته بندی اکثر مثالهای قرار گرفته تحت این شاخه نسبت داده میشود.عملکرد درخت برروی مثالهای تست بررسی میشود: اگر درخت حرس شده عملکرد بهتر و یا مساوی با درخت فعلی داشت از درخت حرس شده استفاده میشود.حرس کردن آنقدر ادامه می یابد تا حرس بیشتر، سودی نداشته باشد.
اسلاید 34: Overfitting یک پدیده عمومی استپدیده overfitting منحصر به درخت های تصمیم نیست و سایر روشهای یادگیری ماشینی نیز با آن مواجه هستند. این پدیده غالبا وقتی اتفاق می افتد که:the hypothesis space is very largethe hypothesis search is not biased toward simple modelsthere is little training datathere is a lot of noise in the training dataدر عمل با دیدن شرایط زیر میتوانیم بگوئیم که overfitting رخ داده است:اختلاف زیاد بین دقت دسته بندی داده های آموزشی و داده های تسترسیدن به فرضیه و یا مدلهای خیلی پیچیده ( مثلا رسیدن به یک درخت تصمیم خیلی بزرگ)
اسلاید 35: در نظر گرفتن ویژگی های با مقادیر پیوستهدرخت یادگرفته شده توسط ID3 محدود به توابع و ویژگی های با مقدار گسسته است.برای اینکه این الگوریتم ویژگی های با مقدار پیوسته را نیز شامل شود، میتوان برای یک ویژگی پیوسته مثل A یک ویژگی بولی مثل Ac تعریف گرد که Ac درست است اگر A<C باشد و در غیر اینصورت نادرست است.C باید طوری انتخاب شود که بهره اطلاعات را حداکثر کند. اینکار میتواند با مرتب کردن مقادیر ویژگی A وانتخاب نقاطی که مقادیر مثالهای مجاور تغییر میکنند انجام شود. در چنین حالتی میانگین دومثال مجاور میتواند بعنوان آستانه انتخاب شود.
اسلاید 36: سایر معیارهای انتخاب ویژگی برای درختاگر به مثال قبل یک ویژگی به نام تاریخ اضافه شود، این ویژگی به تنهائی قادر خواهد بود تا کلیه مثالهای آموزشی را دسته بندی کند. در واقع بعلت اینکه این ویژگی دارای بهره اطلاعات زیادی است بعنوان ریشه درخت انتخاب خواهد شد و درخت حاصله دارای عمق بسیار کمی خواهد بود.با وجود اینکه این درخت مثالهای آموزشی را بخوبی دسته بندی خواهد کرد اما در مورد مثالهای نادیده بسیار ضعیف عمل خواهد نمود. زیرا این درخت در عمل مثالهای آموزشی را حفظ کرده و قادر به تعمیم نیست.
اسلاید 37: معیار نسبت بهره یا gain ratioبرای پرهیز از ویژگی هائی مثل تاریخ میتوان از معیار دیگری با نام نسبت بهره و یا gain ratio استفاده نمود که خاصیت آن حساسیت داشتن به این است که یک ویژگی با چه گستردگی و یکنواختی داده ها را جدا میکند.برای اینکار عبارتی بصورت زیر تعریف میشود:با استفاده از عبارت فوق نسبت بهره بصورت زیر تعریف میشود:
اسلاید 38: معیار نسبت بهره یا gain ratioSI باعث میشود تا ویژگی هائی که مقادیر زیادی با توزیع یکنواخت دارند حذف گردند.برای مثال یک ویژگی نظیر تاریخ برای تک تک مثالها توزیع یکسانی دارد از اینرو SI=logn2 خواهد شد در حالیکه اگر یک ویژگی مثالها را به دو دسته تقسیم کند SI=1 خواهد شد.یک مشکل عملی استفاده ازمعیار نسبت بهره این است که ممکن است مخرج این عبارت صفر و یا خیلی کوچک شود. در این حالت از روشهای هیوریستیک استفاده میشود.
اسلاید 39: ویژگی هائی با هزینه متفاوتدر بررسی پرونده یک بیمار ممکن است هزینه تست کردن برخی ویژگی ها بسیار بالا باشد و یا اینکه علیرغم موثربودن ویژگی تست آن خطرناک باشد. در این حالت باید درخت را طوری بایاس کرد که ویژگی های با هزینه کم را ترجیح دهد. برای مثال ممکن است بهره را بر هزینه تقسیم نمود.
اسلاید 40: مثالهائی با ویژگی های نامعلومدر برخی از کاربردها نظیر مدارک پزشکی جمع آوری شده در بیمارستانهای مختلف ممکن است مقدار برخی از ویژگی ها درست ثبت نشده باشد. در این صورت یک انتخاب میتواند این باشد که به آن مقدار متداولترین مقدار مثالها در گره n نسبت داده شود.
اسلاید 41: UCI Machine Learning RepositoryCurrently maintains 177 data sets as a service to the machine learning community.http://archive.ics.uci.edu/ml/
اسلاید 42: موضوع ارائهfuzzy decision trees pruning in decision tree inductio
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.