Hediye paketi, probleminiz için parametre seçimini optimize etmenize yardımcı olabilir. CaretTrain vinci, 10 kat tekrarlanan çapraz onaylama kullanarak gbm parametrelerinin nasıl ayarlanacağını gösterir - diğer optimizasyon yaklaşımları da foreach paketi kullanılarak paralel olarak çalışabilir. vignette("caretTrain", package="caret")
Belgeyi okumak için kullanın .
Paket destekleri ayarlama shrinkage
, n.trees
ve interaction.depth
gbm modeli için parametreler, kendi ekleyebilir bile.
Sezgisel tarama için bu benim ilk yaklaşımım:
shrinkage
: Vaktiniz olduğu kadar küçük (gbm kılavuzu bu konuda daha fazla şey içeriyor, ancak genel olarak daha küçük bir değerle yanlış gidebilirsiniz). Veri setiniz küçük, bu yüzden muhtemelen 1e-3 ile başlardım.
n.trees
: Genelde gbm.perf
, yeterli değere sahip olduğumu söyleyene kadar (genellikle, bu değerin 1.2 katı kadar) daha fazla ağaç ekleyen bir ilk model oluşturuyorum ve daha sonra bunu daha fazla analiz için bir rehber olarak kullanıyorum.
interaction.depth
: Bu konuda zaten bir fikriniz var. Küçük değerleri de deneyin. Maksimum değer kat (sqrt (NCOL (data))).
n.minobsinnode
: Bu değişkeni ayarlamak gerçekten önemli buluyorum. Algoritmanın çok fazla sahte özellik bulacağı kadar küçük olmasını istemezsiniz.