測試集

Test Set

用於最終評估的未參與訓練數據

詳細解釋

測試集(Test Set)是用於最終評估機器學習模型泛化性能的數據子集,在整個開發過程中只使用一次。

與其他數據集的區別:

  • 訓練集:調整模型參數(權重)
  • 驗證集(驗證集):選擇超參數和模型
  • 測試集:最終性能評估,模擬真實世界部署

為何只用一次:

  • 防止信息洩漏:多次使用會導致模型間接「看到」測試數據
  • 真實性能估計:確保評估反映模型在全新數據上的表現
  • 模擬部署:部署時模型面對的就是全新的、未見過的數據

劃分原則:

  • 隨機劃分:確保訓練/驗證/測試同分布
  • 時間劃分:對於時間序列,用最新數據作為測試集
  • 分層抽樣:保持類別比例一致
  • 數據隔離:測試集絕對不能用於任何訓練或調參決策

測試集洩露的常見錯誤:

  • 用測試集選擇模型:導致過度樂觀的估計
  • 預處理時使用全部數據:標準化統計量應只從訓練集計算
  • 反覆測試不同模型:多次評估等同於用測試集訓練
  • 早停時監測測試集:應該用驗證集決定何時停止

大小考量:

  • 小數據集:可能犧牲測試集大小(如20%)
  • 大數據集:1-5%可能就足夠(如100萬樣本中取1萬)
  • 統計顯著性:確保測試集夠大以檢測性能差異

測試集是模型評估的最終裁判,必須嚴格保護其純潔性。

探索更多AI詞彙

查看所有分類,繼續學習AI知識