カテゴリ変数を使った回帰
各楽曲のジャンルを表すバイナリ特徴量が含まれているmusic_dummies の作成が完了しました。次は、楽曲の人気度を予測するリッジ回帰モデルを構築しましょう。
music_dummies はあらかじめ読み込まれており、Ridge、cross_val_score、numpy(np として)、および KFold オブジェクト(kf として格納)も利用できます。
モデルの評価には平均 RMSE を使用します。まず、各分割のスコアを正の値に変換し、平方根を取る必要があります。この指標はモデルの予測誤差の平均を示し、目的変数—"popularity"—の標準偏差と比較することができます。
この演習はコースの一部です
scikit-learn による教師あり学習
演習の手順
Xのすべての特徴量を含むmusic_dummiesと、y列からなる"popularity"をそれぞれ作成します。alphaを 0.2 に設定して、リッジ回帰モデルをインスタンス化します。- リッジモデルを使って
Xとyに交差検証を実行します。cvをkfに設定し、スコアリング指標として負の平均二乗誤差を使用してください。 - 負の値の
scoresを正の値に変換し、平方根を取って絵RMSE の値を出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create X and y
X = ____
y = ____
# Instantiate a ridge model
ridge = ____
# Perform cross-validation
scores = ____(____, ____, ____, cv=____, scoring="____")
# Calculate RMSE
rmse = np.____(____)
print("Average RMSE: {}".format(np.mean(rmse)))
print("Standard Deviation of the target array: {}".format(np.std(y)))