見たデータ vs. 見ていないデータ
モデルは、以前に見た観測に対して精度が高くなる傾向があります。キャンディのデータセットでは、Skittles の人気度を予測するほうが Andes Mints の人気度を予測するより高精度になりやすいでしょう。Skittles はデータセットに含まれますが、Andes Mints は含まれないからです。
あなたは 50 種類のキャンディに基づいて X_train からモデルを構築しました。モデルが学習に使った 50 種類のキャンディに対してどれだけ正確に人気度を予測できるか、そして一度も見たことのない 35 種類(X_test)に対してどれだけ予測できるかを報告する必要があります。評価指標としては平均絶対誤差 mae() を用います。
この演習はコースの一部です
Python によるモデル検証
演習の手順
- 入力データとして
X_trainとX_testを使い、model.predict()で予測の配列を作成します。 - モデルが見たことのあるデータと、見たことのないデータの両方についてモデルの精度を計算します。
- 用意された print 文を使って、見たデータと見ていないデータの結果を出力してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# The model is fit using X_train and y_train
model.fit(X_train, y_train)
# Create vectors of predictions
train_predictions = model.predict(____)
test_predictions = model.predict(____)
# Train/Test Errors
train_error = mae(y_true=y_train, y_pred=____)
test_error = mae(y_true=y_test, y_pred=____)
# Print the accuracy for seen and unseen data
print("Model error on seen data: {0:.2f}.".format(____))
print("Model error on unseen data: {0:.2f}.".format(____))