[XGBoost] use `early_stopping_rounds` in constructor or`set_params` instead. 해결방법
2023. 7. 25. 23:15ㆍProgramming
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. 결과
에러 메시지가 발생하지 않고, 코드를 사용할 수 있게 된다.
반응형
'Programming' 카테고리의 다른 글
[Python] jupyter 노트북에서 plotly 시각화 안 될때 (0) | 2023.02.10 |
---|---|
python에서 SSL verification 제외하는 방법 (0) | 2023.01.30 |
[python] Graphviz error_No such file or directory 'dot' 해결 (0) | 2023.01.18 |
파이썬 ModuleNotFoundError: No module named 'attrs' 해결하기 (0) | 2023.01.09 |
python tqdm 상태바가 새 줄(new line)에 출력되는 현상이 반복될 때 (0) | 2023.01.05 |