什麼是 偏差方差權衡(Bias-Variance Tradeoff)?
偏差方差權衡是指在模型訓練中,降低偏差會增加方差,反之亦然。目標是找到一個平衡點,使模型在未見過的數據上表現良好。
核心概念
偏差(Bias)指的是模型預測值與真實值之間的平均差異。高偏差意味著模型對數據的假設過於強烈,導致模型無法捕捉到數據中的複雜關係,從而產生欠擬合(Underfitting)現象。例如,使用線性模型來擬合非線性數據,就會導致高偏差。
方差(Variance)指的是模型在不同訓練數據集上的預測結果的離散程度。高方差意味著模型對訓練數據的微小變化非常敏感,導致模型過於擬合訓練數據,而無法很好地泛化到未見過的數據,從而產生過擬合(Overfitting)現象。例如,使用高階多項式模型來擬合少量數據,就會導致高方差。
偏差方差權衡的目標是找到一個模型,既能捕捉到數據中的重要關係(低偏差),又能避免過度擬合訓練數據(低方差)。
運作原理
偏差和方差之間存在著權衡關係。通常情況下,降低偏差會導致方差增加,反之亦然。這是因為更複雜的模型通常具有更低的偏差,但更容易過擬合訓練數據,從而導致更高的方差;而更簡單的模型通常具有更高的偏差,但不容易過擬合訓練數據,從而導致更低的方差。
可以使用以下公式來描述偏差、方差和均方誤差(Mean Squared Error, MSE)之間的關係:
MSE = Bias² + Variance + Irreducible Error
其中,Irreducible Error指的是數據本身的噪音,是無法通過模型來消除的。
從公式可以看出,降低偏差和方差都可以降低MSE,但由於偏差和方差之間存在權衡關係,因此需要找到一個平衡點,使MSE最小。
實際應用
在實際應用中,可以通過以下方法來平衡偏差和方差:
- 模型選擇: 選擇合適的模型複雜度。例如,對於線性數據,可以使用線性模型;對於非線性數據,可以使用非線性模型,如決策樹、支持向量機或神經網路。模型的複雜度可以通過調整模型的參數來控制。
- 正則化: 通過在損失函數中添加正則化項來懲罰模型的複雜度,從而降低方差。常見的正則化方法包括L1正則化和L2正則化。
- 交叉驗證: 使用交叉驗證來評估模型的泛化能力,並選擇具有最佳泛化能力的模型。常見的交叉驗證方法包括k折交叉驗證。
- 集成學習: 通過將多個模型組合起來,可以降低偏差和方差。常見的集成學習方法包括Bagging和Boosting。
- 增加數據量: 增加訓練數據量可以降低方差,但對降低偏差沒有幫助。
- 特徵工程: 選擇合適的特徵可以降低偏差和方差。
常見誤區
- 認為低偏差一定好: 低偏差意味著模型能夠很好地擬合訓練數據,但如果模型過於複雜,可能會導致過擬合,從而降低泛化能力。因此,需要綜合考慮偏差和方差。
- 認為低方差一定好: 低方差意味著模型在不同訓練數據集上的預測結果比較穩定,但如果模型過於簡單,可能會導致欠擬合,從而降低預測準確度。因此,需要綜合考慮偏差和方差。
- 忽略不可約誤差: 不可約誤差是數據本身的噪音,是無法通過模型來消除的。因此,在優化模型時,需要注意不要過度追求降低MSE,而忽略了不可約誤差的存在。
相關術語
常見問題
延伸學習
想看 偏差方差權衡 的完整影片教學?前往 美第奇 AI 學院