最大熵模型与指数族分布

有一次,我去AT&T实验室作关于最大熵模型的报告,我带去了一个色子。我问听众”每个面朝上的概率分别是多少”,所有人都说是等概率,即各点的概率均为1/6。这种猜测当然是对的。我问听众们为什么,得到的回答是一致的:对这个”一无所知”的色子,假定它每一个朝上概率均等是最安全的做法。(你不应该主观假设它象韦小宝的色子一样灌了铅。)从投资的角度看,就是风险最小的做法。从信息论的角度讲,就是保留了最大的不确定性,也就是说让熵达到最大。接着,我又告诉听众,我的这个色子被我特殊处理过,已知四点朝上的概率是三分之一,在这种情况下,每个面朝上的概率是多少?这次,大部分人认为除去四点的概率是1/3,其余的均是2/15,也就是说已知的条件(四点概率为1/3)必须满足,而对其余各点的概率因为仍然无从知道,因此只好认为它们均等。注意,在猜测这两种不同情况下的概率分布时,大家都没有添加任何主观的假设,诸如四点的反面一定是三点等等。(事实上,有的色子四点反面不是三点而是一点。)这种基于直觉的猜测之所以准确,是因为它恰好符合了最大熵原理。

最大熵原理指出,当我们需要对一个随机事件的概率分布进行预测时,我们的预测应当满足全部已知的条件,而对未知的情况不要做任何主观假设。(不做主观假设这点很重要。)在这种情况下,概率分布最均匀,预测的风险最小。因为这时概率分布的信息熵最大,所以人们称这种模型叫”最大熵模型”。我们常说,不要把所有的鸡蛋放在一个篮子里,其实就是最大熵原理的一个朴素的说法,因为当我们遇到不确定性时,就要保留各种可能性。

——《数学之美》

0.计算上的说明

本文采用的熵均为信息熵,其中$log$是以2为底数。信息熵和热力学熵是等价的,两者之间就相差一个常数:

而对一个函数做$argmax$和$argmin$运算可以忽略常数,因此在计算过程中,对$argmax$和$argmin$操作求极大似然估计全部看作是以$e$为底的对数。

1.不含约束的最大熵模型

假设$X = (1, 2, \cdots, N)$为离散型随机变量,且$X\sim P,P = (p_1, p_2, \dots, p_N)\quad \sum_{i=1}^{N} p_i = 1$。

则最大熵模型表示为:

构造拉格朗日函数:

所以,在无约束条件下离散型随机变量的最大熵分布是均匀分布。

2. 含矩约束的最大熵模型

假设$Data:X = (x_1, x_2, \cdots, x_N)$,我们观测到数据$X$的经验分布$\hat P(x = x^\prime) = \frac{count(x^\prime)}{N}$。假设n个矩约束$\Bbb E_\hat P[f_i] \quad i = 1,2,\cdots,n$。则最大熵模型表示为:

构造拉格朗日函数:

其中:

则:

记$Z = 1-\eta_0$:

由于$\sum_x P(x) = 1$,则:

$Z$称为规范化因子,$f_i(x)$是特征函数,$\eta_i$是特征的权值。

3.指数族分布

对于不同的分布,具有不同的规范化因子$Z$,这就形成一个函数族。通常,将$Z$中与$\eta$相关项和与$x$相关项分离:

其中$- \log b(x)$目的是将与$x$相关项提出$\exp $,直观的表示底层变量$x$对概率分布模型的直接影响。

记$\eta = (\eta_1,\eta_2,\cdots,\eta_n)^\top,T(x) = (f_1(x),f_2(x),\cdots,f_n(x))^\top$,则分布表示为:

称为指数族分布,其中:

$\eta$:$\eta$为自然参数(Natural Parameter),可以是向量形式。

$T(x)$:$T(x)$为充分统计量(Sufficient Statistic),描述了分布的全部据约束的特征函数(能为相应分布提供足够信息的统计量)。

$A(\eta)$:

因此称$A(\eta)$为对数配分函数(log-Partical Function),作用是确保概率和为1。

$b(x)$:$b(x)$为底层观测值(Underlying Measure)。

4.常见的指数族分布

4.1.正态分布

4.2.Bernoulli分布

5.关于一些不同版本书籍的说明

笔者在学习《统计学习方法》中“逻辑斯谛回归与最大熵模型”这一章中,发现作者推到最大熵模型的思路有一点问题(与众不同?)。作者考虑一个分类模型,假设$Data:X = (x_1, x_2, \cdots, x_N)$,我们观测到数据$X$的经验分布$\hat P(x = x^\prime) = \frac{count(x^\prime)}{N}$。在此基础上,我们希望求出类别变量$Y$的似然概率:$P(Y|X)$。显然,求解此模型应该采用条件熵。

但是实际上,笔者认为只要对$P(Y)$进行最大熵建模就可以(事实上大部分机器学习参考书和课程也都是这么做的,而且这种方法也更加的通用)。但考虑到书籍的权威性和经典性,还是把书籍中推导的详细过程记录下来:

假设n个矩约束$\Bbb E_\hat P[f_i] \quad i = 1,2,\cdots,n$。则最大熵模型表示为:

构造拉格朗日函数:

其中:

则:

记:

由于$\sum_y P(y|x) = 1$,则:

$Z_w(x)$称为规范化因子,$f_i(x,y)$是特征函数,$\eta_i$是特征的权值。

参考文献

1.《数学之美》 吴军

2.《统计学习方法》李航

3.CS229 Lecture Notes

4.指数族分布

5.指数族分布-百度百科

6.机器学习-白板推导系列(八)-指数族分布(\exp onential Family Distribution)

文章作者: 地瓜
文章链接: https://www.l-zhe.com/2019/08/12/最大熵模型与指数族分布/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 人参地里的地瓜
打赏
  • 微信
  • 支付宝

评论