検証データセットとは、機械学習モデルの学習過程においてハイパーパラメータの調整やモデル構造の選定、過学習の検知を行うために使用される独立したデータ群です。未知のデータに対する汎化性能を適切に評価するための重要な役割を担います。
検証データセットとは
検証データセットとは、機械学習においてモデルの学習進捗を確認し、ハイパーパラメータの調整やモデルの選定を行うために用いられるデータのことです。
詳しく解説
機械学習の開発では、データを目的ごとに分割して利用します。モデル自身がパラメータを最適化する際には直接参照させず、エポック(学習サイクル)ごとに検証データセットに対する予測精度を計測します。これにより、訓練データのみに適合しすぎて未知のデータに対応できなくなる過学習の兆候を早期に捉え、学習を途中で止める早期終了(アーリーストッピング)や、最適なハイパーパラメータの決定が可能になります。モデルの汎化性能を担保するための必須の中間評価データです。
具体例・使われ方
例えば、画像認識AIの開発において、10万枚の画像データを訓練用7万枚、検証用1万5千枚、テスト用1万5千枚に分割するケースがあります。学習率やニューラルネットワークの層の数を変更しながら検証データセットに対する正解率を比較し、最も精度の高い構成を採用する際に活用されます。
似た用語との違い
混同されやすい概念に「訓練データセット」と「テストデータセット」があります。訓練データセットはモデルの重みパラメータを直接学習するために使われます。検証データセットはハイパーパラメータの調整やモデル選定など学習の誘導に使われます。一方、テストデータセットはすべての調整が完了した最終モデルの性能を一度だけ測定するために使われ、モデルの選定やチューニングには一切使用されません。
注意点
検証データセットを用いて何度もハイパーパラメータの調整を繰り返すと、モデルが検証データセット自体の特徴に過剰に適応してしまう「検証データへの過学習(データリークに類似した現象)」が発生する恐れがあります。その結果、最終的なテストデータセットや本番環境で十分な性能が発揮できない場合があるため、交差検証などの手法を併用することが推奨されます。