正規化

正規化の目的は、特徴を同様のスケールに変換することです。これにより、モデルのパフォーマンスとトレーニングの安定性が向上します。

正規化の手法の概要

次の 4 つの一般的な正規化手法が役に立つ可能性があります。

  • 特定の範囲へのスケーリング
  • クリッピング
  • 対数スケーリング
  • Z スコア

以下のグラフは、各正規化手法が左側の元の特徴(価格)の分布に及ぼす影響を示しています。グラフは、自動車データセット セットの UCI Machine Learning Repository の一部である 1985 Ward' Automotive Yearbook のデータセットに基づいています。

5 つのグラフ: 1. 未加工の分布2. 未加工の分布は、未加工の分布と同じ形状の範囲にスケーリングされます。3. 未加工の分布がクリッピングされ、最も高い値が除外される。4. 未加工の分布。対数でスケーリングされ、分布の途中でデータが分岐します。5. 未加工の分布と同様の形状の分布の Z スコア。

図 1. 正規化の手法の概要

特定の範囲にスケーリングする

MLCC の再現率: スケーリングでは、浮動小数点特徴値を自然な範囲(たとえば、100 ~ 900)から標準範囲(通常は 0 と 1(場合によっては -1 ~+1))に変換します。範囲にスケーリングするには、次のシンプルな数式を使用します。

\[ x' = (x - x_{min}) / (x_{max} - x_{min}) \]

次の両方の条件が満たされる場合は、範囲へのスケーリングをおすすめします。

  • 外れ値が少ないか、まったくない状態で、データのおおよその上限と下限がわかっている場合。
  • データはその範囲にほぼ均一に分散されます。

たとえば、年齢が挙げられます。ほとんどの年齢の値は 0 ~ 90 であり、範囲のどの部分にもかなりの数のユーザーがいます。

対照的に、収入に関するスケーリングは使用しません。これは、非常に高い所得を持つ人はほとんどいないためです。収入の線形目次の上限は非常に高く、ほとんどの人はスケールのごく一部に圧迫されるでしょう。

対象物のクリッピング

データセットに極端な外れ値が含まれている場合は、特徴のクリッピングを試みることができます。これにより、特定の値を超える(または低い)すべての特徴値が固定値に制限される場合があります。たとえば、40 を超えるすべての温度値をちょうど 40 にクリップできます。

他のクリッピングの前後に特徴のクリッピングを適用できます。

数式: 外れ値を回避するために最小値 / 最大値を設定する。

ネイティブ配信と制限付き配信の比較。ネイティブ分布では、ほぼすべての値が 1 ~ 4 の範囲にありますが、一部の値は 5 ~ 55 です。上限の分布では、元の 4 を超えるすべての値が 4 になります。

図 2. 未加工のディストリビューションとそのクリップされたバージョンの比較。

もう 1 つのシンプルなクリッピング戦略は、z スコアで +-Nα にクリッピングすることです(たとえば、+-3α に制限)。α は標準偏差です。

ログのスケーリング

ログのスケーリングでは、値のログを計算して、広い範囲を狭い範囲に圧縮します。

\[ x' = log(x) \]

ログのスケーリングは、少数の値に多くのポイントがある一方で、他のほとんどの値にはポイントが少ない場合に便利です。このデータ分布は、べき乗の分布と呼ばれます。映画の評価が良い例です。下のグラフでは、ほとんどの映画の評価はほとんどありませんが(テールのデータ)、いくつかの評価は多くの評価(ヘッドのデータ)が付けられています。ログのスケーリングにより分布が変化し、線形モデルのパフォーマンス向上に役立ちます。

元データと元データのログを比較する 2 つのグラフ。元データのグラフでは、評価が最初に多く、その後にロングテールが続いています。ロググラフの分布がより均等になります。

図 3. 未加工の分布をログと比較します。

Z スコア

Z スコアはスケーリングのバリエーションの 1 つで、平均値から離れている標準偏差の数を表します。Z-score を使用して、特徴の分布が平均 = 0、std = 1 であることを確認します。いくつかの外れ値があるものの、クリッピングが必要なほど極端ではない場合に便利です。

ポイント x の z スコアを計算する数式は次のとおりです。

\[ x' = (x - μ) / σ \]

元データと Z スコアで正規化されたデータを比較する 2 つのグラフ。元データは、5,000 から 45,000 の範囲の大まかなポアソン分布を示します。正規化されたデータの範囲は -1 ~+4 です。

図 4. 未加工の分布と z スコアの分布を比較します。

Z スコアは、約 40,000 の範囲の生の値をおよそ -1 ~+4 の範囲に圧縮します。

外れ値が本当に極端かどうかわからないとします。 この場合、モデルに学習させたくない特徴値がある場合を除き、z スコアから始めます。たとえば、測定エラーや異常の結果です。

まとめ

正規化の手法数式使用する場面
線形スケーリング $$ x' = (x - x_{min}) / (x_{max} - x_{min}) $$ 対象物が一定の範囲にほぼ均等に分布している場合。
クリッピング x > の場合、x&#39、max = x < min の場合、x&#39、= min 特徴に極端な外れ値が含まれている場合。
ログのスケーリング x' = log(x) 電力権の法則に適合する機能の場合。
Z スコア x&#39、=(x - μ)/ α 特徴の分布に極端な外れ値が含まれていない場合。