iPAS 備考專區 登入

iPAS AI 應用規劃師 中級 科目一 AI 技術應用與規劃・114 年第二次・L21・第 14 題

超參數過度調整怎麼避免?Cross-Validation 出手

原題

在調整模型超參數(Hyperparameters)時,若希望避免因過度調整參數而導致過擬合,下列哪一種做法最有效提升模型的泛化能力?

白話

模型有一些「人工設定的旋鈕」,不是訓練過程自己學出來的,叫做超參數(Hyperparameters),例如「要幾層神經網路」「學習率設多少」。

題目說:工程師在試不同的超參數設定時,擔心「試太多組合、調太細」,模型會死記測試資料的樣子,在真實資料上反而表現更差(這叫過擬合,overfitting)。

問你:要怎麼避免超參數調整導致過擬合,讓模型泛化能力最好?

一句話總結

超參數調整時避免過擬合的最有效做法:用交叉驗證(Cross-Validation)在多組超參數組合間反覆評估,選驗證集上最穩定的那組設定,因為它用了資料的多個切分版本評估,結果比單次評估可靠得多。

情境

先感受問題:調了 100 組,哪組才是真的好?

假設「健康雲」的工程師林佳要訓練一個預測糖尿病風險的模型,她用隨機森林(Random Forest),有幾個超參數要設定:

樹的數量(n_estimators):試 50 / 100 / 200

樹的最大深度(max_depth):試 3 / 5 / 10 / None

最小分裂樣本數(min_samples_split):試 2 / 5 / 10

總共 3 × 4 × 3 = 36 組組合要試。

林佳的問題是:如果每次都只用同一批「驗證資料」來評估哪組好,可能會不小心選到「剛好在這批驗證資料上運氣最好」的設定,而不是「真正泛化最好」的設定。

這個現象叫做資料洩漏(data leakage)或「驗證集過擬合」:調太多組之後,你已經隱性地「學了」這批驗證資料的偏好。

舊方法

單次固定切分驗證,為什麼靠不住

林佳如果只用一個固定的 80/20 切分(80% 訓練、20% 驗證),會踩到五個坑:

  1. 評估結果依賴切分運氣:這 20% 的驗證資料碰巧包含了某種特殊樣本,評估結果就會偏高或偏低,不代表真實泛化能力。
  2. 資料量浪費:有 80% 訓練、20% 驗證,而訓練資料如果再切出「超參數調整用的驗證集」,實際能訓練的資料更少。
  3. 驗證集被重複使用產生偏差:試了 36 組超參數後,選出「在這個驗證集分數最高」的那組,但你已經用了驗證集的資訊來選擇,這組設定的真實表現通常比驗證集分數差。
  4. 小資料集更不可靠:驗證集只有幾百筆,幾個異常樣本就能讓評估分數大幅波動,很難判斷哪組超參數真的好。
  5. 測試集也被汙染:如果工程師忍不住多看幾次測試集結果,測試集也開始參與了「選哪組超參數」的決策,測試集就失去了它的客觀性。

新方法

Cross-Validation 怎麼讓評估更可靠

林佳改用 5-fold 交叉驗證(5-fold Cross-Validation)來評估每一組超參數:

  1. 把訓練資料切成 5 等份
  2. 第一輪:用第 2~5 份訓練,第 1 份驗證,記錄分數
  3. 第二輪:用第 1、3~5 份訓練,第 2 份驗證,記錄分數
  4. 第三輪到第五輪:同樣每次換一份出來驗證
  5. 5 輪的分數取平均,這才是這組超參數的「代表分數」

這樣的好處是:

  • 每筆資料都有機會被驗證過,不依賴「運氣」
  • 5 個分數取平均,異常值的影響被稀釋
  • 可以看 5 個分數的標準差,判斷這組超參數是否「穩定」

林佳從 36 組組合裡,選出「5-fold CV 平均分最高且標準差最小」的那組,這才是真正泛化穩定的設定。

這就是選項 A 講的:採用交叉驗證(Cross-Validation)於多組超參數組合間反覆評估,選擇在驗證資料上表現最穩定的設定。

錯選項

為什麼其他選項是錯的

B使用早期停止機制(Early Stopping)監控訓練誤差並在收斂前停止訓練,以防模型學習過度

字面在說什麼

早期停止(Early Stopping)是在訓練過程中監控驗證集的誤差,一旦驗證誤差開始上升(訓練誤差還在降),就停止訓練。

為什麼不對

Early Stopping 是用來防止「訓練輪數(epoch)」這個超參數過大,也就是防止模型在固定超參數下訓練太久的過擬合。但題目問的是「調整多組超參數組合時」的過擬合,也就是超參數搜尋本身的問題,Early Stopping 解決不了「選哪組超參數」的評估可靠性問題。這兩個是不同層次的問題,Early Stopping 只管訓練時間,不管哪組超參數真的泛化最好。

誰會選錯

知道 Early Stopping 能防過擬合,但沒注意題目說的是「超參數組合選擇」的問題。Early Stopping 確實是好技術,但它是在「訓練一個固定設定的模型」時才用,不是在「比較多組超參數」時用。

C對輸入特徵進行標準化以減少特徵值差異帶來的過擬合風險

字面在說什麼

把特徵標準化(讓每個特徵的平均值是 0、標準差是 1),可以避免某個特徵值特別大或特別小影響模型學習。

為什麼不對

標準化確實是好的資料預處理步驟,對梯度下降類的模型(神經網路、SVM、線性迴歸)確實有幫助。但它解決的是「特徵尺度不均勻」的問題,不是「超參數搜尋時評估不可靠」的問題。就算特徵都標準化了,如果用單次切分評估 36 組超參數,照樣會選到「在這批驗證資料上運氣好」的那組。

誰會選錯

把「資料預處理優化」和「超參數評估方法」混在一起的人。兩者都重要,但方向完全不同:標準化改善模型訓練品質,Cross-Validation 改善評估可靠性。

D提高模型複雜度並使用更多超參數搜尋範圍,以確保模型能充分學習資料特徵

字面在說什麼

把模型設定得更複雜、搜尋更多超參數組合,讓模型學到更多。

為什麼不對

這完全反方向。題目說想「避免因過度調整而導致過擬合」,選項 D 卻建議「提高複雜度、擴大搜尋範圍」,這會讓過擬合更嚴重,不是解法。複雜模型 + 大量超參數組合,搭配不可靠的評估方法,是過擬合的完美配方。

誰會選錯

把「模型更複雜」等同於「模型更強」的人。複雜模型在訓練集上確實表現更好,但泛化能力不一定更強。避免過擬合要的是「適當複雜度 + 可靠評估方法」,不是「越複雜越好」。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

答案、題目或解析有問題?回報這題

出處:iPAS 經濟部產業人才能力鑑定 ・ 114 年第二次 iPAS AI 應用規劃師 中級 科目一 第 14 題

看官方原文 PDF

原題 © 經濟部產業發展署,AITerms.tw 僅作教學解析使用,本站解析以 CC BY-NC-SA 4.0 授權。