同步csdn地址:数组
在机器学习和深度学习中,不少时候须要进行分类,这时会涉及到决策边界,好比sigmod激活函数; 可是当面对多分类的时候(好比经典的MNIST),咱们须要预测每个种类output的几率,好比softmax,这时候咱们须要对: 信息论和交叉熵有一个清晰的认识 那么咱们的文章将会对 信息论和交叉熵损失函数 进行一个讲解;机器学习
1.信息论函数
2.自信息学习
3.香农熵.net
4.交叉熵blog
其实信息论是一种用来描述 几率分布或者蒋几率分布之间的类似性 的一种思想 信息论的核心思想就是用来表示 意外程度 ,即小几率事件发生的信息量大事件
就是单个事件的信息量的量化值图片
咱们构建这样一个公式:get
每每在咱们的实际应用中咱们须要使用 香农熵 来对整个事件几率分布中的不肯定性总量进行量化
在这里咱们能够借鉴 随机变量X的数学指望的求值公式
这里的香农熵其实能够看作是: 信息量的数学指望的求值公式
下面咱们举例说明:
数组1: 111111
数组2: 111222
数组3: 112233
咱们来算数组1 ,2 和 3的香农熵
这样来看数组1的香农熵为0,则为必然事件,数组2居中,数组3最大,则其几率分布的几率最小
前面咱们有讲到 自信息 和 香农熵 那么如何用到机器学习和深度学习中呢,不着急慢慢往下看 咱们记得以前在多类别分类的模型中咱们有用到 进行每一个类别几率估计,而后取最大几率作为预测值 而当咱们反向更新
为激活函数的模型或者神经网络时候,是将交叉熵作为
函数进行梯度调节的
那么让咱们聚焦交叉熵 在这以前咱们须要看下散列,这是基于香农熵用来衡量对于同一个随机变量X的两个单独分布
和
的差别的途径:
可是在深度学习中咱们使用散列的变形,也就是交叉熵来做为某些场景的
函数,即:
根据散列咱们队上述公式进行变形:
通过变形就获得:
接着,咱们变化成易于理解的函数
到这里咱们看到了咱们熟悉的成本函数,回归分类器的成本函数
接着咱们探讨为何使用这个成本函数
主要是softmax等多分类器,在评估真实值()和预测值(
)距离时,更多的是在评估几率之间的距离,这样使用传统的均方根偏差作为
函数毫无心义
咱们来举个例子(以MNIST为例: 识别0~9的数字图片): 假设输出层是为激活函数:
那么咱们假设用两组标签相同的实例 和
来进行分析 首先咱们的
都是0,因此真实值得向量组合是(1,0,0,0,0,0,0,0,0,0)
接着算A和B的交叉熵(也就是函数) :
补充一点:交叉熵
不是对称的,因此
因此要注意P和Q的顺序,一版状况下,P表明真实值,Q表明预测值
最近很热,你们谨防中暑,可是学习不能断 ^^