Traffine I/O

日本語

2022-07-03

正規化と標準化

正規化と標準化とは

正規化と標準化は、異なるスケールのデータを扱う際の課題に対処するために使用される2つの人気のある特徴量スケーリング技術です。両方の技術は、入力特徴量を共通のスケールに変換することを目的としていますが、アプローチや仮定には違いがあります。

正規化技術は、通常、[0,1]または[-1,1]など、特定の範囲に入力特徴量をスケールすることによって実現されます。これは、データを最小値と最大値に基づいてスケーリングする、L1またはL2正規化を使用する、またはlog、Box-Cox、またはYeo-Johnson変換など、さまざまな変換を適用することによって実現されます。これらの技術は、既知または必要な範囲を持つデータに最適であり、非ガウス分布を扱う場合に特に有用です。

一方、標準化技術は、入力特徴量を平均が0、分散が1になるように変換します。これは、平均を引き、標準偏差で除算することによって実現され、効果的に分布をゼロ周りに配置します。Zスコア標準化、中央値と中央値絶対偏差(MAD)標準化、およびロバストスケーリングなどの標準化技術は、分布が不明な場合や、ガウス分布の仮定が妥当な場合に適しています。

正規化技術

Min-Max正規化

Min-Max正規化は、データセットの特徴量を[0,1]などの特定の範囲にスケーリングする、シンプルで広く使用されている技術です。Min-Max正規化の式は次のとおりです。

x_{normalized} = \frac{x - \min(x)}{\max(x) - \min(x)}

ここで、xは特徴量の元の値であり、\min(x)および\max(x)は、それぞれ特徴量の最小値と最大値です。この技術は、多くのプログラミング言語や機械学習ライブラリで簡単に実装できます。

利点

  • 理解しやすく実装しやすい
  • 既知または必要な範囲を持つデータに最適
  • データの元の分布を維持する

欠点

  • 外れ値に敏感であり、大半のデータが小さな範囲に圧縮される可能性がある
  • 範囲が不明または無限のデータには適していない

L1およびL2正規化

L1およびL2正規化は、それぞれL1またはL2ノルムに基づいてデータをスケーリングする技術です。L1ノルムは特徴量ベクトルの絶対値の和であり、L2ノルムは特徴量ベクトルの値の二乗和の平方根です。L1およびL2正規化の式は次のとおりです。

  • L1 Normalization: x_{normalized} = \frac{x}{||x||1}
  • L2 Normalization: x{normalized} = \frac{x}{||x||_2}

ここで、xは元の特徴量ベクトルであり、||x||_1および||x||_2は、それぞれ特徴量ベクトルのL1ノルムおよびL2ノルムです。これらの技術は、人気のある機械学習ライブラリを使用して簡単に実装できます。

利点

  • Min-Max正規化に比べて外れ値に対して少なく敏感
  • L1正規化は、特徴選択や次元削減に有用な疎な特徴ベクトルを作成することができる
  • L2正規化は、入力データのスケールと回転に対して不変

欠点

  • L1正規化は、ゼロ値の多いデータに適していない場合がある
  • L2正規化は、データに非常に大きな値がある場合に敏感である

対数変換

対数変換は、入力データに対して対数関数を適用する正規化技術の一種です。この技術は、外れ値の影響を軽減するのに役立ち、スキューしている分布を持つデータを変換するのに役立ちます。対数変換の式は次のとおりです。

x_{normalized} = \log(x + k)

ここで、xは特徴量の元の値であり、kはゼロの対数を取ることを避けるために追加される小さな定数です。対数関数の一般的な選択肢には、自然対数(底e)、常用対数(底10)、および二進対数(底2)があります。

対数変換は、一般的に使用される機械学習ライブラリまたは標準プログラミングライブラリを使用して簡単に実装できます。

利点

  • 外れ値の影響を軽減する
  • スケビューの分布を持つデータを対称的に変換する
  • データの分散を安定化させる
  • 異なるスケールのデータに適用できる

欠点

  • 入力データが厳密に正である必要がある(そうでない場合は定数の追加が必要)
  • 対数の底の選択に敏感である
  • ゼロ値が多数含まれるデータに適していない場合がある

Box-Cox変換

Box-Cox変換は、分散を安定化し、データを正規分布に近づけるために使用できる正規化技術のファミリーです。Box-Cox変換の式は次のとおりです。

x_{normalized} = \frac{x^\lambda - 1}{\lambda} if \lambda \neq 0

x_{normalized} = \log(x) if \lambda = 0

ここで、xは特徴量の元の値であり、\lambdaは変換のべき乗を決定するパラメータです。最適な\lambdaの値は、最尤推定法またはその他の最適化技術を使用して見つけることができます。Box-Cox変換は、入力データが厳密に正である必要があるため、変換を適用する前にデータに定数を追加する必要があります。

利点

  • 分散を安定化し、データを正規分布に近づけることができる
  • スケビューの分布を持つデータに適している
  • 最適な\lambdaの値は、よく確立された最適化技術を使用して見つけることができる

欠点

  • 入力データが厳密に正である必要がある
  • 変換は\lambdaの選択に敏感である

Yeo-Johnson変換

Yeo-Johnson変換は、正および負のデータの両方に適用できるBox-Cox変換の拡張版です。Yeo-Johnson変換の式は次のとおりです。

x_{normalized} = \begin{cases} \frac{(x + 1)^\lambda - 1}{\lambda} & \text{if}\quad \lambda \neq 0 \quad\text{and}\quad x \geq 0 \\ \frac{-((-x + 1)^{2-\lambda} - 1)}{2 - \lambda} & \text{if}\quad \lambda \neq 2 \quad\text{and}\quad x < 0 \\ \log(x + 1) & \text{if}\quad \lambda = 0 \quad\text{and}\quad x \geq 0 \\ -\log(-x + 1) & \text{if}\quad \lambda = 2 \quad\text{and}\quad x < 0 \end{cases}

ここで、xは特徴量の元の値であり、\lambdaは変換のべき乗を決定するパラメータです。Box-Cox変換と同様に、最適な\lambdaの値は、最尤推定法またはその他の最適化技術を使用して見つけることができます。

利点

  • 正および負のデータの両方に適用できる
  • 分散を安定化し、データを正規分布に近づけることができる
  • 最適な\lambdaの値は、よく確立された最適化技術を使用して見つけることができる

欠点

  • Box-Cox変換よりも複雑である
  • 変換は\lambdaの選択に敏感である

標準化技術

Zスコア標準化

Zスコア標準化、または標準スコア正規化とも呼ばれるこの技術は、入力特徴量を平均値が0で分散が1になるように変換する方法です。これは、平均値を引き、標準偏差で割ることによって行われます。Zスコア標準化の式は次のとおりです。

x_{normalized} = \frac{x - \mu}{\sigma}

ここで、xは特徴量の元の値、\muは特徴量の平均値、\sigmaは特徴量の標準偏差です。Zスコア標準化は、一般的な機械学習ライブラリを使用して簡単に実装できます。

利点

  • 分布をゼロに中心化し、単位分散にスケーリングする
  • 分布が未知である場合や、ガウス分布の仮定が合理的な場合に適している
  • 勾配ベースの最適化アルゴリズムのパフォーマンスと収束を改善する

欠点

  • 外れ値に敏感であり、平均値と標準偏差に影響を与える可能性がある
  • データが正規分布に従うという仮定が必要

中央値と中央値絶対偏差(MAD)標準化

中央値と中央値絶対偏差(MAD)標準化は、Zスコア標準化に代わるアウトライアに強い手法です。この技術は平均値と標準偏差の代わりに、中央値と中央値絶対偏差を使用します。MAD標準化の式は次のとおりです。

x_{normalized} = \frac{x - \text{median}(x)}{\text{MAD}(x)}

ここで、xは特徴量の元の値、\text{median}(x)は特徴量の中央値、\text{MAD}(x)は特徴量の中央値絶対偏差です。MAD標準化は、一般的な機械学習ライブラリを使用して実装できます。

利点

  • Zスコア標準化に比べて外れ値に強い
  • 非ガウス分布または重尾分布を持つデータに適している

欠点

  • データが中央値を中心として対称であることを仮定している
  • 大規模なデータセットに対してZスコア標準化より効率的でない場合がある

ロバストスケーリング

ロバストスケーリングは、外れ値に強いようにデータのスケールを変更する標準化技術です。この技術は、四分位範囲(IQR)を使用してデータをスケーリングし、極端な値に対して感度が低くなります。ロバストスケーリングの式は次のとおりです。

x_{normalized} = \frac{x - Q_1(x)}{Q_3(x) - Q_1(x)}

ここで、xは特徴量の元の値、Q_1(x)は特徴量の第1四分位数(25パーセンタイル)、Q_3(x)は特徴量の第3四分位数(75パーセンタイル)です。ロバストスケーリングは、一般的な機械学習ライブラリを使用して実装できます。

利点

  • Zスコア標準化に比べて外れ値に強い
  • 非ガウス分布または重尾分布を持つデータに適している
  • 極端な値に対して感度が低いIQRを使用する

欠点

  • 強い偏りを持つデータには適していない場合がある
  • データが中央値を中心として対称であることを仮定している

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!