アンダーフィット/オーバーフィットによる誤差
このキャンディのデータセットはオーバーフィットが起きやすいです。観測が85件しかないため、20%をテスト用に回すと、モデリングに使える重要なデータが大きく減ってしまいます。たとえば、チョコレート系のキャンディの大半が訓練データに偏り、保留サンプルにはほとんど含まれない状況を想像してください。モデルはチョコレートが重要だと「だけ」判断してしまい、他の属性の重要性を見落とすかもしれません。この演習では、ランダムフォレストモデルで特徴量(列)を多く使いすぎるとオーバーフィットにつながることを確認します。
ここでいう「特徴量」は、決定木で使用されるデータの列を表します。パラメータmax_featuresは利用可能な特徴量の数を制限します。
この演習はコースの一部です
Python によるモデル検証
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Update the rfr model
rfr = RandomForestRegressor(____=25,
____=1111,
____=2)
rfr.fit(X_train, y_train)
# Print the training and testing accuracies
print('The training error is {0:.2f}'.format(
mae(y_train, rfr.predict(X_train))))
print('The testing error is {0:.2f}'.format(
mae(y_test, rfr.predict(X_test))))