LightGBM + cross_validateでクロスバリデーションをしています。その際、early_stopping_roundsを設定したいので、以下のようにしています。
python
1param = { 2 'boosting_type': 'gbdt', 3 'objective': 'binary', 4 'max_depth': -1, 5 'learning_rate': 0.01, 6 } 7fit_params = { 8 'early_stopping_rounds': 10 9} 10lgb_model = lgb.LGBMClassifier(**param) 11 12result = cross_validate(lgb_model, X, y, cv=3, fit_params=fit_params) 13
最後の部分を
python
1 2result = cross_validate(lgb_model, X, y, cv=3) 3
とすると問題なく学習が進むのですが、fit_params
を設定すると、以下のようにnan
が返ってきてしまいます。
python
1Setting status of trial#0 as TrialState.FAIL because the objective function returned nan.
どうしてこうなるのか全く分からず困っております。どうかご教授の程よろしくお願いします。
あなたの回答
tips
プレビュー