交叉熵損失

🌡️ Binary Cross-Entropy Loss Calculator

Compute binary cross-entropy loss from true labels and predicted probabilities to monitor training and spot badly calibrated outputs.

📐 計算公式 / 原理
單樣本 L = −[y·ln p + (1 − y)·ln(1 − p)];批次 L = 單樣本 × n
二分類交叉熵對 confident 且錯誤的預測給出極大懲罰(p→0 而 y=1 時趨於無窮),梯度形式簡潔 (p − y),配合 sigmoid 反向傳播非常乾淨。實現時要注意對 p 做 eps 截斷防止 log(0)。

📐 計算公式與說明

L = −(y·log p + (1−y)·log(1−p))

p 應裁剪至 (ε,1−ε) 避免 log(0)。

📚 深度解析:交叉熵損失

💡 常見使用場景

單樣本損失
真實 y=1,預測 p=0.9 → CE=−log(0.9)=0.105;若 p=0.1 → CE=−log(0.1)=2.303。預測越錯損失越大,驅動模型修正。

❓ 常見問題(FAQ)

為什麼用交叉熵而不是均方誤差?
CE 對機率錯誤更敏感且在 sigmoid/softmax 下梯度更優,MSE 用於機率會產生飽和、收斂慢;CE 是分類自然對應的對數似然損失。
p 為 0 或 1 會怎樣?
log(0) 得 −∞ 導致數值爆炸。實踐中對 p 做裁剪(clip 到 ε~1−ε)或用帶 logits 的穩定實現(直接吃 raw score 算 softmax)避免。