前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一文理解机器学习中的各种熵

一文理解机器学习中的各种熵

作者头像
echobingo
发布2018-08-09 16:46:25
6620
发布2018-08-09 16:46:25
举报
文章被收录于专栏:Bingo的深度学习杂货店
本文的目录组织如下:
1. 自信息:对事件不确定性的度量。

自信息公式 事件的不确定性越大(概率 pi 越小),自信息 I(pi) 越大。 比如买彩票,中彩票的自信息大,而不中彩票的自信息小。

2. 熵(香农熵):事件所有可能结果的自信息期望值。

香农熵公式 当事件所有可能的结果相同时,自信息等于香农熵。 比如掷骰子,p(xi) = 1/6I(X) = -log(p(xi)) = -log(1/6) = log6 = H(x)

3. 联合熵:(X,Y)在一起时的不确定性度量。

联合熵公式 联合熵性质:

  • 大于每个独立的熵:
  • 小于独立熵的和:
4. 条件熵:知道X的条件下,Y的信息量。

条件熵公式 从公式的推断过程,可以得到条件熵的一个性质:

5. 互信息(信息增益):知道X,给Y的信息量带来多少损失。

互信息(信息增益) 可以得到互信息的一个性质:

6. 熵、联合熵、条件熵、互信息的关系:

熵、联合熵、条件熵、互信息的关系图 举个例子:假设H(X)用一块糖来表示,Y代表一杯水,H(X|Y)也就是将这杯水倒在糖上,H(X)还剩多少,那么溶于水的那部分糖就是Y给H(X)带来的损失,即就是互信息。 这样,我们就可以理解决策树为什么要选取信息增益(互信息)最大的特征。因为信息增益是指由于特征A而使得数据集D不确定性减少的程度。信息增益越大,不确定性减少的程度越大,那么该特征的选取就有利于分类朝着确定性方向发展。

7. 交叉熵:衡量两个概率分布p和q对事件X的相似性。

交叉熵公式 在信息论中,这个量指的是:用「错误」的编码方式 q(而不是 p)去编码服从「正确」 分布q的事件,所需要的 bit 数。 实际上,有一个性质:H(p, q) >= H(p), 当q为真实分布p时取等号。这是因为用错误的分布q得到的平均编码长度H(p,q)大于根据真实分布p得到的平均编码长度H(p)(直观理解)。

  • 交叉熵衡量两个概率分布p和q对事件X的相似性,按理来说,两分布越相似,交换熵越大。但这里的“相似性”是指如果两分布相同,H(p, q) = H(p),取最小值;而两分布不相似,H(p, q) > H(p),取值比 H(p) 大。所以,是反过来的,即两分布越相似,交换熵越小。
  • 由于交叉熵衡量两个概率分布p和q的相似性,因此常常用于神经网络的损失函数。
  • 交叉熵作为损失函数还有一个好处是使用sigmoid函数在梯度下降时能避免均方误差损失函数(MSE)学习速率降低的问题,因为使用MSE代价函数时在sigmoid输出饱和时学习速率(梯度)与sigmoid导数正相关,这时sigmoid导数趋于0,即很小,而使用交叉熵代价函数时学习速率与误差正相关,误差越大,学习速率越大,但与sigmoid导数无关,只被输出误差所控制。
8. 相对熵(KL散度):衡量两个概率分布p和q对事件X的不相似性。

相对熵(KL散度) 在交叉熵的例子中,我们把由q得到的平均编码长度比由p得到的平均编码长度多出来的bit数称为相对熵(KL散度),因此可以将熵、交叉熵、相对熵联系在一起:

交叉熵 = 熵 + 相对熵 相对熵(KL散度)性质:

  • 由于KL散度衡量两个概率分布p和q对事件X的不相似性,因此两分布越不相似,KL散度值越大。
  • 如果两分布相同,则KL散度值为0。KL散度非负且非对称。
  • KL散度可应用于生成式对抗网络GAN(衡量两个分布)。

注:熵、交叉熵和相对熵都是针对同一事件的,其中交叉熵和相对熵涉及两个概率分布。


9. 熵在机器学习中的应用

贝叶斯学习: 首先,上面描述的高斯分布的例子是很重要的,因为在机器学习应用中,高斯分布是一个很常见的建模选择。机器学习的目标就是减少熵。我们希望做一些预测,而且我们必须对自己的预测比较确定。而熵正好可以用来衡量这个置信度。在贝叶斯学习中,经常假设一个先验分布具有较宽广的概率密度函数,这反映了随机变量在观测之前的不确定性。当数据来了以后,熵会减小,并且让后验分布在最可能的参数值周围形成峰值。

决策树学习: 在决策树的学习算法中,一般包含了特征选择、决策树的生成与决策树的剪枝过程。决策树的特征选择在于选取对训练数据有分类能力的特征,而通常特征选择的准则是信息增益或信息增益比。 在李航的统计学习方法中,一般熵 H(Y) 与条件熵 H(Y|X) 之差可以称为互信息(Mutual Information),决策树学习中的信息增益等价于训练数据中类与特征的互信息。若给定训练数据集 D 和特征 A,经验熵 H(D) 表示对数据集 D 进行分类的不确定性。而经验条件熵 H(D|A) 表示在特征 A 给定的条件下对数据集 D 进行分类的不确定性。那么它们的差,即信息增益,就表示由于特征 A 而使得对数据集 D 的分类的不确定性减少的程度。显然,对于数据集 D 而言,信息增益依赖于特征,不同的特征往往具有不同的信息增益。信息增益大的特征具有更强的分类能力。 根据信息增益准则的特征选择方法是:对训练数据集(或子集)D,计算其每个特征的信息增益,并比较它们的大小,选择信息增益最大的特征。 因此在决策树学习中,熵被用来构建树。通过将数据集 S 根据可能的「最佳」属性分成一些子数据集,从根节点开始构建决策树,「最佳」属性也就是能够将得到的子数据集的熵最小化的属性。这个过程被递归地重复,直到没有更多的属性来分割。此过程被称为 ID3 算法,由此可见 ID3 算法的核心是在决策树各个结点上应用信息增益准则选择特征,递归地构建决策树。

分类: 不管是在二分类问题还是多分类问题中,交叉熵是 logistic 回归和神经网络中的标准损失函数。通常,p 是真实分布,q 是模型描述的分布。让我们来看一个二分类 logistic 回归中的一个例子。两个类别的标签分别是 0 和 1,logistic 模型给每一个输入赋予以下概率:q_(y=1) =y_hat,q_(y=0) = 1- y_hat。这个可以简写为 q ∈ {y_hat, 1 − y_hat}。尽管真实标签是精确的 0 和 1,但是这里还是写成 p ∈ {y, 1 − y},因此不要被这个表达方式搞混。在这个标记下,每个样本的真实值和估计分布之间的交叉熵如下:

当它被作为一个损失函数使用的时候,我们用的是 N 个样本的交叉熵均值:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.08.04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本文的目录组织如下:
  • 1. 自信息:对事件不确定性的度量。
  • 2. 熵(香农熵):事件所有可能结果的自信息期望值。
  • 3. 联合熵:(X,Y)在一起时的不确定性度量。
  • 4. 条件熵:知道X的条件下,Y的信息量。
  • 5. 互信息(信息增益):知道X,给Y的信息量带来多少损失。
  • 6. 熵、联合熵、条件熵、互信息的关系:
  • 7. 交叉熵:衡量两个概率分布p和q对事件X的相似性。
  • 8. 相对熵(KL散度):衡量两个概率分布p和q对事件X的不相似性。
  • 9. 熵在机器学习中的应用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档