30秒でわかる今回の進捗
競馬AIのバックテストで最も避けたいのは、未来情報が学習側へ入り込み、実力以上によく見えることです。
今回、実Canonical DBを読み取り専用で検証し、Point-in-Timeデータセットを再現可能な形で構築しました。さらに、時間順の五つの区間へ分割し、Point-in-Timeと区間分割にリークがないこと、Final Holdoutが隔離されていることを確認しました。
何を変えたか
これまでは、後続のモデル開発で使うデータの時間軸と分割条件を、同じEvidenceから再利用できる形に固定する必要がありました。
今回、その時点で利用できる情報だけを再現するPoint-in-Timeデータセットと、時間順の分割Authorityを正式成果として固定しました。
なぜ必要か
モデル評価は、未来情報が混ざるだけで簡単によく見えてしまいます。
その状態では、モデル比較やバックテストの数値が実運用につながりません。
そのため、モデルを選ぶ前に「未来を見ていないデータで評価している」ことを保証する必要があります。
現在の状態
確認済みの成果は次の通りです。
- 実Canonical DBの読み取り専用検証
- Point-in-Timeデータセットの再現可能な構築
- 五つの時系列区間の固定
- Point-in-Timeと区間分割のリークなし
- Final Holdoutの隔離
- Canonical DBを変更しない検証
これにより、後続工程は同じ時間軸と分割条件を前提にモデルを比較できます。
次の工程
次は、Baselineで使うモデル系列と学習目的を決定します。
ここからモデル比較へ進みますが、評価の土台は今回固定したPoint-in-Timeデータです。