前回の振り返り:テキストデータの前処理
前回は、テキストデータを機械学習で扱いやすくするためのトークナイゼーションやステミング、レンマタイゼーションについて学びました。これらの手法を使うことで、自然言語データを適切に整形し、モデルに入力できる形式に変換することが可能でした。テキストデータの前処理は、モデルの精度向上に不可欠なステップです。
今回は、数値データのスケーリングについて解説します。スケーリングは、数値データの範囲を整える手法で、機械学習モデルの学習効率や精度に大きく影響します。特に、Min-Maxスケーリングと標準化という2つの手法を詳しく見ていきましょう。
数値データのスケーリングとは?
数値データのスケーリングは、データの範囲や分布を統一するための処理です。スケーリングを行う理由は、異なる範囲や単位を持つ数値データを、同じスケールで扱うことでモデルの性能を向上させるためです。
例えで理解する数値データのスケーリング
スケーリングは「靴のサイズを揃えること」に似ています。たとえば、異なるメーカーの靴はサイズの基準が微妙に異なりますが、それを統一することで、どのメーカーの靴を履いても同じ感覚で使えるようにするイメージです。同様に、スケーリングを行うことで、異なる範囲を持つ数値データを同じ基準で扱えるようになります。
Min-Maxスケーリングとは?
Min-Maxスケーリングは、データを0から1の範囲に収めるスケーリング手法です。データの最小値を0、最大値を1に変換し、その間に他のデータを配置します。これにより、データの分布が一様に保たれたまま、異なる範囲を持つデータを揃えることができます。
Min-Maxスケーリングの公式
Min-Maxスケーリングは次の式で計算されます:
[
x’ = \frac{x – x_{\text{min}}}{x_{\text{max}} – x_{\text{min}}}
]
ここで、( x ) は元のデータ、( x_{\text{min}} ) はデータの最小値、( x_{\text{max}} ) はデータの最大値、そして ( x’ ) はスケーリング後の値です。
Min-Maxスケーリングの実装例
例えば、次のようなデータセットがあったとします:
値 |
---|
10 |
20 |
30 |
40 |
50 |
このデータをMin-Maxスケーリングで変換すると、次のようになります:
値 | スケーリング後の値 |
---|---|
10 | 0.0 |
20 | 0.25 |
30 | 0.5 |
40 | 0.75 |
50 | 1.0 |
データが0から1の範囲に収められ、スケールが揃った状態になっています。
Min-Maxスケーリングのメリットとデメリット
メリット
- 簡単に実装できる: Min-Maxスケーリングはシンプルな方法であり、計算が軽量です。
- データの分布が変わらない: 元のデータの分布を保ちながら、範囲を調整できます。
デメリット
- 外れ値に敏感: データの最小値や最大値が外れ値の場合、他のデータが極端に圧縮されてしまうことがあります。
例えで理解するMin-Maxスケーリング
Min-Maxスケーリングは「パン生地を均等に伸ばすこと」に例えられます。パン生地全体の形を保ちながら、厚さを均等にするように、データの分布を変えずに範囲を揃えるイメージです。
標準化とは?
標準化(Standardization)は、データを平均0、標準偏差1に変換するスケーリング手法です。標準化によって、データの中心を0にし、ばらつきを一定に保つことで、異なる単位や範囲を持つデータを均一に扱えるようにします。
標準化の公式
標準化は次の式で計算されます:
[
x’ = \frac{x – \mu}{\sigma}
]
ここで、( x ) は元のデータ、( \mu ) はデータの平均、( \sigma ) はデータの標準偏差、そして ( x’ ) は標準化後の値です。
標準化の実装例
例えば、次のようなデータセットがあったとします:
値 |
---|
10 |
20 |
30 |
40 |
50 |
このデータの平均は30、標準偏差は14.14です。これを標準化すると次のようになります:
値 | 標準化後の値 |
---|---|
10 | -1.41 |
20 | -0.71 |
30 | 0.0 |
40 | 0.71 |
50 | 1.41 |
データの平均が0に揃えられ、ばらつきが一定になっています。
標準化のメリットとデメリット
メリット
- 外れ値に強い: 標準化は外れ値の影響を受けにくく、異なる範囲を持つデータでも安定して処理できます。
- 正規分布に適している: 標準化はデータが正規分布に近い場合に特に有効です。
デメリット
- 分布が変わることがある: 標準化はデータの形を変える可能性があるため、元の分布を保つ必要がある場合には不向きです。
例えで理解する標準化
標準化は「テストの点数を偏差値に換算すること」に似ています。異なるテストでも偏差値が同じなら、相対的な学力は同じと判断できるように、標準化によってデータのばらつきを均一にします。
Min-Maxスケーリングと標準化の使い分け
Min-Maxスケーリングと標準化は、状況に応じて使い分ける必要があります。
Min-Maxスケーリングを使う場合
- データが決まった範囲にある場合。
- 外れ値が少ない場合。
- データの分布を保ちたい場合。
標準化を使う場合
- 外れ値が多い場合。
- データが正規分布に近い場合。
- 機械学習モデルが標準化を前提としている場合(例:サポートベクターマシン、ロジスティック回帰など)。
まとめ
今回は、数値データのスケーリングについて解説しました。Min-Maxスケーリングはデータを0から1の範囲に揃えるシンプルな手法であり、データの分布を保ちながらスケールを統一できます。一方、標準化はデータを平均0、標準偏差1に変換し、異なる単位や範囲を持つデータを均一に扱うための強力な手法です。適切なスケーリングを行うことで、機械学習モデルの性能を最大限に引き出すことができます。
次回予告
次回は、特徴量の生成について解説します。データから新しい特徴を生み出し、モデルの予測精度
を高めるためのテクニックを学びましょう。
注釈
- Min-Maxスケーリング: データを0から1の範囲に揃えるスケーリング手法。
- 標準化(Standardization): データを平均0、標準偏差1に変換するスケーリング手法。
- 標準偏差(Standard Deviation): データのばらつきを示す指標。分散の平方根。
- 正規分布: データが平均を中心に対称的に分布する形状。鐘型のカーブが特徴。
コメント