信息量,熵,交叉熵,相对熵与代价函数

本文将介绍信息量,熵,交叉熵,相对熵的定义,以及它们与机器学习算法中代价函数的定义的联系。

1. 信息量

信息的量化计算:

解释如下:

信息量的大小应该可以衡量事件发生的“惊讶程度”或不确定性:

如果有⼈告诉我们⼀个相当不可能的事件发⽣了,我们收到的信息要多于我们被告知某个很可能发⽣的事件发⽣时收到的信息。如果我们知道某件事情⼀定会发⽣,那么我们就不会接收到信息。 也就是说,信息量应该连续依赖于事件发生的概率分布p(x) 。因此我们想要寻找⼀个基于概率p(x)计算信息量的函数h(x),它应该具有如下性质:

  1. h(x) >= 0,因为信息量表示得到多少信息,不应该为负数。
  2. h(x, y) = h(x) + h(y),也就是说,对于两个不相关事件x和y,我们观察到两个事件x, y同时发⽣时获得的信息应该等于观察到事件各⾃发⽣时获得的信息之和;
  3. h(x)是关于p(x)的单调递减函数,也就是说,事件x越容易发生(概率p(x)越大),信息量h(x)越小。

又因为如果两个不相关事件是统计独⽴的,则有p(x, y) = p(x)p(y)。根据不相关事件概率可乘、信息量可加,很容易想到对数函数,看出h(x)⼀定与p(x)的对数有关。因此,有

满足上述性质。

2. 熵(信息熵)

对于一个随机变量X而言,它的所有可能取值的信息量的期望就称为熵。熵的本质的另一种解释:最短平均编码长度(对于离散变量

离散变量:

连续变量:

3. 交叉熵

现有关于样本集的2个概率分布p和q,其中p为真实分布,q非真实分布。按照真实分布p来衡量识别一个样本的熵,即基于分布p给样本进行编码的最短平均编码长度为:

如果使用非真实分布q来给样本进行编码,则是基于分布q的信息量的期望(最短平均编码长度),由于用q来编码的样本来自分布p,所以期望与真实分布一致。所以基于分布q的最短平均编码长度为:

 上式CEH(p, q)即为交叉熵的定义。

4. 相对熵

将由q得到的平均编码长度比由p得到的平均编码长度多出的bit数,即使用非真实分布q计算出的样本的熵(交叉熵),与使用真实分布p计算出的样本的熵的差值,称为相对熵,又称KL散度

KL(p, q) = CEH(p, q) - H(p)=

相对熵(KL散度)用于衡量两个概率分布p和q的差异。注意,KL(p, q)意味着将分布p作为真实分布,q作为非真实分布,因此KL(p, q) != KL(q, p)。

5. 机器学习中的代价函数与交叉熵

Ref:

《模式识别与机器学习》1.6节

http://blog.csdn.net/rtygbwwwerr/article/details/50778098

https://www.zhihu.com/question/41252833

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏yl 成长笔记

kera 学习-线性回归

园子里头看到了一些最基础的 keras 入门指导, 用一层网络,可以训练一个简单的线性回归模型。

844
来自专栏机器学习算法全栈工程师

Scikit-learn之决策树

作者:章华燕 编辑:黄俊嘉 决策树在学习应用中非常有用,接下来给大家分享一下自己有关于决策树的一些想法! 决策树概述 决策树是一个非参数的监督式学习方法,主要用...

2766
来自专栏人工智能

单样本学习:使用孪生神经网络进行人脸识别

选自towardsdatascience 作者:Firdaouss Doukkali 机器之心编译 参与:Nurhachu Null、刘晓坤 这篇文章简要介绍单...

3358
来自专栏锦小年的博客

3. R语言随机数生成

1. 均匀分布 函数: runif(n, min=0, max=1),n 表示生成的随机数数量,min 表示均匀分布的下限,max 表示均匀分布的上限,若省略参...

24210
来自专栏专知

【干货】深入理解自编码器(附代码实现)

【导读】自编码器可以认为是一种数据压缩算法,或特征提取算法。本文作者Nathan Hubens 介绍了autoencoders的基本体系结构。首先介绍了编码器和...

6207
来自专栏人工智能

使用学习率规划器自适应调整神经网络训练过程中的学习率

到目前为止,训练神经网络和大型的深度学习网络是一个困难的优化问题。

3845
来自专栏企鹅号快讯

机器学习三人行-支持向量机实践指南

关注公众号“智能算法”即可一起学习整个系列的文章。 文末查看本文代码关键字,公众号回复关键字下载代码。 其实逻辑回归算法和今天要讲的支持向量机有些类似,他们都是...

1849
来自专栏大数据挖掘DT机器学习

Python小案例:朴素贝叶斯分类器

朴素贝叶斯分类器是一个以贝叶斯定理为基础,广泛应用于情感分类领域的优美分类器。本文我们尝试使用该分类器来解决上一篇文章中影评态度分类。 1、贝叶斯定理 假设对...

44513
来自专栏ATYUN订阅号

【学术】一文搞懂自编码器及其用途(含代码示例)

自编码器(Autoencoder)是一种旨在将它们的输入复制到的输出的神经网络。他们通过将输入压缩成一种隐藏空间表示(latent-space represen...

3039
来自专栏ATYUN订阅号

t检验的工作原理和在Python中的实现

因此,总有一天你可能会使用t检验,深入了解它的工作原理非常重要。作为开发人员,通过从头开始实现假设检验以理解。

1373

扫码关注云+社区