2017-10-12 13 views
0

私はh2oでGBMをオーバーフィットしようとしています(私はそれが奇妙だと知っていますが、私はこれを要します)。だから、私は木のMAX_DEPTH、収縮、および無効停止基準増加:h2o GBM早期停止

overfit <- h2o.gbm(y=response 
        , training_frame = tapp.hex 
        , ntrees = 100 
        , max_depth = 30 
        , learn_rate = 0.1 
        , distribution = "gaussian" 
        , stopping_rounds = 0 
        , distribution = "gaussian" 
       ) 

オーバーフィッティングは素晴らしい作品を、私は訓練誤差が64番目の木の後に改善されないことに気付きました。なぜなのかご存知ですか ?私がブースティングのコンセプトを十分に理解していれば、ツリーの数が増えるにつれて、トレーニングエラーは0に収束するはずです。

私のデータに関する情報: 約1百万の観測 10個の変数 応答変数は定量的です。

良い一日を!

答えて

0

min_split_improvementパラメータを下げようとしましたか? 1e-5の既定値は、すでに微視的ですが、100万線がある場合は適切です。 私は64日後のすべての木が(あなたの例では)些細なことでしょうか?

0

0.1の学習率が役に立たない場合は、学習率を0.01または0.001のように下げることをおすすめします。あなたはツリー64の後でトレーニングエラーが減少しなくなると述べていますが、特に、学習速度が遅い場合は、少なくとも1000-5000のツリーを追加することをお勧めします。

+0

ありがとうございました。 はい、私はそれを試みましたが、それはもっと多くの木だけで同じことです。最終的には、訓練のエラーは減少しなくなり、私はなぜそれがわからないのですか? –

関連する問題