始める無料で始める

XGBoostモデルを学習する

どのMachine Learning手法でも、過学習が起こり得ます。ここではXGBoostを使った例でそれを確認します。今回も、Store Item Demand Forecasting Challengeのデータを使います。train DataFrameはワークスペースに用意されています。

まず、XGBoostのLearning APIを用いて、ハイパーパラメータの異なる複数のXGBoostモデルを学習してみましょう。変更するハイパーパラメータは1つだけです。

  • max_depth - 木の最大深さ。この値を大きくするとモデルは複雑になり、過学習のリスクが高まります。

この演習はコースの一部です

Pythonで挑むKaggleコンペティション

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

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)
コードを編集して実行