結論
ホールドアウト検証はデータを学習用と評価用に一度だけ分けて評価する方法で、交差検証は検証用のグループを入れ替えながら学習と評価を繰り返し、その平均で評価する方法です。データが少ないときは評価が安定する交差検証、データが多いときや1回の学習に時間がかかるときは計算の軽いホールドアウト検証を使うのが基本です。
比較表
| 観点 | ホールドアウト検証 | 交差検証 |
|---|---|---|
| 英語 | holdout validation(hold out=取っておく) | cross-validation(CV) |
| データの分け方 | 学習用と評価用に一度だけ分ける(例:8対2) | k個のグループに分け、1つを検証用、残りを学習用にする組み合わせを順に入れ替える(k-分割交差検証) |
| 学習と評価の回数 | 1回 | k回(kは5や10がよく使われる) |
| 評価に使われるデータ | 評価用に取り分けた一部だけ | すべてのデータが一度ずつ検証用になる |
| 評価値の安定性 | 分け方の偶然でぶれやすい。評価用データが少ないほどぶれは大きい | k回の平均をとるので安定しやすい |
| 計算量 | 少ない(学習1回) | 1回の学習のおよそk倍 |
| 向く場面 | データが大量にあるとき、1回の学習に時間がかかる深層学習 | データが少なく、手元のデータをむだなく使いたいとき |
| 時系列データの分け方 | 古い期間を学習用、新しい期間を評価用にする | 学習に使う期間を少しずつ延ばし、そのすぐ後の期間で検証することを繰り返す(学習側が常に検証側より前になる) |
| シラバス項目 | 技術分野 項目10 モデルの選択・評価(キーワード「ホールドアウト検証」) | 技術分野 項目10 モデルの選択・評価(キーワード「交差検証」「k-分割交差検証」) |
| G検定での問われ方 | 一度だけ分ける手順、計算が軽い利点と分け方に左右される弱点、大規模データの場面で選ぶ判断 | k-分割の手順と平均をとること、計算量がk倍になること、少量データの場面で選ぶ判断、時系列データでの分け方 |
最終確認日:2026年11月1日
それぞれの説明
ホールドアウト検証と交差検証は、どちらも学習に使っていないデータでモデルを評価し、汎化性能を見積もる方法です。学習に使ったデータで測ると、答えを覚えただけのモデルでも高い成績が出てしまうためです。違いは、データを何回分け直して評価するかにあります。
ホールドアウト検証
データを学習用と評価用に一度だけ分けます。たとえば1万件なら、8,000件で学習し、残りの2,000件で評価します。学習と評価が1回ずつなので、計算は軽く済みます。
弱点は、どのデータがたまたま評価用に入ったかで成績が変わることです。評価用データが少ないほど、このぶれは大きくなります。評価用に回した分だけ、学習に使えるデータも減ります。
交差検証
代表的なk-分割交差検証では、データをk個のグループに分けます。1つを検証用、残りを学習用にして学習と評価を行い、検証用のグループを入れ替えながらk回繰り返します。k回の評価値の平均が、性能の見積もりです。すべてのデータが一度ずつ検証に使われるので、分け方の偶然に左右されにくくなります。その代わり、学習をk回行うため、計算量はおよそk倍です。kをデータの件数と同じにして1件ずつ検証に回す方法を、Leave-One-Out交差検証と呼びます。
どちらを使うか
データが少ない場面では、交差検証でデータをむだなく使います。データが大量にあれば評価用データも大きく取れるので、ホールドアウト検証でも見積もりは安定します。1回の学習に何時間もかかる深層学習では、k回の学習が現実的でないことも多く、ホールドアウト検証がよく使われます。
どちらの場合も、ハイパーパラメータの調整やモデルの選択に使ったデータとは別に、最終評価用のテストデータを残しておきます。時系列データでは無作為に分けず、過去のデータで学習し、それより後の期間で評価します。
見分けるコツ
- 手順に「繰り返し」と「平均」があるかで見分けます。一度だけ分けて1回評価するならホールドアウト検証、検証用を入れ替えながら繰り返して平均するなら交差検証です。
- 場面問題では、データの量と1回の学習にかかる時間を確かめます。データが少なければ交差検証、データが大量で学習が重ければホールドアウト検証が基本です。
- 交差検証を使っても、最終評価用のテストデータは別に残します。交差検証が置き換えるのは検証用データで、テストデータではありません。
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
1,000件のデータで5-分割交差検証を行うと、1回の学習には800件が使われる。
答えを見る
答え ◯ 正しい
1グループは200件です。検証用の1グループを除いた4グループ、800件で学習し、これを5回繰り返します。学習に使う件数は、8対2に分けたホールドアウト検証と同じです。
-
k-分割交差検証のkを大きくするほど、1回の学習に使えるデータの割合は小さくなる。
答えを見る
答え × 誤り
学習に使う割合は(k−1)/kで、k=5なら80%、k=10なら90%です。kを大きくすると学習に使えるデータは増えますが、学習の回数も増えて計算に時間がかかります。
-
k-分割交差検証では、k回の評価値のうち最も良かった1回の値を、汎化性能の見積もりとして報告する。
答えを見る
答え × 誤り
報告するのはk回の評価値の平均です。最も良い1回だけを選ぶと、たまたま有利な分け方だった結果を拾うことになり、性能を楽観的に見積もります。
関連問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目10 モデルの選択・評価)
- scikit-learn User Guide, Cross-validation: evaluating estimator performance (3.1 Cross-validation、3.1.2.1.1 K-fold、3.1.2.6 Cross validation of time series data)
- M. Stone, Cross-Validatory Choice and Assessment of Statistical Predictions, Journal of the Royal Statistical Society Series B 36(2), 111–133 (1974)
- Ian Goodfellow, Yoshua Bengio, Aaron Courville, Deep Learning, MIT Press (2016) (5.3 Hyperparameters and Validation Sets、5.3.1 Cross-Validation)
ほかの違い比較
- アジャイルとウォーターフォールの違い 進め方とAI開発での使い分け
- 赤池情報量規準(AIC)とベイズ情報量規準(BIC)の違い 罰則の重さ
- バギングとブースティングの違い 並列か逐次か、減らす誤差の違い
- バッチ正規化とレイヤー正規化の違い 平均と分散を計算する範囲の違い
- バッチ学習・ミニバッチ学習とオンライン学習の違い 更新回数とぶれ
- BERTとGPTの違い エンコーダとデコーダ、学習課題の違い
- CBOWとスキップグラムの違い 予測の向きと学習の速さ
- 分類問題と回帰問題の違い 出力の形で見分けるコツと評価指標
- CNN・RNNとTransformerの違い 得意なデータと計算の並列性
- 協調フィルタリングとコンテンツベースフィルタリングの違い 仕組み
- 共分散と相関係数の違い 式の関係と単位・値の範囲
- データ汚染とAdversarial Attackの違い 学習時か推論時かと対策
- 決定木とランダムフォレストの違い 解釈のしやすさと精度・安定性
- 深さ優先探索と幅優先探索の違い 調べる順番・最短解・メモリ
- 営業秘密と限定提供データの違い 3つの要件と刑事罰の有無
- Faster R-CNNとYOLOの違い 2段階型と1段階型、速度と精度
- GANと拡散モデル(Diffusion Model)の違い 学習と生成の仕組み
- GANとVAEの違い 識別器の有無と学習の仕組み
- GDPRと個人情報保護法の違い 法的根拠・本人の権利・制裁金
- 勾配降下法と誤差逆伝播法の違い 勾配を使う側と求める側
- グリッドサーチとランダムサーチの違い 試行回数の決まり方と効率
- 画像分類(物体識別)と物体検出の違い 出力の形と使い分け
- 委託・第三者提供と共同利用の違い 同意の要否と受け手が使える範囲
- k-means法と階層的クラスタリングの違い クラスタ数を決める時期と計算量
- 個人情報・個人データと保有個人データの違い 範囲の入れ子とかかる義務
- 個人情報と個人識別符号の違い 包含関係と当たる例・当たらない例
- L1正則化とL2正則化の違い 罰則の形と重みが0になるか
- 最小二乗法と最尤法の違い 推定の基準と結果が一致する条件
- LIMEとSHAPの違い 局所近似とシャープレイ値の使い分け
- LSTMとGRUの違い ゲートの数と記憶セルの有無
- 機械学習とディープラーニングの違い 包含関係と特徴量の決め方
- 平均絶対値誤差(MAE)と平均二乗誤差(MSE)の違い 外れ値への強さ
- 正規化と正則化の違い 目的と代表的な手法を表で整理
- 主成分分析(PCA)と特異値分解(SVD)の違い 目的と計算の関係
- 主成分分析(PCA)とt-SNEの違い 線形か非線形か、保つ構造の違い
- 適合率と再現率の違い 分母の違いと重視する場面
- プルーニング・量子化と蒸留の違い 何を減らすかと元モデルの扱い
- Q学習とSARSAの違い 更新式の1か所と方策オン・オフ
- RNNとLSTMの違い 記憶セルと勾配消失の起きにくさ
- Self-AttentionとSource-Target Attentionの違い Q・K・Vの出どころ
- セマンティック・インスタンスとパノプティックの違い 背景と個体の扱い
- 新規性と進歩性の違い 比べ方とAI発明での論点
- シグモイド関数とソフトマックス関数の違い 出力の合計と使い分け
- ソフトローとハードローの違い 法的拘束力の有無と日本・EUの例
- 強いAIと弱いAIの違い 心をもつと考えるかの違い
- 教師あり学習・教師なし学習と強化学習の違い 学習の手がかりと代表例
- 特許権と著作権の違い 発生・保護対象・期間とAIでの使い分け
- 匿名加工情報と仮名加工情報の違い 加工の程度と第三者提供の可否
- 転移学習とファインチューニングの違い 重みを固定するか更新するか
- 請負契約と準委任契約の違い 完成義務とAI開発での使い分け
- Zero-shotとFew-shotの違い 与える例の数と重みを更新しない点