Spørgsmål:
Hvad er nogle nyttige retningslinjer for GBM-parametre?
Ram Ahluwalia
2012-04-03 08:27:15 UTC
view on stackexchange narkive permalink

Hvad er nogle nyttige retningslinjer til test af parametre (dvs. interaktionsdybde, minchild, sample rate osv.) ved hjælp af GBM?

Lad os sige, at jeg har 70-100 funktioner, en befolkning på 200.000, og jeg har til hensigt for at teste interaktionsdybde på 3 og 4. Det er klart, at jeg skal lave nogle test for at se, hvilken kombination af parametre der holder bedst uden for prøven. Eventuelle forslag til, hvordan man nærmer sig dette testdesign?

En svar:
Allan Engelhardt
2012-04-03 16:03:29 UTC
view on stackexchange narkive permalink

Caret-pakken kan hjælpe dig med at optimere parametervalget til dit problem. CaretTrain-vignetten viser, hvordan man indstiller gbm-parametrene ved hjælp af 10 gange gentagen krydsvalidering - andre optimeringsmetoder er tilgængelige, det kan alle køre parallelt ved hjælp af foreach-pakken. Brug vignette ("caretTrain", package = "caret") til at læse dokumentet.

Pakken understøtter tuning krympning , n. træer og interaktion.depth parametre til gbm-modellen, selvom du kan tilføje din egen.

For heuristikker er dette min første tilgang:

krympning : Så lille som du har tid til (gbm-manualen har mere om dette, men generelt kan du aldrig gå galt med en mindre værdi). Dit datasæt er lille, så jeg vil sandsynligvis starte med 1e-3

n.trees : Jeg vokser normalt en indledende model, der tilføjer flere og flere træer indtil gbm. perf siger, at jeg har nok (faktisk til 1,2 gange den værdi) og derefter bruge det som en vejledning til yderligere analyse.

interaktion.dybde : du allerede har en idé om dette. Prøv også mindre værdier. Maksimal værdi er etage (sqrt (NCOL (data)).

n.minobsinnode : Jeg finder det virkelig vigtigt at indstille denne variabel. Du vil ikke have den så lille, at algoritmen finder for mange falske funktioner.



Denne spørgsmål og svar blev automatisk oversat fra det engelske sprog.Det originale indhold er tilgængeligt på stackexchange, som vi takker for den cc by-sa 3.0-licens, den distribueres under.
Loading...