パラメーターの最適化と過剰最適化 Overfitting
パラメーターを過去で「最高」になるよう調整しても、たいていはノイズを覚えただけです。アウトオブサンプルのテストこそが本当の試験です。
このレッスンは無料です。アカウントを登録すると、インタラクティブ・シミュレーションを使えます
どのレッスンにも、ドラッグや再生ができるインタラクティブ・シミュレーションと確認クイズがあり、登録すれば無料で使え、学習の進み具合も自動で保存されます。まずはこのレッスンのテキスト版の解説をどうぞ。
まだ決めかねていますか?まずは第 1 レッスンを見てみましょう(登録不要)「複数指標のコンフルエンス」。
テキスト版の解説 · 指標の実践とバックテスト レッスン 4「パラメーターの最適化と過剰最適化」
パラメーターを過去で「最高」になるよう調整しても、たいていはノイズを覚えただけです。アウトオブサンプルのテストこそが本当の試験です。
尖った山は崩れ、高原は安定
ある「魔法の値」でだけ特に良く、周りのパラメータはそこそこ、という場合は、たいていノイズを覚えてしまっただけです。これが過剰最適化(オーバーフィッティング)です。周りのパラメータも広く良好な「高原」のほうが信頼できます。
データの一部を試験問題として残しておく
インサンプルのデータでパラメータを選び、一度も見ていないアウトオブサンプルのデータで検証します。この試験にも合格してはじめて、さらに研究する価値があります。
試すほど、注意が必要
同じデータで何百通りものパラメータを試せば、最良のものは単に一番運が良かっただけの可能性が高いです。これをデータスヌーピングといいます。パラメータの調整はできるだけ控え、理屈が通っていて、周りのパラメータも良好な設定を優先しましょう。
このレッスンのポイント
- 過剰最適化:パラメーターが過去のデータに完璧に合っているのに、新しいデータではひどい成績になることです。
- ある期間のデータで最適化し(インサンプル)、一度も使っていない別の期間のデータで検証します(アウトオブサンプル)。
- 頑健な戦略は、ある「魔法の数字」でだけ機能する(尖った山)のではなく、パラメーターの周辺一帯でそれなりの成績を出します(台地)。
- 試すパラメーターの組み合わせが多いほど、たまたま見栄えのよい結果に当たりやすくなるので、アウトオブサンプルの検証がいっそう重要になります。
実際に試してみよう
次の練習は、このレッスンのインタラクティブ・シミュレーションで取り組めます:
- まずヒートマップを見ましょう。インサンプルで「最良」の琥珀色のマスはどのパラメータですか? その周りのマスは何色ですか?
- 「アウトオブサンプルで検証」をクリックしましょう。尖った山のプラスのリターンはいくつになりましたか? 例題の「インサンプル +80%、アウトオブサンプル −20%」と同じ現象です。
- 水色の点線の枠(高原)のインサンプルとアウトオブサンプルの平均を比べましょう。悪くはなりましたが、崩れましたか?
- 高原ゾーン内のマスをいくつか、尖った山の隣のマスをいくつかクリックして、2 つの期間のリターンの違いを見てみましょう。
クイズと解説
- 1. あるパラメーターはインサンプルでリターン +80%、アウトオブサンプルで −20% でした。最も考えられる原因は?
- 答え:過剰最適化。過去のノイズを覚えてしまったからです。
- 2. パラメーターが頑健かどうかを判断するには、何を見るべきですか?
- 答え:パラメーターの周辺一帯がどれもよい成績か。「尖った山」より「台地」のほうが信頼できます。
- 3. 同じ期間のデータで 500 通りのパラメーターを試し、最もよいものを選びました。次に最もすべきことは?
- 答え:最適化に使っていないアウトオブサンプルのデータで検証する。試すほど、たまたまよい結果に当たりやすくなります。それが運かどうかを確かめられるのは、見たことのないデータだけです。
このレッスンの用語
- データスヌーピング (Data Snooping):同じ過去データで大量のルールやパラメータを試し続けると、たまたま見栄えの良い組み合わせが必ず見つかりますが、それは多くの場合ただの運です。
- インサンプル (In-Sample):パラメータの最適化に使った期間の過去データです。
- アウトオブサンプル (Out-of-Sample):最適化には使わず、戦略の検証のためだけに取っておいたデータです。
- 過剰最適化(オーバーフィッティング) (Overfitting):パラメータを過去のデータに合わせすぎた状態で、新しいデータではうまくいきません。