Programming
[XGBoost] use `early_stopping_rounds` in constructor or`set_params` instead. 해결방법
hey,brian
2023. 7. 25. 23:15
728x90
1. 현상
UserWarning: `early_stopping_rounds` in `fit` method is deprecated for better compatibility with scikit-learn, use `early_stopping_rounds` in constructor or`set_params` instead.
에러가 화면을 가득 채운다..
728x90
2. 해결방법
from xgboost import XGBRegressor
# Assuming you have your data and labels: X_train, y_train, X_valid, y_valid
model = XGBRegressor(
early_stopping_rounds=10,
eval_set=[(X_valid, y_valid)]
)
model.fit(X_train, y_train)
위의 코드를 아래와 같이 수정한다.
즉, model의 instance를 생성한 이후에 set_params을 사용해 parameters를 세팅해주면 된다.
from xgboost import XGBRegressor
# Assuming you have your data and labels: X_train, y_train, X_valid, y_valid
model = XGBRegressor()
model.set_params(
early_stopping_rounds=10,
eval_set=[(X_valid, y_valid)]
)
model.fit(X_train, y_train)
3. 결과
에러 메시지가 발생하지 않고, 코드를 사용할 수 있게 된다.
반응형