Sobes.tech
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' поставља случајни подскуп карактеристика за сваки раздвајање.