標準スケーラーを使用する場合とノーマライザを使用する場合


12

私は、標準的なスカラーが何をするのかとノーマはscikitドキュメントごとに、何をするかを理解する:ノーマ、標準スケーラーを。

標準スケーラーがいつ適用されるか知っています。しかし、どのシナリオでノーマライザが適用されますか?一方が他方よりも優先されるシナリオはありますか?


常にどちらかを使用する必要はありません。ツリーベースの分類子/リグレッサアルゴリズム(RF / XGB / GBT)は標準化を必要とせず、生データをフィードするだけでよいことも追加する価値があります。(とにかく、たとえば、プロット、相関、関連性の測定のために、標準化を選択することもできます)
— smci

回答:


9

これらは2つの異なる目的で使用されます。

StandardScaler各特徴列f:,iを

f:,i′=f:,i−mean(f:,i)std(f:,i).

Normalizer各変更のサンプル xn=(fn,1,...,fn,d)に

xn′=xnsize(xn),
size(xn)のため

  1. l1ノルムがある‖xn‖1=|fn,1|+...+|fn,d|、
  2. l2ノルムは‖xn‖2=fn,12+...+fn,d2、
  3. maxノルムがある‖xn‖∞=max{|fn,1|,...,|fn,d|}。

コントラストを示すために、データセットを検討{1,2,3,4,5}一次元(各データポイントは一つの特徴を有している)であり、
塗布した後StandardScaler、データセットになる{−1.41,−0.71,0.,0.71,1.41}。
任意のタイプのを適用した後Normalizer、データセットは{1.,1.,1.,1.,1.}になります。これは、唯一の機能がそれ自体で分割されるためです。そうNormalizerこの場合は役に立ちません。フィーチャーに異なる単位がある場合、たとえば、(height,age,income)も役に立ちません。

この回答で述べたように、Normalizer大きな値による数値の不安定性を回避するために、トレーニング中にパラメータベクトルなどの反復プロセスでベクトルのサイズを制御するのに最も役立ちます。


2
  • StandardScaler:平均が0、標準偏差が1になるようにデータを変換します。つまり、データを標準化します。標準化は、負の値を持つデータに役立ちます。これは、内のデータを並べ標準正規分布。これは、回帰よりも分類に役立ちます。私のこのブログを読むことができます。

  • Normalizer:0と1の間のデータを圧縮します。正規化を実行します。範囲とマグニチュードが減少したため、トレーニングプロセスの勾配は爆発せず、損失の値が高くなりません。ある分類より回帰でより便利に。私のこのブログを読むことができます。


2
ブログで定義したノーマライザーはMinMaxスケーラーです。正規化のために置いたリンクが異なります。これにより、各データ行のl2ノルムが1に等しくなります
— 。–ハイゼンバグ

この答えはあなたを助けるかもしれません。
— Shubham Panchal

7
-1:「[標準化]はデータを正規分布に配置します。」これが何を意味するかを明確にする必要があります。「標準化はデータを正規分布に変換する」と読みましたが、これは正しくありません。また、分類では標準化が回帰よりも有用である理由を説明する必要があります(正規化ではその逆も同様です)。私はその主張を疑います。
— Artem Mavrin
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.