あるデータサイエンティストが機械学習モデルの汎化性能を正確に評価するため、手元のデータを「訓練データ(Training Data)」と「テストデータ(Test Data)」に分割しようとしている。テストデータの主な目的はどれか。
- A. 特徴量の正規化(スケーリング)に使う統計量を計算する
- B. モデルのパラメータを更新するための誤差計算に使う
- C. ハイパーパラメータ(学習率など)の調整に使う
- D. 学習済みモデルが未知のデータに対してどれだけ正確に予測できるかを評価する
解答と解説を見る
正解: D
テストデータはモデルが一度も学習に使っていない未知のデータであり、学習済みモデルの汎化性能(見たことないデータへの予測精度)を公平に評価するために使う。Bの誤差計算によるパラメータ更新は訓練データを使って行うものであり、テストデータをこの目的に使ってしまうと評価が汚染される。Cのハイパーパラメータ調整には検証データ(Validation Data)を使うのが正しく、テストデータはファイナルな評価のみに使うべきである。Aの正規化統計量(平均・標準偏差)も訓練データから計算するのが原則であり、テストデータの情報を使うとデータリークになる。