中文名稱:損失函數 英文名稱:Loss Function
📌 定義(Definition)
損失函數是用來衡量 AI 模型預測結果與真實結果的差距,有點像「錯誤指標」。
- 它告訴模型「你離目標還有多遠」,數值越小代表模型預測越準確。
- 在訓練過程中,AI 會嘗通過調整參數來最小化損失函數,從而提升性能。
- 例如:在圖像分類中,損失函數會計算模型預測的類別概率與真實標籤的差異。
⭐原理與技術
在模型訓練過程中,系統會不斷計算損失,並透過優化器(Optimizer)使用梯度下降(Gradient Descent)等方法來最小化損失,藉此降低模型的誤差,以達到最佳化的目的。
常見的損失函數包括 :
平均絕對誤差(MAE, Mean Absolute Error)
- L1 損失(L1 Loss)
- 誤差絕對值的平均
- 對離群值較不敏感,解釋直觀,適合資料中有異常值、希望穩定預測
- 其中: 真實值, 預測值, 樣本數。
均方誤差 **(Mean Squared Error, MSE)(平均平方誤差) ^c215f8
- L2 損失(L2 Loss)
- 預測誤差的平方平均
- 用於迴歸任務,計算預測值與真實值之間平方誤差的平均值。
- 大錯誤會被放大懲罰,對離群值敏感。
- 其中: 真實值, 預測值, 樣本數。
均方根誤差 (Root Mean Squared Error, RMSE)
- √MSE
- 與MSE相似,但MSE將數字平方,所以產生的量不再代表y的數字意義。
- 將MSE開根號,讓數字接近y的數字水準。
- 例如,用迴歸模型預測冰淇淋銷售數,模型MSE是6,RMSE是2.45,亦及誤差2.45支冰淇淋。
交叉熵損失(Cross-Entropy Loss) ^412c55
- 用於分類任務,衡量預測概率分佈(預測機率)與真實分佈之間的差異。
- 預測越有信心但越錯,懲罰越大
二元交叉熵 (Binary Cross-Entropy, BCE)
- 用途:處理只有兩個類別的分類任務(如垃圾郵件偵測、疾病診斷:是/否)。
- 激活函數:輸出層通常使用 Sigmoid 函數,將輸出限制在 0 到 1 之間。
- 標籤格式:0 或 1 的單一數值。
- 公式:
- 其中: :真實標籤(0 或 1), :模型預測為 1 的機率, :樣本數
分類交叉熵 (Categorical Cross-Entropy, CCE)
- 用途:處理三個或更多類別的多元分類任務(如手寫數字識別 0-9)。
- 激活函數:輸出層通常使用 Softmax 函數,讓所有類別的輸出機率總和為 1。
- 標籤格式:通常為 One-Hot 獨熱編碼(例如:[0, 0])
- 其中:
- :樣本數
- :類別數
- :真實標籤(one-hot)
- :模型預測機率
合頁損失(Hinge Loss)
- 主要用在分類問題,尤其是 **支持向量機(SVM)
- 它的目的不是只追求「分類正確」,而是要求模型的分類結果要有足夠的間隔(margin)。
- 公式
- 其中:
- :真實標籤(通常為 +1 或 -1)
- :模型輸出的分類結果
- :損失值
- 分類正確且距離夠遠
- Loss = 0
- 表示:預測正確且距離分類邊界夠遠
- 分類正確但距離太近
- Loss > 0
- 表示:雖然預測正確,但距離分類邊界太近,模型仍會被懲罰。
- 分類錯誤
- Loss 很大
- 表示:預測錯誤,需要大幅調整模型。
🔗 應用領域
3 題模擬練習題
題目一:損失函數與任務類型判斷(基本陷阱)
某模型的預測目標為「產品的不良率百分比(連續數值)」, 請問下列哪一個損失函數最適合用於模型訓練?
A. 交叉熵損失(Cross-Entropy Loss)
B. 平均平方誤差(MSE)
C. 準確率(Accuracy)
D. 召回率(Recall)
正確答案:B
詳解:
不良率是連續數值,屬於回歸問題, 常用的損失函數是 MSE 或 MAE。
- A 是分類用
- C、D 是評估指標,不是損失函數
這題的陷阱在於把「評估指標」誤當成「損失函數」。
題目二:損失函數 vs 評估指標(高頻陷阱)
下列關於「損失函數」與「評估指標」的敘述,何者正確?
A. 準確率可以直接作為模型訓練的損失函數
B. 損失函數只在模型評估時使用
C. 損失函數用於模型訓練,評估指標用於結果衡量
D. 損失函數與評估指標本質上完全相同
正確答案:C
詳解:
- 損失函數:
- 用在訓練過程
- 指引模型如何更新參數
- 評估指標:
- 用在訓練後或驗證階段
- 提供人類理解的績效衡量
準確率、召回率通常不可微分,因此不適合直接當損失函數。
題目三:MSE 與 MAE 的選擇判斷(實務陷阱)
某資料集中存在少量但非常極端的異常值(Outliers), 模型仍希望預測結果穩定,不被少數極端值嚴重影響。
在此情境下,哪一個損失函數較適合?
A. MSE(平均平方誤差)
B. MAE(平均絕對誤差)
C. 交叉熵損失
D. 準確率
正確答案:B
詳解:
MSE 會將誤差平方,使得大誤差被放大懲罰,對異常值非常敏感。
MAE 對誤差取絕對值,對極端值較不敏感,因此更穩定。
這一題常考你是否能將「資料特性」對應到「損失函數選擇」。