交叉熵损失

🌡️ 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)避免。