MLA機械学習のためのデータ準備

あるデータサイエンティストが過去5年間の日次株価データを使って翌日の株価上昇/下落を予測する二値分類モデルを構築しました。ホールドアウト検証での精度は92%でしたが、本番環境では50%(ランダム予測と同等)しか機能しませんでした。原因を調査すると、データの分割方法に問題があることが判明しました。この失敗の最も可能性の高い原因と正しい対処方法の組み合わせはどれか?

A
原因:時系列データをランダムシャッフルして分割したことによるデータリーク(未来情報の混入)。対処:時系列順に分割し、古い期間を訓練・新しい期間をテストとするウォークフォワード検証を採用する
✓ 正解
時系列データをランダムシャッフルすると、訓練データに未来の時点のデータが混入するデータリークが発生し、評価精度が過大評価されます。本番環境での性能低下の根本原因です。
B
原因:クラス不均衡(上昇と下落の比率の偏り)。対処:SMOTEや(注:SMOTE=合成少数過剰サンプリング技法)オーバーサンプリングで少数クラスを増やす
クラス不均衡も機械学習では重要な課題ですが、この事例の性能低下の主要原因ではなく、むしろデータ分割方法の問題が支配的です。
C
原因:特徴量のスケールの差異による学習の不安定化。対処:StandardScalerで全特徴量をゼロ平均・単位分散に正規化してからモデルを訓練する
特徴量のスケール差異は学習の不安定化を招きますが、この事例で訓練精度は高い評価なので、特徴量正規化が主な問題ではありません。
D
原因:訓練データ量の不足によるモデルの汎化性能不足。対処:GANなどのデータ拡張技術で合成サンプルを生成して訓練データを増やす
訓練データの不足が原因であればクロスバリデーションでも低精度が観測されるはずですが、訓練精度が高いことからこれは主原因ではありません。

解説

時系列データをランダムシャッフルして分割すると、訓練データに未来の時点のデータが混入するデータリーク(情報漏洩)が発生し、評価精度が過大評価される。本番では過去データしか参照できないため、評価時との前提条件が異なり性能が著しく低下する。時系列データは時間軸に沿って分割するウォークフォワード検証が必須。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでMLAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
MLA の問題一覧に戻る