スケーリングの役割
1から2に増加する場合と100から101に増加する場合、どちらも増加量1ですが増加率は100%と1%で大きく異なります。
スケールを合わせることでデータ同士を公平に比較できるようになります。
AIモデルへの影響
データ解析をするとき、他のデータに比べて数値が大きすぎるデータの方が重要な判定をされがちです。
そのためAIモデルの性能に影響を与える可能性があることからスケーリングが重要です。
標準化
標準化はデータを平均0、標準偏差1に変換します。
各データに対してデータ全体の平均値で引き、標準偏差で割る操作を行います。
正規分布が関係
多くの機械学習アルゴリズムは入力データが正規分布に従っていることを前提としています。
正規分布に従っていないデータを入力した場合、推定値が不正確になる可能性があります。
そのためデータを標準化することで、アルゴリズムの性能を改善することができます。
偏差値は標準化した値
偏差値も標準化を利用した値です。
標準化した値を10倍して50を足した数値が偏差値です。
正規化
正規化はデータを最小値0、最大値1に変換します。
スケールが固定されている場合に有用
例えば反応の収率は0~100%で決まっています。
こういったスケールが決まっているようなデータに対して正規化は有用です。
極端な外れ値に注意
データの中で最大値と最小値に注目してスケールを変更するため、極端に小さい値や大きい値が存在する場合には正しい変換が出来ません。
外れ値を削除して良い場合は事前に取り除いてから正規化します。
画像データへの利用
画像データは主に、0~255のピクセルデータで構成されています。
この値を0~1の値に変換して計算コストを抑える使い方をします。
クラスタリングへの利用
例えばK-meansクラスタリングのようなクラスタリングアルゴリズムは、データの距離を計算する際に特徴量間の距離を比較します。
特徴量間のスケールが同じになっていることが望ましいため、正規化してスケールを統一させます。
基準化
基準化はどこか基準値を決めてそこからの変動率として変換します。
例えば国が出す統計データのように時系列データに対して使われます。
測定開始を基準にした場合
基準とするデータ点が測定開始の場合には注意が必要です。
データごとに測定開始時点が異なる場合、データ間を比較して良いのか考慮しなければなりません。
この問題を解消するには以下の方法があります。
- 前日比や前日差などの指標を用いる
- 基準値を年月日などで固定する