データサイエンスディープラーニング

【失敗談】標準化を忘れてディープラーニングの学習が鈍かった話|なぜ標準化が必要なのか?

データサイエンス

はじめに

先日、リハビリ予後予測をテーマにしたディープラーニングモデルを作成している際、「データの標準化(Standardization)」を忘れて実行してしまいました。

その結果、モデルの精度がなかなか上がらず、エポック数を重ねても学習が安定しないという事態に直面しました。
逆にこれが良い学びの機会となったため、今回は「標準化の有無が予測精度や学習ペースにどのように影響するか」について実験し、結果をグラフ化してご紹介したいと思います。


データの概要と目的

今回は、以下のような特徴量を使って「退院時FIMスコア(fim_out)」を予測するタスクを設定しました。使用するデータは機械的に生成したものです。

  • fim_in: 入院時の運動FIMスコア
  • age: 年齢
  • mmse: 認知機能スコア(最大30点)
  • paralysis: 麻痺の強さ

予測モデルとしては以下の2つを比較しました:

  • ディープラーニングモデル(標準化したデータで学習)
  • ディープラーニングモデル(標準化していないデータで学習)

標準化って必要なの?

決定木などでは不要?

結論から言えば、「標準化が必要かどうかはモデルの性質に依存します」。

  • 決定木やランダムフォレスト、XGBoost などのツリー系モデルは、特徴量のスケールに影響されません。
  • 一方、線形回帰・ロジスティック回帰・SVM・K近傍法・ニューラルネットワークなどでは、特徴量のスケールが大きく影響します。

特にディープラーニングでは勾配計算がベースになっており、スケールが大きく異なる変数が混在すると、学習が不安定になる・収束が遅くなる・最適解にたどり着けない、などの問題が起きやすくなります。


実験:標準化あり vs なしで精度を比較

✅ その1:標準化の有無による精度比較(10回×16サンプル数)

50~800件までのサンプルサイズ(50ずつ漸増)で、標準化を行わない場合と行った場合でのMSE(平均二乗誤差)を比較しました。モデルの推定を各サンプルサイズで10回ずつ行い、mseの平均と標準偏差をグラフ化しました。
青が標準化あり、黄色が標準化無しのサンプル数ごとのMSEの平均を表しています。帯の広さは10回の推定でMSEがどれぐらいばらついたかを表しています。

※標準化は sklearnのStandardScaler を使用しました。

🔵 標準化あり:

  • サンプル数が増えると急速に精度が上がる。

🟠 標準化なし:

  • サンプル数が増えても精度が安定せず、小サンプルによる精度の低下が出やすい
  • エラーのばらつきもやや大きい印象。

✅ その2:エポックごとの学習過程の比較(サンプル数800で1回試行)

ディープラーニングモデルでは、モデルを繰り返し学習させパラメーターを少しずつ修正することで予測精度を上げていきます。この時、「何回繰り返し学習させるか?」を エポック(epoch)という項目で指定します。10回繰り返し学習させるなら10エポックです。この繰り返しの中で、誤差(今回はMSE)の値がどう変化していくかを見ることで、学習の進み具合や安定性を確認できます。今回は100エポック行ったため、これについても確認してみます。

標準化あり・なしの両方で、エポックごとのMSEの推移(訓練データと検証データ)を可視化しました。これも青が標準化有り、黄色が標準化無しのグラフです。実線はテストデータでのMSEで、破線は学習データでのMSEです。
※一般にモデルの精度はテストデータで計算したものを見ます。

🔵 標準化あり:

  • 初期から順調に損失が減少し、安定した学習ができている。

🟠 標準化なし:

  • 初期MSEが高く、収束が遅い。
  • 学習の揺らぎが大きく、エポック数を増やしても安定しない傾向がある。

まとめと学び

  • ディープラーニングなどスケールに敏感なモデルでは標準化が必須
  • 学習がうまくいかないとき、「前処理(標準化・正規化)を忘れていないか」を確認すべし。
  • 実は今回、「なんか学習経過の曲線が前と違うな……」という違和感から、標準化を忘れていたことに気づきました。
     標準化に関して特に怖いのは、忘れていてもモデルがエラーを出さずに学習出来てしまう点です。 つまり、「致命的なミスなのに静かに進行してしまう」性質があるということです。今後はうっかり忘れないように気をつけようと思います。
  • データ分析では「ミス」も貴重な教材。実験して目に見える形にすることで、理解が深まる。

💡 さいごに

今回は「標準化を忘れた」ことがきっかけで、データの前準備の重要性を再確認することができました。
この記事で皆さんの悩みが少しでも減れば幸いです。

参考にさせていただいたサイト様

今回の記事を書くにあたって、参考にさせていただいたサイト様を紹介します。
サイト管理者様ありがとうございました。

コメント

タイトルとURLをコピーしました