如何直观理解交叉熵及其优势?

以下对数符号有误,见原文链接:https://blog.csdn.net/cherrylvlei/article/details/53038603

导语

在统计学中,损失函数是一种衡量系统错误程度的函数。而在有监督学习模型里,损失函数则是衡量模型对样本预测值与样本真实标签之间差异程度的方法。最近用到了交叉熵,觉得有必要弄明白交叉熵到底是什么原理及优势,因此查了查资料,并结合个人理解在这里做一下讲解,如有疏漏谬误之处还请各位看官多多指教。在这之前,先讲讲交叉熵是什么。

交叉熵,我们不妨先拆开来看:交叉与熵。字面意思可以这么理解:两种以熵来计量的东西之间的关系。熵在信息论里面衡量的是数据的混乱程度,本质是香农信息量(plog21p,0<p≤1)的期望。信息量是可以衡量的,不然我们也不会觉得有的话虽然多,却没什么信息量,而有的话则能一语中的。那么,如何直观理解这个交叉熵呢?

我们的世界杯

如果直接用纯数学语言来解释,一定晦涩难懂,因此我想到了一个比较有趣的实例给大家理解一下。

熟悉足球的童鞋们应该都记得,在2002年,中国足球队首次也是唯一一次杀入了世界杯,全国球迷无不为之热血沸腾。但当时中国队所在的C组号称死亡之组,组内其它三支球队分别是巴西(最后的冠军)、土耳其(最后的季军)和哥斯达黎加。现在命运之神分配给这四支球队夺得小组第一的概率分别为巴西50%,土耳其25%, 哥斯达黎加25%, 中国0%。我们假定这是真实概率,那么这一组概率的信息量是多大呢?按照香农信息量的计算公式,我们可以得出: 

50%×log2150%+25%×log2125%+25%×log2125%

 

=0.5×1+0.25×2+0.25×2=1.5


因此,这一组概率的信息量就是1.5。香农认为,信息量的度量等于不确定性的多少,可以用 “比特”(bit)这个概念来度量。比如土耳其夺得小组第一的概率是14,我们就需要用一个2位的bit来表示,又因为其只占了4份中的1份,因此它的信息量就是0.25×2=0.5。然后我们在赛前预测各个队夺得小组第一的概率,恰好也给出“巴西50%,土耳其25%, 哥斯达黎加25%, 中国0%”这样的预测。根据前文可知,这组预测的信息量当然也是1.5。

 

接着交叉熵可以来了,这组预测结果的交叉熵为1.5−1.5=0,表示预测结果与真实结果之间的差异程度为0,即我们的预测百分之百正确。这时02国家队的球迷不干了:凭什么不给咱国家队一丝期待?那好,不妨修改一下我们的赛前预测:巴西50%,土耳其25%, 哥斯达黎加12.5%, 中国12.5%。国家队有八分之一的概率拿小组第一,这期待够带劲吧。再算一下这组预测结果的熵: 

50%×log2150%+25%×log2125%+12.5%×log2112.5%+12.5%×log2112.5%

 

=0.5×1+0.25×2+0.125×3+0.125×3=1.75


交叉熵为1.75=1.5=0.25,大于0,表示预测结果与真实结果之间存在差异,这里的差异便是中国队和哥斯达黎加队的预测结果。不难看出,交叉熵的值越大,这种差异程度也就越大。

 

在二分类模型中,由于目标的可能性有两种,因此需要分别计算预测为正例和负例概率下的交叉熵,公式为: 

[ylog21y′−ylog211]+[(1−y)log21(1−y′)−(1−y)log21(1−0)]

 

=−[ylog2y′+(1−y)log2(1−y′)]


这就是大名鼎鼎的交叉熵公式,其中−ylog2y′是正例的交叉熵,−(1−y)log2(1−y′)]则是负例的交叉熵,它们之和便构成了分类模型的损失函数。

 

接下来讲讲交叉熵的优势。在回归模型中有时候会使用均方差作为损失函数,但是当激活函数为sigmoid时,由于其在上边界和下边界的斜率下降十分之快。事实上,一般sigmoid函数的斜率最大值也只有0.25。因此,当训练结果接近真实值时会因为梯度算子极小,使得模型的收敛速度变得非常慢。而由于交叉熵损失函数为对数函数,在接近上边界的时候,其仍然可以保持在高梯度状态,因此模型的收敛速度不会受到影响。目前在分类模型中我只发现了这一种优势,如果各位有其它观点还请不吝赐教,在此谢过。

结语

至此,我们便较为直观地理解交叉熵以及它的优势了。在此感谢各位看官的耐心阅读。后续内容将会不定期奉上,欢迎大家关注小斗公众号 对半独白!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第⼆二章 机器器学习基础 2.1 各种常⻅见算法图示 2.2 监督学习、⾮非监督学习、半监督学习、弱监督学习? 2.3 监督学习有哪些步骤 2.4 多实例例学习? 2.5 分类⽹网络和回归的区别? 2.6 什什么是神经⽹网络? 2.7 理理解局部最优与全局最优 2.8 分类算法 2.8.1 常⽤用分类算法的优缺点? 2.8.2 正确率能很好的评估分类算法吗? 2.8.3 分类算法的评估⽅方法? 2.8.4 什什么样的分类器器是最好的? 2.9 逻辑回归 2.9.1 理理解逻辑回归 2.9.2 逻辑回归与朴素⻉贝叶斯有什什么区别? 2.9.3线性回归与逻辑回归的区别?(贡献者:⻩黄钦建-华南理理⼯工⼤大学) 2.10 代价函数 2.10.1 为什什么需要代价函数? 2.10.2 代价函数作⽤用原理理 2.10.3 为什什么代价函数要⾮非负? 2.10.4 常⻅见代价函数? 2.10.5 为什什么⽤用交叉代替⼆二次代价函数 2.11 损失函数 2.11.1 什什么是损失函数? 2.11.2 常⻅见的损失函数 2.11.3 逻辑回归为什什么使⽤用对数损失函数? 2.11.4 对数损失函数是如何度量量损失的? 2.12 梯度下降 2.12.1 机器器学习中为什什么需要梯度下降? 2.12.2 梯度下降法缺点? 2.12.3 梯度下降法直观理理解? 2.12.4 梯度下降法算法描述? 2.12.5 如何对梯度下降法进⾏行行调优? 2.12.7 随机梯度和批量量梯度区别? 2.12.8 各种梯度下降法性能⽐比较 2.13 计算图的导数计算图解? 2.14 线性判别分析(LDA) 2.14.1 线性判别分析(LDA)思想总结 2.14.2 图解LDA核⼼心思想 2.14.3 ⼆二类LDA算法原理理? 2.14.4 LDA算法流程总结? 2.14.5 LDA和PCA区别? 2.14.6 LDA优缺点? 2.15 主成分分析(PCA) 2.15.1 主成分分析(PCA)思想总结 2.15.2 图解PCA核⼼心思想 2.15.3 PCA算法推理理 2.15.4 PCA算法流程总结 2.15.5 PCA算法主要优缺点 2.15.6 降维的必要性及⽬目的 2.15.7 KPCA与PCA的区别? 2.16 模型评估 2.16.1 模型评估常⽤用⽅方法? 2.16.2 机器器学习中的Bias,Error和Variance有什什么区别和联系? 2.16.3 经验误差与泛化误差 2.16.4 图解⽋欠拟合、过拟合 2.16.5 如何解决过拟合与⽋欠拟合? 2.16.6 交叉验证的主要作⽤用? 2.16.7 k折交叉验证? 2.16.8 混淆矩阵 2.16.9 错误率及精度 2.16.10 查准率与查全率 2.16.11 ROC与AUC 2.16.12 如何画ROC曲线? 2.16.13 如何计算TPR,FPR? 2.16.14 如何计算Auc? 2.16.15 为什什么使⽤用Roc和Auc评价分类器器? 2.16.17 直观理理解AUC 2.16.18 代价敏敏感错误率与代价曲线 2.16.19 模型有哪些⽐比较检验⽅方法 2.16.20 偏差与⽅方差 2.16.21为什什么使⽤用标准差? 2.16.22点估计思想 2.16.23 点估计优良性原则? 2.16.24 点估计、区间估计、中⼼心极限定理理之间的联系? 2.16.25 类别不不平衡产⽣生原因? 2.16.26 常⻅见的类别不不平衡问题解决⽅方法 2.17 决策树 2.17.1 决策树的基本原理理 2.17.2 决策树的三要素? 2.17.3 决策树学习基本算法 2.17.4 决策树算法优缺点 2.17.5的概念以及理理解 2.17.6 信息增益的理理解 2.17.7 剪枝处理理的作⽤用及策略略? 2.18 ⽀支持向量量机 2.18.1 什什么是⽀支持向量量机 2.18.2 ⽀支持向量量机解决的问题? 2.18.3 核函数作⽤用? 2.18.4 对偶问题 2.18.5 理理解⽀支持向量量回归 2.18.6 理理解SVM(核函数) 2.18.7 常⻅见的核函数有哪些? 2.18.8 软间隔与正则化 2.18.9 SVM主要特点及缺点? 2.19 ⻉贝叶斯 2.19.1 图解极⼤大似然估计 2.19.2 朴素⻉贝叶斯分类器器和⼀一般的⻉贝叶斯分类器器有什什么区别? 2.19.3 朴素与半朴素⻉贝叶斯分类器器 2.19.4 ⻉贝叶斯⽹网三种典型结构 2.19.5 什什么是⻉贝叶斯错误率 2.19.6 什什么是⻉贝叶斯最优错误率 2.20 EM算法解决问题及实现流程 2.21 降维和聚类 2.21.1 为什什么会产⽣生维数灾难? 2.21.2 怎样避免维数灾难 2.21.3 聚类和降维有什什么区别与联系? 2.21.4 四种聚类⽅方法之⽐比较 2.21.5 SOM聚类算法 2.21.6 FCM聚类算法 2.22 GBDT和随机森林林的区别 2.23 ⼤大数据与深度学习之间的关系

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值