web-dev-qa-db-ja.com

線形回帰::正規化(Vs)標準化

線形回帰を使用してデータを予測しています。しかし、変数を標準化(対)標準化すると、まったく対照的な結果が得られます。

正規化= x -xmin/xmax – xminゼロスコア標準化= x-xmean/xstd

a) Also, when to Normalize (Vs) Standardize ?
b) How Normalization affects Linear Regression?
c) Is it okay if I don't normalize all the attributes/lables in the linear regression?

ありがとう、サントシュ

23
Santosh Kumar

結果は必ずしもそれほど異なるわけではないことに注意してください。同様の結果を得るには、2つのオプションに異なるハイパーパラメーターが必要な場合があります。

理想的なのは、問題に最適なものをテストすることです。何らかの理由でこれを買う余裕がない場合、ほとんどのアルゴリズムはおそらく正規化よりも標準化の恩恵を受けるでしょう。

一方が他方よりも優先される場合の例については、 here を参照してください。

たとえば、クラスタリング分析では、特定の距離測定に基づいてフィーチャ間の類似性を比較するために、標準化が特に重要になる場合があります。別の顕著な例は主成分分析です。ここでは、分散を最大化する成分に関心があるため、通常は最小-最大スケーリングよりも標準化を優先します(質問に応じて、PCAが成分の代わりに相関行列を介して成分を計算する場合共分散行列;しかし、私の以前の記事でPCAについての詳細)。

ただし、これは、Min-Maxスケーリングがまったく役に立たないという意味ではありません!一般的なアプリケーションは画像処理で、特定の範囲(RGBカラー範囲の場合は0〜255)に収まるようにピクセル強度を正規化する必要があります。また、典型的なニューラルネットワークアルゴリズムには、0-1スケールのデータが必要です。

標準化に対する正規化の欠点の1つは、データの一部の情報、特に外れ値に関する情報が失われることです。

リンクされたページにも次の画像があります。

Plots of a standardized and normalized data set

ご覧のとおり、スケーリングはすべてのデータを非常に密接にクラスター化します。勾配降下法などのアルゴリズムは、標準化されたデータセットと同じソリューションに収束するのに時間がかかるか、不可能になる場合があります。

「変数の正規化」は実際には意味がありません。正しい用語は「機能の正規化/スケーリング」です。 1つの機能を正規化またはスケーリングする場合は、残りの機能についても同じ操作を行う必要があります。

20
IVlad

正規化と標準化は異なることを行うため、これは理にかなっています。

正規化は、データを0〜1の範囲に変換します

標準化により、結果の分布の平均が0、標準偏差が1になるようにデータが変換されます

正規化/標準化は、同様の目標を達成するように設計されています。これは、互いに同様の範囲を持つフィーチャを作成することです。フィーチャの真の情報をキャプチャしていることを確認できるように、また、特定のフィーチャの値が他のフィーチャよりもはるかに大きいからといって過大評価しないようにする必要があります。

すべての機能が互いに同様の範囲内にある場合、標準化/正規化する必要はありません。ただし、一部の機能が自然に他の機能よりもはるかに大きい/小さい値をとる場合、正規化/標準化が求められます

少なくとも1つの変数/機能を正規化する場合は、他のすべての変数/機能に対しても同じことを行います。

8
Simon

最初の質問は、なぜ標準化/標準化が必要なのですか?

=>給与変数と年齢変数があるデータセットの例を取り上げます。年齢は0から90の範囲で、給与は25千から2.5lakhです。

2人の差を比較すると、年齢の差は100未満の範囲になり、給与の差は数千の範囲になります。

したがって、ある変数が他の変数を支配したくない場合は、正規化または標準化を使用します。これで、年齢と給与の両方が同じスケールになりますが、標準化または正規化を使用すると、元の値が失われ、いくつかの値に変換されます。したがって、解釈を失うことはできますが、データから推論を導きたい場合には非常に重要です。

正規化は、値を[0,1]の範囲に再スケーリングします。 min-max scaledとも呼ばれます。

標準化は、データを再スケーリングして、平均(μ)が0、標準偏差(σ)が1になるようにします。したがって、通常のグラフが得られます。

enter image description here

以下の例:

enter image description here

もう一つの例:

enter image description here

上の画像では、実際のデータ(緑色)が1〜6の範囲で広がっていることがわかります。標準化されたデータ(赤色)は-1〜3の周りに広がっています。 。

通常、多くのアルゴリズムでは、パラメーターとして渡す前にデータを標準化/正規化する必要があります。 PCAのように、3Dデータを1D(たとえば)にプロットすることで次元削減を行います。ここでは標準化が必要でした。

ただし、画像処理では、処理する前にピクセルを正規化する必要があります。ただし、正規化中に外れ値(極端なデータポイント-低すぎるか高すぎる)が失われるため、わずかに不利です。

そのため、選択内容に依存しますが、標準曲線が得られるため、標準化が最も推奨されます。

3
Ashish Anand