Я использую GridSearchCV
для оценки параметров моего регрессора.Я использую функцию оценки mean_squared_log_error (и я хотел бы продолжить ее использование)
from sklearn.model_selection import GridSearchCV
import xgboost as xgb
gs = GridSearchCV(xgb.XGBRegressor(),
param_grid={'max_depth': range(5, 10)},
scoring='neg_mean_squared_log_error', cv=5, return_train_score=True)
gs.fit(X, y)
y всегда положительно, но происходит то, что некоторые предсказания в 5-кратном поиске сетки случаются сбыть отрицательным (даже если это не должно произойти, потому что моя целевая переменная всегда положительна), и поэтому я получаю сообщение об ошибке
ValueError: Mean Squared Logarithmic Error cannot be used when targets contain negative values.
, потому что оценщик пытается вычислить журнал отрицательного числа (неудачныйпредсказание).
Есть ли способ управления предсказаниями внутри GridSearchCV?Как бы вы решили эту проблему?