評估與指標

對數損失(log loss)

/ LOG loss /

準確率只問模型答對沒答對。對數損失問的是更深的東西:它當時有多自信,而那份自信又配不配得上?一個說「90%會下雨」、結果真下了的模型,理應比一個含糊地說「55%」的模型得分更高。對數損失獎勵「既正確又恰如其分地確信」,並且對「自信地犯錯」懲罰得極其殘酷。

機制是這樣的。對每個樣本,對數損失會去看「模型分配給那個實際發生了的答案的機率」,然後加上一個懲罰,其大小等於該機率的負對數。給真實結果分配0.99,懲罰就微乎其微;給它分配0.01,懲罰就大得嚇人。這些懲罰的平均,就是對數損失——越低越好,一個完美且完美自信的模型會得0分。

只要你在乎的是機率而不只是標籤——天氣、醫療風險、廣告點擊——對數損失就是自然而然的評分準則。它最鋒利的特性,也是它最鋒利的危險:因為「自信地錯了」的懲罰會衝向無窮大,單單一個傲慢而大錯特錯的預測(比如給一件沒發生的事打0.999),就能毀掉你的整個分數。而這恰恰是它推動模型走向誠實、校準良好的機率,而非魯莽過度自信的原因。

對一個確實下了雨的日子,有兩個預報。模型A說0.9 → 懲罰為−log(0.9)≈0.11。模型B說0.1 → 懲罰為−log(0.1)≈2.30。在0.5的切分下兩者可能都算「對」或都算「錯」,但對數損失把「謹慎而對」和「自信而錯」拉開了二十倍的差距。

對數損失評的是「自信程度」,而不只是最後那個是/否的判定。

對數損失只有在模型的輸出是貨真價實的機率(而非隨意的分數)時才有意義。許多模型輸出的數字看著像機率,其實並未校準好;在相信一個對數損失之前先檢查校準,並且永遠不要分配正好的0或1,因為那裡一旦自信地錯了,損失就會衝向無窮大。

又稱
对数损失對數損失cross-entropy loss交叉熵损失logistic lossnegative log-likelihood