skip to content

Transformerモデルはオーバースペックか

/ 6 min read

Table of Contents

為替/FXトレードのエッジは非常に薄い。

例えばドル円では、未来の勝率は50%からわずかに偏る程度で、多くても52〜54%程度の世界だと考えている。

モデルの予測は、

prediction = noise + signal

であり、

  • noise:過去にしか存在しない偶然(大半)
  • signal:未来でも何度も再現されるパターン(極小)

である。

金融予測モデルで最も重要なのは、noiseを忘れ、signalだけを学習することだ。

一回しか現れないパターンに価値はない

過去には、

  • 特定の相場
  • 特定の期間
  • 特定の特徴量の組み合わせ

で、(たまたま)勝ったパターンが存在する。そして、勝ちとしてカウントされる。

しかし、それが未来で二度と現れなければ意味はない。

私たちが知りたいのは、

未来でも100回中52〜54回程度の確率で繰り返し現れるパターン

だけである。

Transformerモデルは自由度が高すぎる

Transformerは、設計思想として、

「できるだけ多くの関係を表現できるようにする」

ことを目指したモデルだ。

すべての特徴量同士の関係を学習でき、非常に表現力が高い。

画像や自然言語では大きな武器になるが、金融時系列では自由度が高すぎることが多い。

自由度が高いほど、

  • 一回しか現れないパターン
  • 偶然の特徴量の組み合わせ

まで覚えてしまいやすい。

バックテスト(Train/Val)では良く見えても、未来(Forward/Live)では再現されない。

パラメータ数も重要

私の実験では、パラメータ数を数千〜1万程度に抑えたモデルのほうが、未来データに対して汎化しやすい結果であった。

一方、Transformerは数十万〜数百万パラメータになることも珍しくない。

これだけの表現力があると、学習データを細かく記憶できてしまい、未来では再現しない一回限りのパターンまで学習しやすくなる。

その結果、学習データでは高い精度を示しても、未来データへの汎化性能は低下しやすい。

実験結果では

これまで私が行ってきた実験では、Transformerが小さなMLPを上回ることは一度もなかった。

もちろん、データセットや特徴量、モデル設計によって結果は変わる可能性がある。

現時点では、ドル円の期待値推測においては、Transformerほどの表現力は必要なく、適切に自由度を抑えた小さなMLPのほうが汎化性能が高い、パフォーマンスも十分というのが結論である。

一方で、Attentionやマルチヘッドという仕組み自体には依然として興味がある。そのため、層数や埋め込み次元を極力小さく抑えた最小構成のTransformerについては、今後も検証してみたいと考えている。

適切な自由度を選ぶ

↑ 自由度が低い
線形回帰
浅いLightGBM
小さなMLP(2,3層のニューラルネットワーク)
深いLightGBM
Transformer
大規模Transformer
↓ 自由度が高い

自由度が高いほど学習データにはよく適合する。

しかし、FXで重要なのは学習データを 説明すること ではない。

未来でも同じパターンが再現されることである。

まとめ

Transformerは、高い表現力によって複雑な特徴量同士の関係まで学習できる。

一方、ドル円の期待値推測で求めているのは、未来でも何度も再現される代表的で一般的なパターンだけである。

だからこそ、少なくとも現時点の私の実験では、小さなMLPのほうが適しているという結論になっている。

金融時系列では、「より複雑なモデル」が必ずしも「より良いモデル」とは限らない。

重要なのは、複雑なパターンを見つけることではなく、未来でも何度も再現される代表的なパターンだけを学習することである。