Junior — Middle
Ispričajte mi o RandomForest: kako je sastavljen, čime se razlikuje od običnog bagginga stabala.
sobes.tech АИ
Одговор од АИ
RandomForest је ансамблева метода машинског учења која гради више одлучујућих стабала и комбинује њихове предвиђања ради побољшања квалитета и стабилности модела.
Главне карактеристике RandomForest-а:
- Свако стабло се обучава на случајном подскупу оригиналних података са повратком (bagging).
- При изградњи сваког стабла, на сваком чвору се бира случајни подскуп карактеристика, од којих се бира најбоља за раздвајање.
Разлике од класичног bagging-а стабала:
- У класичном bagging-у, стабла се граде на случајним подскуповима података, али при избору карактеристике за раздвајање користи се цео скуп карактеристика.
- У RandomForest-у, додатно се уводи случајност при избору карактеристика на сваком чвору, што смањује корелацију између стабала и повећава способност генерализације.
Пример у Python-у са sklearn:
from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier(n_estimators=100, max_features='sqrt')
model.fit(X_train, y_train)
predictions = model.predict(X_test)
Овде, параметар max_features='sqrt' поставља случајни подскуп карактеристика за сваки раздвајање.