Download - یادگیری درخت تصمیم
تصمیم یادگیری درخت
Amirkabir University of TechnologyComputer Engineering & Information Technology Department
Instructor : Saeed Shiry
Mitchell Ch. 3
مقدمه
روبرو مختلف جنبه دو با یادگیری مسئله یک درهستیم:
ها فرضیه نمایش نحوه گزینیم برمی یادگیری برای که روشی
برای فصل این ها در فرضیه درخت نمایش ازبرای و میکنیم استفاده این یادگرفتنتصمیم
روش از .ID3درخت میکنیم استفاده
تصمیم درخت
مفاهیم نمایش برای مصنوعی درهوش درختهاحاالت معادالت، جمالت، ساختار نظیر مختلفی
. میشود استفاده غیره و بازی، تقریب برای روشی تصمیم درخت توابع یادگیری
گسسته مقادیر با به. هدف نسبت روش این استفصلی ترکیب است وقادر بوده هامقاوم داده نویز
. بگیرد یاد را عطفی های گزاره یادگیری الگوریتمهای مشهورترین جزو روش این
در آمیزی موفقیت بصورت که است استقرائی. است شده گرفته بکار مختلف کاربردهای
تصمیم نمایشدرخت
آن در که است درختی تصمیم نحوی درخت به را ها نمونهدر و میکنند رشد پائین سمت به ریشه از که میکند بندی دسته
میرسد برگ های گره به :نهایت برگ یاغیر داخلی گره ویژگی (non leaf )هر یک (attribute)با
. ورودی مثال با رابطه در را سوالی ویژگی این میشود مشخص. میکند مطرح
شاخه سوال این با ممکن جوابهای تعداد به داخلی گره درهر(branch). میشوند مشخص جواب آن مقدار با یک هر که دارد وجود
مشخص جوابها از دسته یک یا و کالس یک با درخت این برگهایمیشوند.
این که است این تصمیم درخت با آن نامگذاری علتمثال یک دسته تعیین برای گیری تصمیم فرایند درخت
. میدهد نشان را ورودی
تصمیم درخت یک از مثالیمحل درد
تب سرفه
شکم
باکتری
گلو
سکته
سینه هیچکدام
بله خیر
آپاندیس
ویروسی تب
بله خیر
آنفوالنزا سرماخوردگی
بله خیر
هیچکداممشخص • را دسته یا کالس یک درخت این برگ هر
میکند.صورت • این به تصمیم درخت در آموزشی مثال یک
: میشود بندی دسته•. میشود شروع درخت ریشه ازمی • تست گره این توسط شده معین ویژگی
گردد.داده • مثال در ویژگی ارزش با منطبق سپس و
انجام پائین به رو حرکت ها شاخه طول در شده. دهد می
جدید • گره زیردرختان های گره برای فرآیند این. شود می تکرار
کاربردها
بصورتی را آنها بتوان که دارد کاربرد مسایلی در تصمیم درختکالس یا دسته یک نام بصورت واحدی پاسخ که نمود مطرح
. دهند ارائه سوال این به که ساخت تصمیمی درخت میتوان مثال برای
: که ساخت درختی یا و است؟ کدام مریض بیماری دهد پاسخ : مبتالست؟ هپاتیت به مریض آیا دهد پاسخ سوال این به
زوج بصورت آموزشی مثالهای که است مناسب مسائلی برای. ) - باشند) شده مشخص ویژگی مقدار
. مثال هر مثال باشد گسسته مقادیر با خروجی دارای هدف تابع. شود تعیین خیر و بله با
فصلی گر توصیف به .(disjunctive)نیاز باشد
تصمیم درخت های ویژگی
رود می بکار گسسته توابع تقریب (classification)برای نویز به ورودی نسبت های است مقاوم داده در رو این از کاراست باال حجم با های داده Dataبرای
mining شود می استفاده قوانین بصورت را درخت توان داد if-thenمی نمایش
است استفاده برای فهم قابل که فصلی امکان و عطفی دهد ترکیب می را ها فرضیه که آموزشی مثالهای که مواردی ویژگیها در همه فاقد
است استفاده قابل نیز هستند
تصمیم نمایشدرخت نحوه
درخت بین مستقیمی ارتباطمنطقی توابع ونمایش تصمیم
. هردرخت درواقع دارد وجودهای گزاره فصلی ترکیب تصمیم
است عطفی
عطفی ترکیب برگ به ریشه از مشخص (AND)مسیر را ها ویژگی ازفصلی ترکیب خوددرخت و .(OR)نموده میسازد را ترکیبات این
مثال
عطفی ترکیب
Outlook=Sunny AND Wind=Normal
No No
مثال
فصلی ترکیب
OR
مثالتابع XOR
XOR
تصمیم درخت یادگیری الگوریتم
عمل یک پایه بر تصمیم درخت یادگیری های الگوریتم اغلبحریصانه ) پائین( )greedyجستجوی به در( top-downباال
. میکنند عمل موجود درختهای فضای ،پایه الگوریتم )Concept Learning System )CLSاین
سال در که شود می .1950نامیده است شده معرفی توسط الگوریتم سال Ross Quilanاین بصورت 1986در
عنوان تحت )Inducing Decisition trees )ID3کاملتری. گردید مطرح
عنوان تحت دیگری کاملتر الگوریتم ارائه C4.5بعدهانقائص برخی که .ID3گردید میکند برطرف را
اصلی ID3ایده
به ایده ومی Ocuum’s Razorاین است مشهورگوید :
“ است” ساده ذاتا دنیا
سازگار داده با که تصمیم درخت کوچکترین از بنابرایندرستی به را نادیده مثالهای که رود می انتظار باشد
. کند بندی دسته
تصمیم بایاسدرخت
کوچکتر درختهای انتخابدرختهای که است ایده این بر تصمیم درخت بایاس
. شود داده ترجیح بزرگتر درختهای بر کوچکتر
سئوال
دارای ما مسئله خواهد mاگر چقدر تصمیم درخت ارتفاع باشد، ویژگیبود؟
جواب:است، ویژگی یک خود آن که است ریشه یک دارای تصمیم درخت
است ویژگی نیز، خود آن که رسیم می پاسخی به ویژگی آن از سئوال .دردرخت ارتفاع حداکثر . mپس بود 1ویژگیخواهد
2ویژگی
mویژگی
Bدسته Aدسته
ID3الگوریتم ساخته پائین به باال از تصمیم درخت الگوریتم این در
: کدام. میشود شروع سوال این با الگوریتم این میشودگیرد؟ قرار آزمایش مورد درخت ریشه در باید ویژگی
تا میشود استفاده آماری آزمون یک از جواب یافتن برایتنهائی به است قادر حد چه تا کدام هر گردد مشخص
. کند بندی دسته را آزمایشی مثالهای یک آن ممکن مقادیر از یک هر برای ویژگی، این انتخاب با
هر ویژگی اساس بر آموزشی مثالهای و شده ایجاد شاخه . مثالهای برای فوق عملیات سپس میشوند مرتب شاخهویژگی بهترین تا میشوند تکرار شاخه هر در گرفته قرار
. شود انتخاب بعدی گره برای آن در که است حریصانه جستجوی یک الگوریتم این
. نمیگیرند قرار بازبینی مورد هرگز قبلی های انتخاب
ID3الگوریتم
درخت ساختن نحوه
که میشود استفاده مثالهائی از تصمیم درخت ساختن برایگذاری . (label)عالمت باشند شده
که مثالهاست از ای مجموعه یادگیر سیستم ورودی درواقعاست، شده بیان ها ویژگی از ای مجموعه توسط مثال هر
مختلف ازمقادیر متناهی مجموعه دارای تواند می هرویژگیآن . باشد بندی دسته مقدار ویژگیها بر عالوه مثال هر برای
باشد می الزم .نیز برای که شد خواهیم آشنا تصمیمی درختهای با فصل این در
بولی بندی توان دسته می کلی درحالت ولی روند می بکاربکار بندی دسته نوع هر برای که ساخت تصمیم درخت یک
رود .می
کننده بندی طبقه ویژگی کداماست؟ بهتری
( تصمیم درخت نام( ID3در به آماری مقدار یک ازاطالعات می Information Gainبهره استفاده
چه تا ویژگی یک که کنیم مشخص اینکه تا شودحسب بر را آموزشی مثالهای است قادر مقدار
. کند جدا آنها بندی دسته
مثال می بررسی را ای ساده مثال بندی دسته نحوه یادگیری برای
کنیم. گیرد؟ قرار درخت ریشه در باید ویژگی کدام ذیل مثال در
x2
x1
x0زیر مکعب از عبوری صفحه به توجه باشند x2یا x0با ریشه توانند می
مثال : حل
: است صورت این به ما کامل درخت
پیچیده و کامل درخت این. ندارد هم خطا وضمنا است
هدف هم کردن بایاس درکه است کردن ساده
. کند خطا ایجاد است ممکن
یک گیری اندازه کمی معیاراست؟ کدام ویژگی
: کرد بیان نیز دیگری روش به توان می را سئوالرا” درخت ریشه در گرفتن قرار برای ویژگی بهترین
کنیم؟ “ انتخاب باید چگونهمثالهای تعداد حل برایشده جدا منفی و مثبت
میگیریم نظر در را
آنتروپی :
( یا نظمی بی خلوص خالص میزان (عدم ای بودن مجموعه . مجموعه اگر کند می مشخص را مثالها مثالهای Sاز شامل
آنتروپی باشد هدف مفهوم یک از منفی و به Sمثبت نسبت. شود می تعریف زیر بصورت بولی بندی دسته این
مثالهای نسبت نسبت مثبتکه و مثالها کل به. منفیمثالهای همچنین باشد می مثالها کل log0=0 0به
. میشود فرض
مثال :
آنتروپیx0 وx1 وx2 چقدراست؟
:اعضاء همه اگر آنتروپی Sسئوال باشند یکساناست؟ صفرچقدر
8
2P
8
6P
)8
6log
8
6()
8
2log
8
2( 22 E
سئوال
اعضای باشد Sاگر منفی نیمی و مثبت نیمی؟ است چقدر آنتروپی
یک
های بندی دسته برای آنتروپیبولی غیر
دارای هدف ویژگی آنتروپی Cاگر باشد مختلف مقدارS بندی دسته این به تعریف Cنسبت زیر بصورت گانه
میشود:
آن در از piکه دسته Sنسبتی به که . iاست دارند تعلقکه شود مبنای logتوجه در . 2همچنان میشود گرفته
میتواند آنتروپی حداکثر حالت این .log2Cدر باشد
اطالعات Information)بهرهGain)
کاهش مقدار از است عبارت ویژگی یک اطالعات بهرهویژگی این طریق از مثالها جداسازی بواسطه که آنتروپی
. میشود حاصل اطالعات بهره دیگر نظیر )Gain)S,Aبعبارت ویژگی یک برای
A مثالهای مجموعه به :Sنسبت میشود تعریف زیر بصورت
آن در های )Values)Aکه ویژگی مقدار همه بوده Aمجموعهاز SVو ای آن Sزیرمجموعه برای که مقدار Aاست Vدارای
است. عبارت و ها داده آنتروپی مقدار اول عبارت فوق تعریف در
. هاست داده جداسازی از بعد انتظار مورد آنتروپی مقدار دوم
مثال
از استفاده باآموزشی مثالهای
بسازید درختی زیربودن بخش لذت کهبا روزهایی در بازی
مختلف ویژگیهای. کند راتعیین
Day Outlook Temperature Humidity Wind Play
Tennis
Day1 Sunny Hot High Weak No
Day2 Sunny Hot High Strong No
Day3 Overcast Hot High Weak Yes
Day4 Rain Mild High Weak Yes
Day5 Rain Cool Normal Weak Yes
Day6 Rain Cool Normal Strong No
Day7 Overcast Cool Normal Strong Yes
Day8 Sunny Mild High Weak No
Day9 Sunny Cool Normal Weak Yes
Day10 Rain Mild Normal Weak Yes
Day11 Sunny Mild Normal Strong Yes
Day12 Overcast Mild High Strong Yes
Day13 Overcast Hot Normal Weak Yes
Day14 Rain Mild High Strong No
Overfitting
مثل ای فرضیه فرضیه hبرای فضای به دو Hمتعلق: میشود تعریف خطا نوع
آموزشی های داده روی )errortrain)hخطا ممکن های داده کل روی )D errorD)h خطا فرضیه برای آموزشی h Hمیگوئیم های داده روی
Overfitting مثل ای فرضیه اگر میدهد h0 Hرخ: که باشد داشته وجود
errortrain)h( < errortrain)h0( and errorD)h( > errorD)h0(
Overfitting
بروز Overfittingدالیل
الگوریتمID3 عمق به آنقدر را درخت از شاخه هررا آموزشی مثالهای کامل بطور بتواند که میبرد
. به منجر میتواند امر این کند بندی دستهOverfitting . بروز دالیل :overfittingشود از عبارتند
آموزشی های داده در نویز وجود آموزشی مثالهای کم تعداد
و باشیم داشته سکه پرتاب بار دو فقط اگر مثال برایاین مورد در ای نتیجه چه باشد آمده شیر بار دو هر
گرفت؟ میتوان آزمایش
از Overfittingپرهیز
مرحله 1. به رسیدن از قبل درخت رشد از جلوگیریدسته را آموزشی های داده کامل بطور که ای
. نماید بندیکردن 2. حرس سپس و درخت کامل رشد به اجازه
. نیستند مفید که هائی (post pruning)شاخه
زیرا است شده استفاده بیشتر دوم روش عمل در. نیست ای ساده کار درخت صحیح اندازه تخمین
روش به درخت حرسکردنReduced Error Pruning
توسط روش . Quinlanاین درخت به ابتدا است شده ارائه . گره سپس کند رشد کافی اندازه به تا میشود داده اجازه
حرس نمیشوند بندی دسته دقت افزایش باعث که را هائیمیگردند:
مجموعه دو به ها .آموزشی و تستداده میشوند تقسیم. میشود گرفته یاد قبل روش مطابق آموزشی های داده با درخت ( برگ غیر داخلی گره یک برای (nسپس
زیرشاخهn . . به میشود جایگزین برگ یک با شاخه زیر این میگردد حذفقرار مثالهای اکثر بندی دسته یعنی اکثریت مثالهای دسته برگ این
. میشود داده نسبت شاخه این تحت گرفته : حرس درخت اگر میشود بررسی تست مثالهای برروی درخت عملکرد
حرس درخت از داشت فعلی درخت با مساوی یا و بهتر عملکرد شده. میشود استفاده شده
. باشد نداشته سودی بیشتر، حرس تا یابد می ادامه آنقدر کردن حرس
Overfitting عمومی پدیده یکاست
سایر overfitting پدیده و نیست تصمیم های درخت به منحصر . غالبا پدیده این هستند مواجه آن با نیز ماشینی یادگیری روشهای
: که افتد می اتفاق وقتی the hypothesis space is very large the hypothesis search is not biased toward simple models there is little training data there is a lot of noise in the training data
که بگوئیم میتوانیم زیر شرایط دیدن با عمل داده overfittingدر رخاست:
های داده و آموزشی های داده بندی دسته دقت بین زیاد اختالفتست
( یک به رسیدن مثال پیچیده خیلی مدلهای یا و فرضیه به رسیدن) بزرگ خیلی تصمیم درخت
با های ویژگی گرفتن نظر درپیوسته مقادیر
توسط شده یادگرفته ویژگی ID3درخت و توابع به محدود. است گسسته مقدار با های
نیز را پیوسته مقدار با های ویژگی الگوریتم این اینکه برایمثل پیوسته ویژگی یک برای میتوان شود، یک Aشامل
مثل بولی که Acویژگی گرد اگر Acتعریف است درستA<C. است نادرست اینصورت غیر در و باشد
C . کند حداکثر را اطالعات بهره که شود انتخاب طوری بایدویژگی مقادیر کردن مرتب با میتواند وانتخاب Aاینکار
. شود انجام میکنند تغییر مجاور مثالهای مقادیر که نقاطیآستانه بعنوان میتواند مجاور دومثال میانگین حالتی چنین در
. شود انتخاب
ویژگی انتخاب معیارهای سایردرخت برای
،شود اضافه تاریخ نام به ویژگی یک قبل مثال به اگرمثالهای کلیه تا بود خواهد قادر تنهائی به ویژگی این . این اینکه بعلت واقع در کند بندی دسته را آموزشی
ریشه بعنوان است زیادی اطالعات بهره دارای ویژگیعمق دارای حاصله درخت و شد خواهد انتخاب درخت
. بود خواهد کمی بسیار بخوبی را آموزشی مثالهای درخت این اینکه وجود با
بسیار نادیده مثالهای مورد در اما کرد خواهد بندی دسته . عمل در درخت این زیرا نمود خواهد عمل ضعیف
. نیست تعمیم به قادر و کرده حفظ را آموزشی مثالهای
یا بهره نسبت gain ratioمعیار
از میتوان تاریخ مثل هائی ویژگی از پرهیز براییا و بهره نسبت نام با دیگری gain ratio معیار
به داشتن حساسیت آن خاصیت که نمود استفادهو گستردگی چه با ویژگی یک که است این
. میکند جدا را ها داده یکنواختی: میشود تعریف زیر بصورت عبارتی اینکار برای
زیر بصورت بهره نسبت فوق عبارت از استفاده با: میشود تعریف
یا بهره نسبت gain ratioمعیار
SI با زیادی مقادیر که هائی ویژگی تا میشود باعث. گردند حذف دارند یکنواخت توزیع
مثالها تک تک برای تاریخ نظیر ویژگی یک مثال برایاینرو از دارد یکسانی SI=lognتوزیع
در 2 شد خواهدکند تقسیم دسته دو به را مثالها ویژگی یک اگر حالیکه
SI=1. شد خواهد این بهره نسبت ازمعیار استفاده عملی مشکل یک
خیلی یا و صفر عبارت این مخرج است ممکن که است . هیوریستیک روشهای از حالت این در شود کوچک
. میشود استفاده
متفاوت هزینه با هائی ویژگی
هزینه است ممکن بیمار یک پرونده بررسی دریا و باشد باال بسیار ها ویژگی برخی کردن تست
خطرناک آن تست ویژگی موثربودن علیرغم اینکهباشد.
که کرد بایاس طوری را درخت باید حالت این در . مثال برای دهد ترجیح را کم هزینه با های ویژگی
. نمود تقسیم هزینه بر را بهره است ممکن
های ویژگی با مثالهائینامعلوم
جمع پزشکی مدارک نظیر کاربردها از برخی دراست ممکن مختلف بیمارستانهای در شده آوری
. باشد نشده ثبت درست ها ویژگی از برخی مقداربه که باشد این میتواند انتخاب یک صورت این در
گره در مثالها مقدار متداولترین مقدار نسبت nآن. شود داده
UCI Machine Learning Repository
Currently maintains 177 data sets as a service to the machine learning community.
http://archive.ics.uci.edu/ml/
ارائه موضوع
fuzzy decision trees pruning in decision tree induction