پیاده سازی الگوریتم درخت تصمیم ID3


در این پروژه هدف پیاده سازی الگوریتم درخت تصمیم ID3   بر روی  دو تا مجموعه داده ای است .

موارد موجود در این پروژه  :

  1. شامل شبه کد الگوریتم ID3

  2. الگوریتم ID3 را بر روی مجموعه دادهای اول اجرا میکند و نتایج را گزارش میکند.

  3. درخت به دست آمده را برای هر مجموعه داده ایی رسم می کند.

  4. الگوریتم ID3 با جاوا پیاده سازی می کند و درخت مربوطه را برای هر مجموعه داده ایی رسم میکند.

  5. پیاده سازی الگوریتم درخت تصمیم ID3 برای مجموعه دادهای کارتهای اعتباری

  6. مشخصات مجموعه دادهای   در یک جدول جدول به صورت مرتب قرار گرفته اند.

  7. مشخصات ویژگیها و کلاسها در یک جدول ذکر شده اند.

  8. تعداد نمونه های کل مجموعه داده ای و تعداد نمونه های هر کلاس در یک جدول لیست شده اند.

  9. ویژگی های با مقادیر گسسته و مقادیر گم شده ذکر شده اند.

  10. معیارهای ارزیابی Percision ، Recall و F-measure را برای ارزیابی روشهای طبقه بندی توضیح داده شده و از روی کدها بدست امده اند.

  11. درخت تصمیم را با استفاده از الگوریتم ID3 داده های آموزشی ایجاد میکند.

  12. سپس این درخت را با استفاده از مجموعه دادهای تست، آزمایش کرده و مقدار Percision ، Recall و F-measure به دست آمده را برای هرمجموعه داده ای به دست میاورد. و نتایج را در یک جدول گزارش میکند.

  13. روش Cross Fold Validation برای ارزیابی روشهای طبقه بندی توضیح داده شده است.مقدار Percision ،Recall و F-measure به دست آمده را برای هر مجموعه دادهای را با استفاده از روش  3-fold validation وfold validation-5 به دست آمده و نتایج به دست آمده را با نتایج   قبل مقایسه میکند.

  14. روش هرس کردن درخت rule post pruning را روی درخت اعمال مبکند. سپس با استفاده از بخشی از مجموعه دادهای که در آموزش استفاده نشده است، درخت را با استفاده از روش هرس انتخاب شده، هرس می نماید و سپس دقت درخت هرس شده را با درخت هرس نشده با اعمال مجموعه دادهای تستی، مقایسه میکند.

  15. کلیه کدهای هر بخش بالا به زبان جاوا و بدون استفاده از هیچ کتابخانه آماده ایی کدنویسی شده است.

  16. هر بخش پروژه حاوی داکیومنت کامل و نتایج هر قسمت و توضیح هر قسمت به صورت داکیومنت آماده شده است.

  17. نحوه اجرای کدها هم کامل توضیح داده شده است.


مجموعه داده ایی شامل موارد زیر است :

مجوعه داده ای اول :

این مجموعه داده ایی شامل داده های موجود در جدول زیر است :

الگوریتم id3

مجوعه داده ایی دوم :

این مجموعه های داده ای شامل اطلاعات حدود 30000 مشتری بانک است. هدف تقسیم بندی مشتریان به دو دسته خوب و بد ست. این دیتاست از لینک زیر قابل دانلود است. :
https://archive.ics.uci.edu/ml/datasets/default+of+credit+card+clients


درخت تصميم ID3 :

در این روش سعی میشود تا میزان ناخالصی مجموعه های بوجود آمده در هر نود را کاهش دهد تا با استفاده از این ویژگی در انتها درختی با ارتفاع مینیموم را بسازد. در این روش ابتدا برای تمامی ویژگیها ، میزان بی نظمی را از فرمول آنتروپی بدست آورده و با استفاده از این مقدار برای تمامی ویژگیها ، میزان سودمندی اطلاعات  آن ویژگی را حساب میکنیم.بهره اطلاعات یک ویژگی عبارت است از مقدار کاهش آنتروپی که بواسطه جداسازی مثالها از طریق این ویژگی حاصل میشود.

بعبارت دیگر بهره اطلاعات Gain(S,A) برای یک ویژگی نظیر A نسبت به مجموعه مثالهای S بصورت زیر تعریف میشود:

id3

که در آن Values(A) مجموعه همه مقدار ویژگی های A بوده و SV زیرمجموعه ای از S است که برای آن A دارای مقدار V است.

در تعریف فوق عبارت اول مقدار آنتروپی داده ها و عبارت دوم مقدار آنتروپی مورد انتظار بعد از جداسازی داده هاست.

*.در واقع در درخت تصمیم (ID3) از یک مقدار آماری به نام بهره اطلاعات  Information Gain  استفاده می شود تا اینکه مشخص کنیم که یک ویژگی تا چه مقدار قادر است مثالهای آموزشی را بر حسب دسته بندی آنها جدا کند.

انتروپی میزان خلوص (بی نظمی یا عدم خالص بودن)  مجموعه ای از مثالها را مشخص می کند. اگر مجموعه S  شامل مثالهای مثبت و منفی از یک مفهوم هدف باشد آنتروپی S  نسبت به این دسته بندی بولی بصورت زیر تعریف می شود.

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

  • برای یافتن جواب از یک آزمون آماری استفاده میشود تا مشخص گردد هر کدام تا چه حد قادر است به تنهائی مثالهای آزمایشی را دسته بندی کند.

  • با انتخاب این ویژگی، برای هر یک از مقادیر ممکن آن یک شاخه ایجاد شده و مثالهای آموزشی بر اساس ویژگی هر شاخه مرتب میشوند. سپس عملیات فوق برای مثالهای قرار گرفته در هر شاخه تکرار میشوند تا بهترین ویژگی برای گره بعدی انتخاب شود.

  • این الگوریتم یک جستجوی حریصانه است که در آن انتخاب های قبلی هرگز مورد بازبینی قرار نمیگیرند.

  • برای ساختن درخت تصمیم از مثالهائی استفاده میشود که علامت گذاری (label) شده باشند.

درواقع ورودی سیستم  یادگیر مجموعه ای از مثالهاست  که هر مثال توسط  مجموعه ای از ویژگی ها بیان شده است، هرویژگی می تواند دارای مجموعه متناهی ازمقادیر مختلف باشد. برای هر مثال علاوه بر ویژگیها مقدار دسته بندی آن  نیز لازم می باشد.

*

10000 تومان – خرید

مراحل خرید فایل دانلودی
اگر محصول را می پسندید لطفا آنرا به اشتراک بگذارید.

محصولات مرتبط

مجوز ارسال دیدگاه داده نشده است!

0