لگوریتم جنگل تصادفی (Random Forest) یکی از تکنیکهای یادگیری جمعی (Ensemble Learning) است که به طور گسترده برای مسائل طبقهبندی (Classification) استفاده میشود و در نرمافزار Weka در دسترس است. پیادهسازی این الگوریتم در محیط Weka Explorer فرآیندی ساده و ساختاریافته دارد که به شرح زیر است.
گام اول: آمادهسازی محیط و دادهها
قبل از شروع مدلسازی، لازم است دادههای شما در فرمت استاندارد Weka یعنی ARFF باشند و در محیط Weka بارگذاری شوند.
- بارگذاری داده: به تب “Preprocess” در Weka Explorer بروید و با استفاده از “Open file…” مجموعه داده خود را بارگذاری کنید.
- تعیین ویژگی کلاس: در پایین این تب، مطمئن شوید که ویژگی (Attribute) مورد نظر شما که نقش خروجی یا برچسب کلاس (Class) را ایفا میکند، به درستی انتخاب شده باشد.
گام دوم: انتخاب و پیکربندی الگوریتم
پس از آمادهسازی دادهها، به تب “Classify” بروید.
- انتخاب Classifier:
- بر روی دکمه “Choose” در کنار فیلد انتخاب الگوریتم کلیک کنید.
- از مسیر باز شده، به ترتیب زیر شاخهها را دنبال کنید:
weka->classifiers->trees->RandomForest.
- پیکربندی پارامترها:
- بر روی نام
RandomForestدر فیلد Classifier کلیک کنید تا پنجره تنظیمات آن باز شود. مهمترین پارامترهایی که میتوانند بر عملکرد مدل شما تأثیر بگذارند، عبارتند از: numTrees: این پارامتر تعداد درختانی را که قرار است جنگل تصادفی شما را تشکیل دهند، مشخص میکند. مقدار پیشفرض آن معمولاً ۱۰۰ است. افزایش این مقدار میتواند دقت را بهبود بخشد اما زمان آموزش را افزایش میدهد.seed: یک مقدار عددی برای تولید اعداد تصادفی. تعیین یک بذر (Seed) باعث میشود نتایج مدل شما در دفعات اجرای مختلف، تکرارپذیر باشند.maxDepth: حداکثر عمق مجاز برای هر درخت تصمیم درون جنگل. تنظیم این مقدار به کنترل بیشبرازش کمک میکند.numFeatures: تعداد ویژگیهایی که به صورت تصادفی در هر گره برای یافتن بهترین تقسیمبندی در نظر گرفته میشوند. برای مسائل طبقهبندی، مقدار پیشفرض معمولاً ریشه دوم تعداد کل ویژگیها است و اغلب نیازی به تغییر ندارد.- پس از تنظیمات دلخواه، بر روی “OK” کلیک کنید.
گام سوم: تنظیم روش ارزیابی و اجرا
در بخش “Test options” (گزینههای آزمون)، نحوه ارزیابی عملکرد مدل خود را مشخص کنید.
- انتخاب روش ارزیابی:
Cross-validation: (روش پیشنهادی و استاندارد) با تعیین تعداد Foldها (مثلاً 10)، دادهها به بخشهای آموزشی و آزمایشی تقسیم میشوند تا عملکرد تعمیم مدل به صورت دقیقتری ارزیابی شود.Percentage split: دادهها را به نسبت مشخصی (مثلاً ۶۶٪ برای آموزش و ۳۴٪ برای آزمون) تقسیم میکند.
- شروع فرآیند:
- بر روی دکمه “Start” کلیک کنید. وکا شروع به ساخت درختان و آموزش جنگل تصادفی میکند. زمان آموزش بسته به تعداد نمونهها و ویژگیها و همچنین مقدار
numTreesمیتواند متفاوت باشد.
گام چهارم: تحلیل و تفسیر نتایج
پس از اتمام اجرا، نتایج در بخش “Classifier output” نمایش داده میشوند.
- خلاصه مدل:
- ابتدا اطلاعات مربوط به تعداد درختان ساخته شده و سایر پارامترهای استفاده شده در مدل نمایش داده میشود.
- خلاصه ارزیابی (Summary):
Correctly Classified Instances: درصد دقت مدل (Accuracy). این مقدار نشان میدهد چند درصد از نمونههای آزمایشی به درستی طبقهبندی شدهاند.Kappa Statistic: یک معیار آماری که دقت طبقهبندی را نسبت به شانس طبقهبندی تصادفی اندازهگیری میکند.
- ماتریس درهمریختگی (Confusion Matrix):
- این ماتریس مهمترین ابزار برای ارزیابی عملکرد مدل بر روی هر کلاس است. ستونها نشاندهنده کلاسهای پیشبینی شده و سطرها نشاندهنده کلاسهای واقعی هستند.
- خانههای روی قطر اصلی (True Positives / True Negatives) نشاندهنده طبقهبندیهای صحیح هستند.
- معیارهای تفکیکی بر اساس کلاس (Detailed Accuracy By Class):
- برای هر کلاس، معیارهایی مانند دقت (Precision)، فراخوان (Recall) و F-Measure گزارش میشود که دید عمیقتری از عملکرد مدل در تشخیص هر دسته خاص ارائه میدهند.
جنگل تصادفی به دلیل استفاده از تنوع درختان تصمیم، یک انتخاب عالی برای مدلسازی پیشبینیکننده در وکا است و معمولاً دقت بالایی را در مقایسه با الگوریتمهای تکی ارائه میدهد.
کلیدواژه ها : اجرای-الگوریتم-جنگل-تصادفی-در-نرم-افزار-وکا-Random-Forest-Weka-Classification-Classify-numTrees-Cross-validation-Confusion-Matrix-Precision-Recall-F-Measure-ARFF-Supervised-Learning