Trénování modelů XGBoost
Každá metoda strojového učení může vést k přetrénování. Uvidíš to na tomto příkladu s XGBoostem. Opět pracuješ s datasetem ze soutěže Store Item Demand Forecasting Challenge. DataFrame train máš k dispozici ve svém pracovním prostředí.
Nejdřív natrénujeme několik modelů XGBoost s různými sadami hyperparametrů pomocí učícího API XGBoostu. Jediný hyperparametr, který budeš měnit, je:
max_depth– maximální hloubka stromu. Čím vyšší hodnota, tím složitější model a tím větší riziko přetrénování.
Toto cvičení je součástí kurzu
Jak vyhrát soutěž na Kaggle v Pythonu
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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)