1 ネスティッド交差検証の概要
1.1 目的と基本発想
ネスティッド交差検証(nested cross-validation)は、機械学習モデルの汎化性能を公正に評価しつつ、同時にハイパーパラメータ(モデル選択のための設定値)を最適化するための検証枠組みである。主な関心は「評価に使うデータが、事実上ハイパーパラメータの調整に関与してしまう」状況を避けることにある。
外側の分割で評価用の区間を確保し、その外側の各分割に対して内側の分割でハイパーパラメータ選択を行う。こうすることで、最終的な性能見積もりは、ハイパーパラメータ探索の影響を受けにくい形で計算される。
1.2 通常の交差検証との違い
通常の交差検証では、各分割で学習と検証を繰り返すが、ハイパーパラメータ探索のやり方によっては、評価指標の値が選択過程に間接的に引き込まれる。たとえば、同じデータの一部を探索と評価の両方に反復的に用いると、探索手順がたまたま高いスコアを示す設定へ寄りやすくなり、結果として過大評価につながることがある。
ネスティッド交差検証では、この寄与を二重構造で遮断する。外側の区画は「最終評価のため」に固定し、内側の探索では外側区画を参照しない設計にするため、評価の公平性が確保される。結果は、通常より厳密な汎化見積もりになりやすい。
1.3 用語の整理
本節では、以後の議論で必要になる基本語を整理する。
外側の交差検証は、性能推定の枠組みとして働く分割であり、一般に外側の交差検証の分割数を k と書くことが多い。内側の交差検証は、外側の各分割でハイパーパラメータを選ぶために用いる分割で、分割数を m とする。内側探索の対象は、候補ハイパーパラメータの組(設定の集合)である。
さらに「データリーク」は、評価に用いる情報が学習・探索側へ流入してしまうことで、見かけ上の成績が押し上げられる現象を指す。ネスティッド交差検証は、この流入の可能性を構造的に抑えることを狙う。
2 手続きとアルゴリズム
2.1 外側の交差検証
外側の手続きでは、データ集合を k 個の折(fold)に分割し、1 つずつを外側の検証区画として取り出す。外側の i 番目の反復では、残り k−1 個の折を「内側で探索・学習するための集合」とし、i 番目の折は「最終評価に用いる集合」として保持する。
この外側の反復は、外側の検証区画に対するモデル性能を繰り返し見積もり、最終的な性能指標を平均や分散などで集計する役割を持つ。外側の検証区画は、内側のハイパーパラメータ選択に一切使わない点が重要である。
2.2 内側の交差検証
内側の手続きは、外側の i 番目反復で確保した学習用集合の内部で実行される。内側の交差検証では、候補ハイパーパラメータのそれぞれについて、内側分割の学習・検証を行い、選択基準に基づいて最良の設定を選ぶ。
内側の結果として得られる「最適と判定されたハイパーパラメータ」を、その外側反復に対応する最終モデルの設定として採用する。
2.2.1 ハイパーパラメータ探索の枠組み
内側での探索は、候補の生成方法により大きく整理できる。探索は「各候補を評価し、内側の選択基準で順位付けする」ことで実現される。
2.2.1.1 グリッド探索とランダム探索
グリッド探索は、各ハイパーパラメータの候補値を離散的に並べ、組み合わせの全体(直積)を評価する方式である。探索の網羅性が高い一方、候補数の増加により計算量が急増しやすい。
ランダム探索は、候補の組を確率的にサンプリングする方式である。探索空間が広い場合に、限られた試行回数で広域を探索できる利点がある。再現性を確保するために乱数の種を固定する実務上の工夫もよく行われる。
2.2.2 目的関数と選択基準
内側での目的関数は、性能指標(例:分類なら精度、F1、AUC、回帰なら平均二乗誤差や平均絶対誤差など)を用いて定義されることが多い。各候補ハイパーパラメータについて、内側の折ごとに性能を計算し、その値を平均する、あるいは重み付け平均することで総合評価を行う。
選択基準は、平均性能が最大の候補を選ぶ単純な方式から、ばらつきを抑えた設定を好む規則まで複数の設計があり得る。重要なのは、選択基準が外側検証区画へ影響を持たないこと、すなわち外側検証での成績を「学習・探索側の意思決定」に巻き込まないことである。
2.3 最終モデルの学習手順
各外側反復 i で内側探索により最適設定を得た後、その反復に対応する最終モデルを学習用集合(外側 i を除いた集合)全体で訓練する。次に、保持していた外側の検証区画 i に対して予測を行い、性能指標を計算する。
こうして外側の反復を k 回実施し、得られた k 個の性能値から全体の性能推定(平均、信頼区間の近似、標準偏差など)をまとめる。外側の検証区画は最後まで評価専用であり続けるため、汎化性能の推定が過度に楽観的になりにくい。
3 実務上の設計指針
3.1 分割数(外側kと内側m)の選び方
外側 k と内側 m は計算量と推定の安定性を左右する。外側 k を大きくすると評価点の数が増え、平均の頑健性が上がる傾向があるが、内側探索を k 倍実行するため総計算量も増える。内側 m を増やすとハイパーパラメータ選択の根拠が増えやすい一方、探索に必要な学習回数が増加する。
実務では、データ量と計算資源のバランスで決定することが多い。典型的には外側を数分割、内側をそれより少し小さめに設定するケースがあるが、データの散らばりやクラス分布、モデルの学習コストに応じて調整が必要になる。
3.2 データ前処理の扱い
前処理(スケーリング、欠損処理、特徴量選択、カテゴリ変数の符号化など)は、学習データから推定する統計量や変換器を含むことが多い。ネスティッド交差検証では、この推定対象がどの区画に属するかが性能評価に直結する。
3.2.1 学習データのみでの推定(スケーリング等)
変換器や統計量の推定は、必ず「その学習に使うデータ集合」だけから行う。内側探索の各反復では、内側の学習区画に基づいて前処理を作成し、それを内側検証区画に適用する。外側の最終モデル学習では、外側学習集合で前処理を再推定し、外側検証区画へ適用する。
この統制により、検証区画の情報が変換器の推定に混ざることを防げる。前処理をパイプライン化し、学習ステップと分離する設計が有効である。
3.2.2 テストデータへの影響回避
ネスティッド交差検証の「外側検証区画」は評価用であるため、そこへ適用する前処理は学習区画から作られたものに限定する。さらに、最終的に提示するテスト集合(本来の未使用データ)が存在する場合、その集合には交差検証の結果にもとづく変更を加えず、最後に一度だけ評価する。
手続き上の区画を曖昧にすると、変換器や探索結果が情報リークとして働き、推定が歪む。実務では、データ分割の境界をコードレベルで厳密に管理することが求められる。
3.3 評価指標の選択
評価指標は、タスクの性質に合わせる必要がある。回帰では誤差の尺度が解釈に直結するため、分布の外れ値への敏感度を考慮して指標を選ぶ。分類では、確率の較正や閾値に関する設計が絡むため、用途に応じて適切な指標(閾値依存か否か、ランキング性能を重視するか等)を選ぶ。
また、内側での選択基準と外側での報告指標は同一である必要は必ずしもないが、一般に整合性を保つ方が説明しやすい。整合性が崩れると、選択の根拠と成果物の評価が噛み合わない可能性がある。
4 計算コストと注意点
4.1 計算量の見積もり
ネスティッド交差検証は、外側 k 回の反復の中で、内側の m 分割による評価と、候補ハイパーパラメータ数の探索が行われる。したがって総学習回数は概ね「外側 k × 内側 m × 候補数」に比例する。
加えて、各学習の計算コスト(データサイズ、特徴量次元、アルゴリズムの反復回数)が支配的になるため、見積もりは学習器ごとに変わる。特に大規模データや高次元特徴では、候補数が少し増えただけで実行不能に近づくことがある。
4.2 学習時間の削減策
計算コストを抑えるには、候補数や学習回数の削減が基本になる。探索戦略の見直しや、学習器の内部設定の調整が効果的である。
4.2.1 早期打ち切りと候補数の制御
早期打ち切りは、学習の途中で改善が見込めない場合に停止する仕組みである。内側探索では、各候補に対する学習が完了するまで待つ必要があるため、早期終了が効けば全体の短縮につながる。
候補数の制御では、グリッド探索の次元削減や、ランダム探索の試行回数設定が該当する。加えて、粗い探索→絞り込みの段階設計により、探索空間全体を最初から評価しない方針も実務で採用される。
4.3 データ量が少ない場合の挙動
データが少ないと、各分割の学習集合がさらに縮小し、推定の不安定さが増しやすい。内側でのハイパーパラメータ選択は、少数サンプルに対する分散を含むため、選択が揺れる可能性がある。
この状況では、分割数を過度に増やさないことが一つの対策になる。加えて、評価指標が小標本で分散しやすい場合、指標選択や集計方法に注意が必要になる。分類では層化分割(クラス比率の維持)が特に重要になりやすい。
4.4 実装上の典型的な落とし穴
実装で頻出する問題は、前処理や特徴量選択の範囲がずれることにある。交差検証の外で先にスケーリングしてから分割すると、情報が事前に混入する。パイプラインを使わず、手続きの境界がコード上で曖昧になることも同様に危険である。
もう一つの落とし穴は、内側と外側で学習器の状態が適切にリセットされない点である。反復間でモデルパラメータや乱数の取り扱いが混ざると再現性が損なわれる。さらに、探索で使う乱数種を管理しないと結果比較が難しくなる。
最後に、計算の途中で得られた中間結果を外側の評価に誤って利用するような設計は、意図せず評価の純度を下げるため避けるべきである。
5 応用例
5.1 回帰問題での運用例
回帰では、例えば正則化付き線形モデルやランダムフォレストなど、ハイパーパラメータが予測誤差に影響する学習器でネスティッド交差検証が使われる。内側では学習区画から前処理を推定し、各候補設定ごとに内側検証で平均誤差を算出して選択する。
外側では、その選択された設定で外側学習集合全体を訓練し、外側検証区画に対して回帰誤差を計測する。こうして平均二乗誤差や平均絶対誤差などを外側反復で集計することで、汎化性能の見積もりが得られる。
5.2 分類問題での運用例
分類では、確率出力を伴う学習器において閾値や順位付けの性能が重要になる。内側探索では、候補ハイパーパラメータに対して内側検証で指標(例:F1、AUC、対数損失など)を算出し、選択基準により最適設定を決定する。
外側では最適設定で学習したモデルを用いて外側検証区画で予測し、指標値を記録する。層化分割を導入すれば、各折でクラス比率の極端な変動を抑え、推定の揺れを軽減できる。
5.3 不均衡データでの考え方
不均衡データでは、単純な精度が高く見えても実際の学習目的とズレることがある。ネスティッド交差検証の枠組み自体は同じだが、内側での選択基準にはクラス比率の影響を受けにくい指標や、用途に整合した指標を選ぶ必要がある。
たとえば、誤分類のコストを反映する設計や、再サンプリングの手法(学習区画内でのみに適用する)を検討する。前処理の適用範囲を間違えるとリークが起きるため、サンプリングや重み付けの適用も学習区画に限定するのが原則である。
5.4 アンサンブルと組み合わせた場合
アンサンブル(複数モデルを組み合わせる手法)では、学習器の種類に加えて組合せ方にもハイパーパラメータが存在する場合がある。ネスティッド交差検証は、このような複合的な調整にも適用可能である。
内側探索の候補に「アンサンブル構成に関する設定」を含めれば、構成の最適化も同時に行える。外側評価では、その選択に基づいてアンサンブルを構築し、独立な検証区画で性能を測る。計算負荷は増えやすいが、設計の一貫性を保ちやすい点が利点となる。
6 まとめと位置づけ
6.1 ネスティッド交差検証が有効な場面
ネスティッド交差検証は、モデル選択やハイパーパラメータ探索を行いながら、汎化性能を過大評価しない形で報告したい場合に有効である。特にデータセットが限られ、探索による最適化の影響が見積もりに反映されやすい状況で価値が高い。
また、前処理を含む学習パイプラインを厳密に扱いたいケースでも適する。手続きの二重構造により、境界の管理をルールとして組み込めるためである。
6.2 代替手法との使い分け
代替として、ホールドアウト分割(学習・検証・テストの固定分割)や、単一の交差検証に探索を組み合わせる方法がある。ただし単純な交差検証では、探索の影響が評価に混ざりやすくなる場合があるため、厳密性が要件である場合はネスティッド交差検証が選ばれやすい。
計算資源が厳しい場合には、探索回数を減らす代替や、事前に仮説を絞った探索設計が現実的になることがある。要件(推定の厳密さ、実行時間、データ規模)に応じた選択が重要になる。
6.3 長所と短所の整理
長所は、外側評価の純度を保ちやすく、ハイパーパラメータ選択による過大評価を抑えた性能見積もりを得られる点にある。内側探索と外側評価が構造的に分離されるため、検証の公平性を説明しやすい。
短所は計算コストの増加である。外側の回数だけ内側探索を繰り返すため、学習器が重い場合や探索候補が多い場合に実行が難しくなることがある。さらに、前処理やデータ分割の境界を厳密に実装しないと、利点が損なわれる点も注意が必要である。