パージド交差検証とエンバーゴとは?金融モデルのラベル漏洩を防ぐ
先読みリターンのラベル区間が重なる時系列データで、パージとエンバーゴをどう使うかを解説。ウォークフォワード、TimeSeriesSplit、CPCVとの違いも整理します。
このガイドの内容ランダムなK分割が時系列で誤解を招く場合
短い要約
パージド交差検証は、テスト期間の結果区間と重なるラベルを持つ訓練サンプルを除外します。エンバーゴは、テスト区間の後にあるデータを訓練へ使う分割で、別途定めた期間だけ後続サンプルを訓練から外す措置です。両者は目的も対象も異なり、単に日付順に並べるウォークフォワード検証の代わりではありません。
ランダムなK分割が時系列で誤解を招く場合
通常のK分割交差検証は、標本をいくつかのグループに分け、グループを順番にテストに使います。金融データでは観測値同士が依存していたり、将来リターンのラベル区間が重なったりすると、ランダム分割で訓練とテストの情報が近づき、成績が楽観的に見えることがあります。
ただしK分割が常に無効という意味ではありません。独立性やラベルの区間など、データと問いに合う前提が満たされるかを確認します。時系列を使うときは、予測時点で知り得た情報だけで特徴量を作り、テスト側の将来結果が訓練側のラベルに入り込まないようにします。
交差検証が答える問いも明示しましょう。過去時点で学習し、その後だけを予測する運用を模擬したいのか、複数の分割にわたるモデルの安定性を調べたいのかで、適切な分割は異なります。
判断時刻とラベル区間を定義する
各サンプルについて、判断時刻t、その時点で実際に利用できた情報、特徴量の観測期間、目的変数ラベルの区間、ラベルが確定する終点t1を記録します。たとえば日次判断tで5取引日先のリターンを予測するラベルは、区間(t, t+5]の値動きを使います。t+5より後で初めて確定する情報を、その時点の特徴量に使ってはいけません。
特徴量の過去観測期間が別サンプルと重なるだけで、直ちに漏洩になるわけではありません。予測時点までに両方の情報が公知で、特徴量の計算も各時点で利用可能なデータだけを使っていれば、共通する過去の市場履歴は通常の依存性であり、将来ラベルの共有とは別です。反対に、改定後の経済統計や後から修正された価格を過去時点で既知だったように扱うのは問題です。
ラベルがボラティリティ・バリアやイベント終了時刻で決まる場合、サンプルごとに区間の長さが異なります。行番号の固定幅だけで表すのではなく、実際の開始・終了時刻を保持してください。
テスト結果区間と重なる訓練ラベルをパージする
パージでは、訓練サンプルの実際の結果・ラベル区間がテストサンプルの結果区間と重なる場合、その訓練サンプルを学習から除外します。金融ラベルは将来のリターンやイベントを含むため、判断日だけを比べて近接を判定すると、同じ価格変化が訓練ラベルとテストラベルの双方に入っていることを見落とす可能性があります。
可変長のイベントラベルでは、実際の開始時刻と終了時刻を比較します。全サンプルから一律に「5行」を削るだけでは、イベント期間が長いサンプルも短いサンプルも同じように扱ってしまいます。ラベル区間の重なりを調べた上で、必要なら追加のエンバーゴを検討します。
パージそのものは分割を時系列順にしません。テスト期間より後のサンプルを訓練に残す設計もあり得ます。重複ラベルを除くことと、未来の情報を使わない過去再現型の検証は別の条件です。López de Pradoの『Advances in Financial Machine Learning』第7章では、重なる金融ラベルに対するパージと交差検証を解説しています。
5日先ラベルで重なりを確認する
日次の判断それぞれに5セッション先の結果を付け、そのラベル区間を(t, t+5]とします。テストの判断日が11日から15日なら、テストラベルは15日分の判断から20日まで伸びます。ここでは日付が連続したセッション番号だと仮定します。
訓練候補のラベル(7, 12]は、テストラベルの区間と11日から12日の部分で重なります。候補(16, 21]も、テスト側のラベルが続く区間と重なります。したがって、この2つの訓練候補は両方パージします。判定は判断日の差だけでなく、実際に含まれる結果区間に基づきます。
一方、より後の訓練サンプルのラベルがテストラベルと重ならなくても、別に設定したエンバーゴ期間内なら訓練から除外される場合があります。例の目的は区間の追跡方法を示すことで、普遍的な空白日数を定めることではありません。
エンバーゴはパージとは別に指定する
エンバーゴは、テストブロックの後にあるサンプルを訓練へ戻す分割で、後続の観測を一定のバッファ期間だけ訓練から除外する措置です。イベントラベルの不確実な境界や、特徴量構成に残る依存を弱める助けになります。ただし、実際のラベル区間が重なるかの確認を置き換えるものではありません。
一律に「データの1%」や「5日」と決める規則はありません。サンプリング頻度、ラベルの予測期間、特徴量の作り方、観測された依存性を踏まえて長さを選び、理由を記録します。ラベル期間より長い特徴量窓がある場合、それを無視して短いエンバーゴを選べば残存依存を取り逃すことがあります。
テスト後のデータを訓練に使わないウォークフォワード分割では、後続訓練データ用のエンバーゴが不要な設計もあります。それでも、テスト前のラベル区間がテスト結果と重ならないかを確認します。

ウォークフォワードとTimeSeriesSplitの役割を分ける
ウォークフォワードまたはローリング・オリジン検証では、過去のデータで学習し、それより後の期間をテストします。時間順の実運用に近い問い、つまり「当時利用できた過去データだけで、その後を予測できたか」を評価するのに向いています。学習期間を拡張するか、一定長に保つかは設計として明記します。
scikit-learnのTimeSeriesSplitも、訓練をテストより前に置き、gapで訓練末尾から除くサンプル数を指定します。公式ドキュメントが説明するgapは行数です。等間隔の観測なら、固定した行数の間隔として扱えますが、イベント時刻が不規則なラベルの重複を自動で判定する機能ではありません。
したがってgapだけで区間のパージを代用しないでください。時系列順、ラベルの実区間、必要なバッファは別々に確認します。分割に必要な間隔を実時間で表したい場合、観測頻度と不規則イベントをどう行へ写像したかも記録します。
Purged K分割とCPCVが答える問い
Purged K分割は各テストブロックに対してラベル区間が重なる訓練サンプルを除きます。構成によってはテストブロックより後の観測も別の訓練ブロックに使います。その結果は複数期間にまたがるモデルの頑健性を調べる助けになりますが、過去から未来への運用を再現するウォークフォワード試験と同じ問いには答えません。
Combinatorial purged cross-validation(CPCV)は、複数のテストブロックを組み合わせて複数のテスト経路を作り、結果の分布を調べる方法です。『Advances in Financial Machine Learning』第12章ではウォークフォワードやCPCVなどの検証方法を扱い、第7章では重複する金融ラベルへの対処を説明しています。CPCVは多くの経路を作れても、特徴量の先読み、改定データ、全データでの前処理、何度もモデルを試した選択偏りを消しません。
バックテストを繰り返し試した影響を評価するときは、CPCVの経路数だけを独立した検証回数と解釈しないでください。モデル選択の過剰適合には別の分析が必要です。Baileyらのバックテスト過剰適合確率に関する研究は、複数の候補を選ぶことで生じる問題を扱います。
分割後にも残る情報漏洩を点検する
ラベルをパージしても、予測時点で利用できなかった特徴量、誤ったタイムスタンプ、生存者バイアス、後日改定されたデータは残り得ます。全標本で標準化や欠損補完をしてから分割すると、テスト期間の情報が訓練側へ伝わります。特徴量選択や閾値調整も、テスト結果を見ながら繰り返せば選択バイアスになります。
前処理変換と特徴量選択は各訓練フォールド内で適合し、そのフォールドの検証データには変換だけを適用します。モデルやハイパーパラメータを選ぶ場合は、時間を意識した内側の検証を使い、最終評価用には最後まで触れない時系列ホールドアウトを残します。実際の手数料、スプレッド、約定可能性を無視した約定仮定も結果を歪めます。
いずれの交差検証も将来の成績を保証しません。分割後のスコアは、その標本、特徴量の定義、ラベル、費用仮定に条件づけられた推定値です。
検証設計を再現できるよう記録する
各実験で、判断時刻、情報の利用可能時点、特徴量窓、ラベル開始と終了、訓練・テスト分割、パージ対象、エンバーゴの長さと根拠、前処理の適合範囲、最終ホールドアウトを記録します。これにより別の人が同じサンプル境界を再現できます。
過剰適合の仕組みは金融モデルのバイアス・バリアンストレードオフ、反復検定は多重検定と偽発見率、自己相関を考慮した指標の年率換算はシャープレシオと系列相関も参照してください。検証方法の名称だけでなく、どの情報をどの時点で学習に使ったかを残すことが重要です。
よくある質問
Q15日先リターンの特徴量期間が別サンプルと重なっても必ず漏洩ですか?
いいえ。重なる過去履歴が各判断時点で実際に利用可能なら、それだけでラベル漏洩とは限りません。問題になるのは、テストの結果情報が訓練ラベルや特徴量、前処理へ入り込む場合です。
Q2エンバーゴは常に5日必要ですか?
いいえ。普遍的な日数や比率はありません。観測頻度、ラベルの長さ、特徴量構成、依存性に基づいて選び、根拠を記録します。実際のラベル区間の重複チェックも別に行います。
Q3CPCVの成績が良ければ将来の運用成績も保証されますか?
保証されません。CPCVは複数のテスト経路を評価できますが、先読みやデータ改定、試行選択、費用と約定の現実性は別途点検が必要です。
出典
問題を報告
この記事のリンクを含むメールを準備します。送信すると Mark に報告が届きます
クイックチェック
記事を読み終えたら、3問で確認しましょう
問題 01
テストサンプルと訓練サンプルの将来ラベル区間が重なる場合、パージは何をしますか?
答えを選ぶと解説を確認できます