始める無料で始める

標準化を練習しましょう

未知の分布に対して、やみくもにKNNを使うのは危険です。特徴量の分布スケールがそろっていないと、性能が大きく低下します。スケーリングしていない特徴量は距離計算をゆがめ、非現実的な外れ値スコアを返してしまいます。

これに対処する一般的な方法が標準化です。各特徴量から平均を引き、標準偏差で割ります。これにより、その特徴量の平均は0、分散は1になります。

すでに読み込まれているfemalesデータセットで標準化を練習しましょう。

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

Anomaly Detection in Python

コースを見る

演習の手順

  • StandardScaler()のインスタンスを作成し、ssとして保存します。
  • 特徴量配列と目的変数配列をそれぞれXyに抽出します。目的変数はweightkg列です。
  • StandardScaler()をXに対して適合させ、同時に変換します。
  • 上記の処理を、XのDataFrameの列名を保持する形でも繰り返します。

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

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

from sklearn.preprocessing import StandardScaler

# Initialize a StandardScaler
ss = ____

# Extract feature and target arrays
X = ____ 
y = ____

# Fit/transform X
X_transformed = ____

# Fit/transform X but preserve the column names
X.____ = ____
コードを編集して実行