広告 機械学習

標準化(Standardization)とは?正規化との違いやPythonでのやり方をわかりやすく解説

標準化のアイキャッチ画像
サル
  • 標準化ってなに?
  • 正規化との違いを知りたい!

とお悩みではないですか?

本記事では、標準化について、概要から正規化との違い、Pythonでのやり方まで解説していきます。

標準化とは変数のデータの分布を整えることで、変数同士を比較できるようにするデータの前処理の手法です。

データの分布を平均0、標準偏差1に統一することで比較を行えるようにする点で、標準化はデータ分析の前に利用されます。

本記事の信頼性

サルでもわかるデータサイエンスの運営者のプロフィール画像

こんな悩みがある方読んで欲しい

  • 標準化とは?
  • 正規化とはどう違う?
  • どうやってPythonで実装するの?
しょー

それでは本編です!

月額980円で学べる!

しょー

データサイエンスの復習は完ぺきにできていますか?

データサイエンスは勉強する範囲が膨大で、復習に手が回りませんよね。

そんなあなたにおすすめなのが、たった月額980円でサクッと学べるスタアカ

数分の動画でビジネスへの活用法も含めて、サクッとデータサイエンスを復習可能。

何冊も参考書を往復して復習する苦労』とはおさらばです!

サブスクなのでいつでも解約OK。手軽に始めてみませんか?

月額980円から/

スタアカはこちら

講座が毎月追加されるので今後値上がりする可能性大、今買わなきゃ損するかも!

標準化(Standardization)とは

標準化(Standardization)は、データの分布を平均0、標準偏差を1にすることでデータの分布を調整する前処理の手法です。

標準化を行うことで、統計的に分析しやすい正規分布という分布に近づけることができます。

そのため、異なるデータを同じ分布にすることで、比較を行えるというのが標準化の特徴です。

標準化は以下の式で行えます。

\[ Z = \frac{X - \mu}{\sigma} \]

標準化を行うには、偏差と標準偏差を用いる必要があります。

  • 分子:偏差
  • 分母:標準偏差

偏差を求めることで、データの値を平均が0の分布にできます。

その偏差をばらつきの指標である標準偏差で割ることで、標準化ができるのです。

標準化と正規化の違い

正規化はデータを0~1の範囲に収めるのに対し、標準化はデータの分布を調整する点で異なります。

まず正規化について詳しく知りたい方は『正規化(Normalization)とは?標準化との違いやPythonでのやり方までわかりやすく解説』の記事をご参照ください。

標準化も正規化も異なる変数同士を比較可能にするための前処理の手法です。

しかし、どのようにして比較可能にするのかの手段の部分が異なります。

  • 標準化:データの分布を調整
  • 正規化:データの範囲を0~1に変更

標準化はデータの分布を正規分布に従うように調整するだけであり、データの範囲は0~1ではありません。

しかし、正規化はデータの範囲を0~1に範囲に収めるだけであることから、外れ値の影響を受けてしまいます。

外れ値がある場合には、正規化ではなく標準化でデータの分布を調整する前処理を行いましょう。

標準化はPythonで簡単に行える

Pythonを使ってデータを標準化する方法を解説していきます。

ほとんどのデータは尺度(単位)が整っていないため、標準化を行うことで分布を調整する必要があります。

以下がPythonを用いた標準化のコードです。

import numpy as np
from sklearn.preprocessing import StandardScaler

# サンプルデータを作成
data = np.array([[1.0, 2.0, 3.0],
                 [4.0, 5.0, 6.0],
                 [7.0, 8.0, 9.0]])

print(data)

# StandardScalerを使用して標準化を行う
scaler = StandardScaler()
scaled_data = scaler.fit_transform(data)

# 標準化されたデータを出力
print("標準化されたデータ:")
print(scaled_data)

サンプルデータで縦に並んでいる部分が一つのデータ集合になります。

そのため、1,4,7と2,5,8、3,6,9の3つのデータ集合に対してそれぞれ標準化を行っていると解釈してください。

今回の場合、標準化するとすべて同じ値になることから、3つのデータ集合の分布はすべて等しいと結論付けられます。

このように、データの値は異なっていても分布が同じという場合に標準化によって見抜けるのです。

まとめ

標準化は、データの分布を正規分布に近い形にすることで異なる特徴量(変数)同士を比較できるようにするデータの前処理の手法の1つです。

標準化を行うことで、統計的に処理しやすい正規分布に近づけることができるというメリットがあります。

標準化と似た前処理の手法として、正規化がありますが、2つの手法は以下の点で異なります。

  • 標準化:データの分布を調整
  • 正規化:データの範囲を0~1に変更

また、正規化と違い、標準化は外れ値の影響を受けにくいため、外れ値が存在するデータに対しては標準化が適当です。

データの前処理の手法である標準化はPythonで簡単に行えます。

しょー

データの前処理を正しく行い、良いデータ分析に繋げられるようにしましょう。

あなたはどこかで、

「機械学習の勉強がなかなか上手く進まない...」
「勉強しても全体像が見えてこない...」
「本当にデータサイエンティストになれるのかな...」

と不安に感じてはいませんか?

僕も勉強しながら同じような悩みを常に持っていました。

ですが、そんな僕の悩みをまるっと解決してくれたサービスが『スタアカ』です。

サル

データサイエンスを学べるサービスなんて高額なんでしょ?

データサイエンスを学ぶためにもう高額なお金を払う必要はありません。

僕が利用している『スタアカ』のライトプランは月額980円で動画見放題のコスパ最強サブスクです。

「ちょっと興味がある」という方は、受講した感想も載せている記事をご覧ください。

スタアカ紹介記事

たった月1000円で、もう二度と独学で悩まずに済みます。

正直、「就職・転職までサポートしてほしい」という方にはおすすめできません。

ですが、「勉強の道しるべが欲しい!」「学習を効率的に進めたい」という方にはこの上ないサブスクです。

データサイエンスを学びたい方に最強のサブスク『スタアカ』を気軽に始めてみませんか?

\月額たった980円!/

スタアカはこちら

講座が毎月追加されるので今後値上がりする可能性大、今が買いどき!

ブログランキング・にほんブログ村へ
人気ブログランキングでフォロー
サルでもわかるデータサイエンスのブログアイキャッチ画像
運営者の画像

しょー

地方公立大学でデータサイエンスについて学んでいる大学3年生のしょーです。

これまで、大学で学んできたこと、個人的に調べてきた情報を、「大学の先輩」的なポジションから大学生をサポートしたいと考えております。

何か分からないことがあれば、X(Twitter)のDMやブログ内のお問い合わせにてご相談ください。

また、記事作成依頼やサービスの体験依頼も承っております。 お気軽にご相談ください。

-機械学習
-, ,