مهمترین الگوریتمهای یادگیری ماشین (به همراه کدهای پایتون و R) – بخش نهم: جنگل تصادفی


جنگل تصادفی یک اصطلاح مشهور برای مجموعهای از درختهای تصمیم است. در روش جنگل تصادفی مجموعهای از درختهای تصمیم (که جنگل نامیده میشود) داریم. برای کلاسبندی یک شی جدید بر اساس ویژگیهایش به هر درخت یک کلاسبندی داده میشود و از درخت خواسته میشود به آن کلاس «رأی» میدهد. جنگل آن کلاسبندی را انتخاب میکند که بالاترین رأی را دارد (نسبت به همه درختهای جنگل)
هر درخت بدین ترتیب کاشته میشود و رشد میکند:
1- اگر تعداد موارد مجموعه تمرینی را N فرض کنیم، در این صورت نمونهای از N مورد به صورت تصادفی ولی با جایگزینی انتخاب میشوند. این نمونه مجموعه تمرینی برای رشد درخت است.
2- اگر M متغیر ورودی وجود داشته باشد عددی بهصورت m<<M تعیین میشود به طوری که در هر گره m متغیر به صورت تصادفی از میان M متغیر انتخاب شوند و بهترین افراز روی این m متغیر برای افراز گره استفاده میشود. مقدار m در طی رشد جنگل ثابت نگه داشته میشود.
3- هر درخت تا بیشترین حد ممکن رشد داده میشود. هرس وجود ندارد.
کد پایتون
#Import Library
from sklearn.ensemble import RandomForestClassifier
#Assumed you have, X (predictor) and Y (target) for training data set and x_test(predictor) of test_dataset
# Create Random Forest object
model= RandomForestClassifier()
# Train the model using the training sets and check score
model.fit(X, y)
#Predict Output
predicted= model.predict(x_test)
کد R
library(randomForest)
x <- cbind(x_train,y_train)
# Fitting model
fit <- randomForest(Species ~., x,ntree=500)
summary(fit)
#Predict Output
predicted= predict(fit,x_test)
در بخش بعدی این سلسله مطالب شما را با الگوریتم کاهش ابعاد آشنا میکنیم.