skip to content

乱数シードで「当たり学習」と「ハズレ学習」が生まれる

/ 6 min read

Table of Contents

ドル円の期待値予測モデルを学習するとき、乱数シードを設定する。

同じモデル構造、同じ特徴量、同じ学習期間であっても、

乱数シードを変えるだけで性能が変わる

実際に複数シードで学習すると、

  • Forward Testが強いモデル
  • Forward Testが弱いモデル

が生まれる。

複数の期間で確認しても、安定して強いシードと弱いシードが存在する。

なぜシードで性能が変わるのか

ニューラルネットの最適化は非凸最適化である。

学習開始時の重みは乱数で初期化されるため、学習は毎回わずかに異なる地点から始まる。

その結果、

  • どの特徴を先に学習するか
  • どの方向へ勾配が進むか
  • どの局所解へ収束するか

が変化する。

特にAdam系のOptimizerでは、学習初期の方向性が後の性能へ大きく影響する。

パターン1:弱い解に入る

一つ目は、全体的に予測が弱いモデルになるケースである。

例えば、

  • predの振れ幅が小さい
  • 高い予測値が出にくい
  • 閾値を超えるシグナルが少ない
  • lossは悪くない

という状態になる。

学習自体は成立しているが、Forward Testでは利益につながりにくい。

モデルが十分なシグナルを抽出できていない状態である。

パターン2:過学習方向の解に入る

逆に、強気すぎるモデルになることもある。

例えば、

  • train lossは良好
  • validation lossも良好
  • 予測分布が極端

という状態である。

学習データでは強く見えるが、Forward Testや実運用では崩れやすい。

ノイズを信号として学習しすぎている状態と言える。

これは、

強そうに見えるが再現性の低いモデル

である。

低S/N比では偶然の影響が大きい

金融市場の予測は典型的な低S/N比問題である。

特徴量の多くは弱いシグナルしか持たず、ノイズが支配的である。

そのため、

  • 初期重み
  • データシャッフル
  • ミニバッチ順序

などの偶然の要素が結果へ大きく影響する。

シグナルが強い問題であれば多少の乱数差は吸収される。

しかしシグナルが極めて弱い問題では、

わずかな初期条件の違いが最終性能を大きく左右する

ことがある。

マルチシード評価は必須

このような問題では、

1回だけ学習して性能を判断する

ことは危険である。

単一シードの結果は偶然の影響を大きく受ける。

近年の研究でも、

複数の乱数シードで評価しなければモデルの優位性は判断できない

ことが指摘されている。

少なくとも5つ以上のシードで学習し、

  • 平均性能
  • 分散
  • 最悪ケース
  • 再現性

を確認する必要がある。

重要なのは最高性能ではなく、複数シードで安定して優位性が現れるかどうかである。

シード選択は悪なのか

都合よく良いものだけを選ぶと選択バイアスになる。未来での再現性はない可能性が高い。

一方、シードによる性能差が存在するなら、良いシードを採用するのは実務上合理的である。

ただし、

  • 単一期間だけで選ばない
  • 複数のForward Windowで確認する
  • 再現性を確認する

ことが前提となる。

また、単体性能が高くなくても、

他モデルとの相関が低いシード

には価値がある。

アンサンブルでは異なるタイミングでシグナルを出し、全体の安定化に貢献する場合がある。

まとめ

低S/N比の金融予測では、

乱数シードだけで性能が変わる

ことは珍しくない。

シグナルが弱い問題では、学習初期のわずかな違いが最終性能へ大きく影響する。

そのため、単一シードの結果だけでモデルを評価するのは危険である。

モデルの優位性を判断するには、複数シードで学習し、平均性能と再現性を確認する必要がある。

見るべきなのは最高性能ではなく、

複数シードでも再現される優位性

である。