始める無料で始める

学習用/テスト用の分布

Machine Learning の面接では、学習データとテストデータを扱うことがほぼ確実にあります。前に説明したとおり、学習用とテスト用のデータセットで分布が異なると、モデル性能が低下する可能性があります。

この演習では、sklearn.model_selection の関数に加えて、seabornmatplotlib.pyplot を使い、loan_data を学習用セットとテスト用セットに分割し、分布を可視化して差異がないかを確認します。

seabornmatplotlib.pyplot はすでにワークスペースにインポート済みで、それぞれ snsplt という別名が割り当てられています。

パイプラインには今回、新たに Train/Test split が含まれます。

Machine learning pipeline

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

Pythonで学ぶMachine Learning面接対策

コースを見る

演習の手順

  • loan_data を、Credit ScoreAnnual Income の特徴量、そして目的変数 Loan Status の順番でサブセット化します。
  • loan_data を 80/20 で分割し、loan_data_subset に代入します。
  • trainingSettestSet(この順番)について、目的変数 Loan Statushue 引数に指定して pairplot を作成します。

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

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

# Create `loan_data` subset: loan_data_subset
loan_data_subset = ____[['____','____','____']]

# Create train and test sets
trainingSet, testSet = ____(____, ____=___, random_state=123)

# Examine pairplots
plt.figure()
sns.____(____, hue='____', palette='RdBu')
plt.show()

plt.figure()
sns.____(____, hue='____', palette='RdBu')
plt.show()
コードを編集して実行