случайный лес с sub_balanced возвращает nan все

#python #scikit-learn #classification #random-forest #grid-search

#python #scikit-learn #классификация #случайный лес #поиск по сетке

Вопрос:

Довольно просто… Я запускаю GridSearchCV со следующим кодом:

 params = {'n_estimators':[10,20,50,100,200], 
          'max_features':['sqrt','log2',None],
          'class_weight':['balanced', 'sub_balanced'],
          'criterion':['gini','entropy'],
          'oob_score':[True,False]}

estimator = RandomForestClassifier()

grid_rf_balanced = GridSearchCV(estimator, param_grid=params,scoring=scoring,cv=cv,verbose=1,n_jobs=-1, refit='avg_micro_precision', return_train_score=True)

grid_rf_balanced.fit(X, y, groups= clusters)

results_balanced = pd.DataFrame(grid_rf_balanced.cv_results_)
  

Здесь вы можете увидеть, что я имею в виду под значениями nan:

нажмите здесь для получения изображения, пожалуйста

Я в основном получаю результаты для «сбалансированных» весов, но абсолютно никаких результатов для «sub_balanced» (все они nan)

Есть идеи? Деталь: я работаю с многоклассовой классификацией.

Комментарии:

1. Не могли бы вы включить данные, которые вы используете?

2. @yuRa только что добавил его!

3. «sub_balanced» не является допустимым значением для class_weights … вы имели в виду использовать «balanced_subsample»?

4. facepalm благодарит Бена…. напоминание самому себе: не пишите код в 3 часа ночи.