Trenowanie modeli XGBoost
Każda metoda uczenia maszynowego może prowadzić do przeuczenia modelu. Przekonasz się o tym na przykładzie XGBoost. Ponownie pracujemy z konkursem Store Item Demand Forecasting Challenge. DataFrame train jest dostępny w twoim środowisku pracy.
Na początek wytrenujemy kilka modeli XGBoost z różnymi zestawami hiperparametrów, korzystając z API uczenia XGBoost. Jedynym hiperparametrem, który będziesz zmieniać, jest:
max_depth– maksymalna głębokość drzewa. Zwiększenie tej wartości sprawia, że model staje się bardziej złożony i bardziej podatny na przeuczenie.
To ćwiczenie jest częścią kursu
Zwycięstwo w konkursie Kaggle w Pythonie
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
import xgboost as xgb
# Create DMatrix on train data
dtrain = xgb.DMatrix(data=train[['store', 'item']],
label=train['sales'])
# Define xgboost parameters
params = {'objective': 'reg:squarederror',
'____': ____,
'verbosity': 0}
# Train xgboost model
xg_depth_2 = xgb.train(params=params, dtrain=dtrain)