机器学习入门文档深度页
交叉熵与概率分类
交叉熵惩罚模型给真实类别分配过低概率,尤其惩罚自信但错误的预测。
学习前需要掌握
对数内容待补充分类概率与决策阈值
背景与问题
准确率相同的模型可能概率质量不同;交叉熵利用了完整概率而不只看最终类别。
概念定义
多分类交叉熵对每条样本取真实类别预测概率的负对数并平均。
直观理解
答对但犹豫会有少量损失,自信答错会受到很大惩罚。
核心原理
概率必须有效且类别顺序一致;低交叉熵不自动证明概率完全校准。
数学表达
核心表达
概率必须有效且类别顺序一致;低交叉熵不自动证明概率完全校准。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1获得类别概率
- 2定位真实类别概率
- 3取负对数
- 4批次平均
代码对应位置
示例 1交叉熵与概率分类:最小可验证示例:把正文原理映射为可检查的代码行为。
计算与实现步骤
- 1
获得类别概率
- 2
定位真实类别概率
- 3
取负对数
- 4
批次平均
- 5
与准确率和校准共同评价
代码实现
示例 1
交叉熵与概率分类:最小可验证示例
交叉熵与概率分类:最小可验证示例
Python
example_01.py用途:把正文原理映射为可检查的代码行为。
from sklearn.metrics import log_loss
y_true = [0, 2]
y_prob = [[0.9,0.08,0.02],[0.1,0.2,0.7]]
print(log_loss(y_true, y_prob, labels=[0,1,2]))代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
把正文原理映射为可检查的代码行为。
Step 1 · 1–4 行
导入当前步骤需要的数值计算、预处理、模型或评价工具。依赖集中写在代码开头,便于复现。
from sklearn.metrics import log_loss
y_true = [0, 2]
y_prob = [[0.9,0.08,0.02],[0.1,0.2,0.7]]
print(log_loss(y_true, y_prob, labels=[0,1,2]))代码与数学原理
平方误差代码对应均方损失。
预期输出或运行结果
输出一个较小的正交叉熵数值。
常见错误 · 2 条
- 把 logits 当概率传入 sklearn log_loss
- 类别列顺序错位
实际应用
- 逻辑回归训练
- 概率模型评价
常见错误
把 logits 当概率传入 sklearn log_loss
类别列顺序错位
文档来源
01|数学与数据基础原始文档
学习资料/learning_tech/01_math_data_foundations.md- §7.2 交叉熵
推荐学习资料
暂未收录相关资料
参考库不会生成虚假资源或无效外部链接。