新卒1年目の技術に関する備忘録

自主学習で困ったこと、学んだことをまとめています

様々な前処理

データの前処理として、主にStandardScaler、RobustScaler、MinMaxScaler、Normalizerの変換の4つがある。

 

StandardScaler

平均が0、分散が1になるようにする(z変換)。

※特徴量の最大値や最小値が、ある範囲に入ることを保証するものではない。

 

RobustScaler

StandardScalerに似ていて、個々の特徴量が一定の範囲に入るように変換する。

平均値や分散の代わりに、中央値と四分位数を用いる。

※外れ値を無視する

 

MinMaxScaler

データがちょうど0から1の間に入るように変換する。

 

Normalizerの変換

図からもわかるように他の3つとはかなり異なる。

個々のデータポイントを特徴量ベクトルがユークリッド長1になるように変換する。

ユークリッド長とは

ユークリッド空間の意味を分かりやすく説明する - 具体例で学ぶ数学

言い換えると、データポイントを半径1の円(高次元なら超球面)に投射する。

全てのデータポイントに対して、それぞれ異なるスケール変換が行われる。

方向だけが問題になる場合に用いられる。

 

f:id:logz-developers:20181226165529p:plain