交叉熵
在非正式场合似然和概率几乎是对等的,但是在统计学中似然和概率却是两个不同的概念:
似然与极大似然估计
概率Probability
概率是在特定环境下某件事情发生的可能性,也就是结果没有产生之前依据环境所对应的参数来预测某件事情发生的可能性,比如抛硬币,抛之前我们不知道最后是哪一面朝上,但是根据硬币的性质我们可以推测任何一面朝上的可能性均为50%,这个概率只有在抛硬币之前才是有意义的,抛完硬币后的结果便是确定的;
似然likelihood
似然刚好相反,是在确定的结果下去推测产生这个结果的可能环境(参数),还是抛硬币的例子,假设我们随机抛掷一枚硬币1,000次,结果500次人头朝上,500次数字朝上(实际情况一般不会这么理想,这里只是举个例子),我们很容易判断这是一枚标准的硬币,两面朝上的概率均为50%,这个过程就是我们运用出现的结果来判断这个事情本身的性质(参数),也就是似然。
信息量 信息论
假设X是一个离散型随机变量,其取值集合为χ,概率分布函数p(x)=Pr(X=x),x∈χ,则定义事件X=x0的信息量为:
I(x0)=−log(p(x0)),
可以理解为,一个事件发生的概率越大,则它所携带的信息量就越小。
由于是概率所以p(x0)的取值范围是[0,1],绘制为图形如下:

eg:
事件A:巴西队获得了世界杯冠军。
事件B:中国队获得世界杯冠军。
仅凭直觉来说,显而易见事件B的信息量比事件A的信息量要大。究其原因,是因为事件A发生的概率很大,事件B发生的概率很小。所以当越不可能的事件发生了,我们获取到的信息量就越大。越可能发生的事件发生了,我们获取到的信息量就越小。那么信息量应该和事件发生的概率有关。
信息熵
熵用来表示所有信息量的期望,代表的是随机变量或整个系统的不确定性,熵越大,随机变量或系统的不确定性就越大,熵的本质是香农信息量 log(1/p) 的期望即:

根据真实分布,我们能够找到一个最优策略,以最小的代价消除系统的不确定性,而这个代价大小就是信息熵,记住,信息熵衡量了系统的不确定性,而我们要消除这个不确定性,所要付出的【最小努力】(猜题次数、编码长度等)的大小就是信息熵。
交叉熵
用来衡量在给定的真实分布下,使用非真实分布所指定的策略消除系统的不确定性所需要付出的努力的大小。
相对熵
其用来衡量两个取值为正的函数或概率分布之间的差异,即:

现在,假设我们想知道某个策略和最优策略之间的差异,我们就可以用相对熵来衡量这两者之间的差异。即,相对熵 = 某个策略的交叉熵 - 信息熵(根据系统真实分布计算而得的信息熵,为最优策略),公式如下:

eg:
题目1:一个箱子 里面有橙、紫、蓝及青四种颜色的小球任意个,各颜色小球的占比不清楚,现在我从中拿出一个小球,你猜我手中的小球是什么颜色?
为了以最小的代价猜出答案,你的答题策略如下:

在这种情况下,你什么信息都不知道,只能认为四种颜色的小球出现的概率是一样的。所以,根据策略1,1/4概率是橙色球,你需要猜两次,1/4是紫色球,小明需要猜两次,其余的小球类似,所以你的预期的猜球次数为:
H = 1/4 * 2 + 1/4 * 2 + 1/4 * 2 + 1/4 * 2 = 2
题目2:一个箱子里面有小球任意个,但其中1/2是橙色球,1/4是紫色球,1/8是蓝色球及1/8是青色球。我从中拿出一个球,你猜我手中的球是什么颜色的?
你很快得想到了答案,简称策略2:

在这种情况下,你知道了每种颜色小球的比例,比如橙色占比二分之一,如果猜橙色,很有可能第一次就猜中了。所以,根据策略2,1/2的概率是橙色球,你需要猜一次,1/4的概率是紫色球,你需要猜两次,1/8的概率是蓝色球,你需要猜三次,1/8的概率是青色球,你需要猜三次,所以小明猜题次数的期望为:
H = 1/2 * 1 + 1/4 * 2 + 1/8 * 3 + 1/8 * 3= 1.75
题目3:一个箱子里面的球都是橙色,现在我从中拿出一个,你猜我手中的球是什么颜色?
你闭着眼睛都知道肯定是橙色,需要猜0次。
解析:
上面三个题目表现出这样一种现象:针对特定概率为p的小球,需要猜球的次数 =

,例如题目2中,1/4是紫色球,

= 2 次;1/8是蓝色球,


,这就是信息熵,上面三个题目的预期猜球次数都是由这个公式计算而来,第一题的信息熵为2,第二题的信息熵为1.75,最三题的信息熵为0
当然,信息量和信息熵都有着严格的定义,这边简单介绍下。在信息论中,信息量,或者叫自信息(self-information),其代表一个事件所能够提供信息的多少,具体计算方式为:

。其是基于这样的想法进行信息量化的,一个不太可能发生的事件发生了,要比一个非常可能发生的事件提供更多的信息(概率小,log值高)。但是,自信息只能衡量单个事件的信息量,而整个系统呈现的是一个分布(例如题目一的分布就是1/4,1/4,1/4,1/4),因此在信息论中,使用信息熵来对概率分布进行量化,即
