Overfitting (過擬合)

當模型在訓練資料上表現很好,但在驗證集、測試集或未見資料上表現變差時,
就發生了 Overfitting(過擬合)

本質上,模型學到的不只是規律,還把訓練資料中的噪音、偶然性與細節也一起記住了。
因此它在已看過的資料上很強,但一換資料就失去 Generalization


核心概念

過擬合可以簡化成:

模型太會背答案,但不是真的學會規則。

常見直覺:

這通常代表模型容量太大,足以把訓練樣本記下來,而不是抽出可泛化的模式。


如何辨認

指標 過擬合時常見現象
Train Loss 持續下降,甚至非常低
Validation / Test Loss 停滯、上升,或波動變大
Accuracy 訓練集高、測試集低
曲線型態 Train ↓,但 Validation/Test ↑ 或不再改善
Example

一個模型在訓練集 Accuracy 99%,但測試集只有 78%
這通常不是「模型很強」,而是模型對訓練資料記得太細。


常見原因

  1. 模型複雜度過高

    • 參數太多、層數太深、自由度太高
  2. 資料量不足

    • 訓練資料太少,無法支撐複雜模型
  3. 資料品質不佳或噪音過多

    • 標註錯誤、異常值、偏差資料都可能被模型硬記下來
  4. 特徵太多或不必要特徵過多

    • 模型有更多機會去擬合無關訊號
  5. 訓練過久

    • 模型在後期逐漸從學規律變成記細節
  6. 正則化不足

    • 缺乏限制模型複雜度的機制

常見解法

(A) 資料層面

(B) 模型層面

(C) 訓練層面


Cross Validation 的角色

Cross Validation (交叉驗證) 比較像是:

不是直接治療過擬合,但能幫助更早發現哪些模型 / 超參數組合更容易過擬合。


與 Underfitting 的差異

項目 Overfitting Underfitting
模型狀態 太複雜 太簡單
訓練集表現
測試集表現
本質 記住細節,無法泛化 連基本規律都學不到
常見解法 簡化模型、加正則化、增加資料 增加模型能力、增加特徵、訓練更久

可對照 Underfitting (欠擬合) 一起看。


小結

Summary

Overfitting(過擬合)的本質,是模型在訓練資料上學得太好,
甚至把噪音與偶然細節也一起記住,導致泛化能力下降。

常見處理方向:

  • 增加資料或做資料增強
  • 降低模型複雜度
  • 使用 Regularization (正則化)
  • 使用 Early Stopping、Ensemble 等方法控制 variance
Powered by Forestry.md