Tato otázka již má odpovědi zde :
Odpověď
Ano, existuje rozdíl. Ve sklearnu, pokud používáte rozhodovací stromy, stále využíváte všechny funkce u každého rozhodovacího stromu. V náhodných lesích však používáte podmnožinu funkcí.
Oficiální dokumentace sklearn k metodám sestavování mohla být o něco jasnější rozdíl je v tom, co říká:
- „ Když se vzorky kreslí s náhradou, pak je metoda známá jako Bagging “
- “ V náhodných doménových strukturách (viz třídy RandomForestClassifier a RandomForestRegressor) je každý strom v souboru vytvořen ze vzorku odebraného s náhradou (tj. ukázka bootstrapu) ze sady školení . „
Zdá se tedy, že není žádný rozdíl, pokud se rozhodujete pro rozhodovací stromy, že? Ukázalo se, že dokumentace také uvádí:
„ Kromě toho se při rozdělení každého uzlu během stavby stromu najde nejlepší rozdělení buď ze všech vstupních prvků, nebo z náhodné podmnožiny velikosti max_features
. „
Toto je tedy ještě jeden způsob, jak zavést náhodnost omezením počtu prvků na rozdělení. V praxi je užitečné vyladit max_features
, aby vám dobře sedělo.
Komentáře
- Není to ' každý strom , který přijímá podmnožinu kandidátských funkcí, ' každý split .
- @ Matthew Drury Děkuji za připomínku, opraveno.