始める無料で始める

全体の検証スコア

いよいよクロスバリデーションで実際のモデル性能を確認します。店舗ごとの需要予測モデルの精度はどうでしょうか?

あなたのタスクは、各フォールドごとの平均二乗誤差(MSE)を計算し、それらの結果を1つの数値にまとめることです。

簡単のため、各クロスバリデーション分割で Random Forest モデルを学習し、フォールドごとの MSE のリストを返す get_fold_mse() 関数が用意されています。get_fold_mse()trainTimeSeriesSplit オブジェクトの2つの引数を受け取ります。

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

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

コースを見る

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

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

from sklearn.model_selection import TimeSeriesSplit
import numpy as np

# Sort train data by date
train = train.sort_values('date')

# Initialize 3-fold time cross-validation
kf = ____(n_splits=____)

# Get MSE scores for each cross-validation split
mse_scores = get_fold_mse(train, kf)

print('Mean validation MSE: {:.5f}'.format(np.____(____)))
コードを編集して実行