13.1 正規化と標準化

これまでも何度か言及された正規化・標準化の定義を改めて与えます.

まず, 特徴量の平均をゼロに揃える処理を中心化 (centering) といいます

\[ x_{d,i}^\prime := x_{d,i} - \bar{x}_d \] さらに, スケールを揃える場合に2通りの考え方があります. 1つは分散を固定すること, もう1つはレンジを固定することです. 前者が標準化 (standardize) であり, 後者が正規化(normalize, 別名 min-max 正規化) です.58

標準化は平均をゼロ, 分散を1に統一する操作で, 以下のように定義できます

\[ x_{d,i}^\prime := \frac{x_{d,i} - \bar{x}_d}{N^{-1}\sum_{i=1}^N(x_{i,d}-\bar{x}_d)^2} \]

min-max 正規化は, 最小値, 最大値をそれぞれ0, 1 に固定する操作で, 以下のように定義できます. 平均値は固定しません.

\[ x_{d,i}^\prime := \frac{x_{d,i} - \min(x_d)}{\max(x_d)-\min(x_d)} \] 中心化してからレンジでスケール調整する場合もあります. これを中心正規化と呼びます. こちらは以下のように定義できます.

\[ x_{d,i}^\prime := \frac{x_{d,i} - \bar{x}_d}{\max(x_d)-\min(x_d)} \]

さらに絶対値の最大値でスケール調整する max-absスケーリングというものもあります.

標準化との違いは, 外れ値の扱いにあります. 標準化は分散を固定するため, レンジが一定ではなく, 外れ値が存在する可能性があります. 特に, 後者は訓練データと検証データの間でレンジを固定したい場合に有効です. しかし大きな外れ値が1つでも含まれたものを正規化すれば, 変換後も値の大半が中心から外れた, 偏った分布になる可能性もあります.

外れ値というと問答無用で良くないもの, という印象を持つ人もいるかもしれませんが, 外れ値がエラーによって発生した不要なものであるのか, あるいは重要な情報であるかを予め知ることは難しいです. いろいろと推理しながら特徴量変換を試してください.


  1. 一方で, ここで紹介する標準化や正規化を含む, 中心化やスケール調整のことを全てまとめて正規化と呼んだり, 標準化のことを正規化と呼ぶケースも個人的に何度か見かけています. これらは似ているようで異なるので, 注意しましょう.↩︎