始める無料で始める

KFold のインデックスを使う

すでに splits を作成しており、candy-data データセットに対する 5 分割のクロスバリデーション用インデックスが入っています。ある同僚のランダムフォレストモデルが新しいデータでどの程度うまく動くかをより正確に見積もるため、作成した5つの学習用・検証用インデックスそれぞれでこのモデルを実行したいと考えています。

この演習では、これらのインデックスを使って、5つの異なる分割それぞれでこのモデルの精度を確認します。手順を助けるための for ループが用意されています。

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

Python によるモデル検証

コースを見る

演習の手順

  • 学習データと検証データを作成する際、train_indexval_index を使って Xy の正しいインデックスを参照してください。
  • 学習用データセットを使って rfc を学習させます。
  • rfc を使って検証用データセットに対する予測を作成し、検証精度を出力してください。

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

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

from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error

rfc = RandomForestRegressor(n_estimators=25, random_state=1111)

# Access the training and validation indices of splits
for train_index, val_index in splits:
    # Setup the training and validation data
    X_train, y_train = X[____], y[____]
    X_val, y_val = X[____], y[____]
    # Fit the random forest model
    rfc.____(____, ____)
    # Make predictions, and print the accuracy
    predictions = rfc.____(____)
    print("Split accuracy: " + str(mean_squared_error(y_val, predictions)))
コードを編集して実行