机器学习 | 最大熵模型
最大熵原理:学习概率模型时,在所有可能的概率模型中,熵最大的模型是最好的模型。用最大熵原理推导实现的模型是最大熵模型。
1. 熵
1.1. 熵
假设离散型随机变量
熵满足下列不等式:
当且仅当
1.2. 条件熵
假设离散型随机变量
2. 最大熵模型
2.1. 问题提出
对于训练数据集
定义特征函数
我们知道对于二维离散随机变量的期望的表达式:
现在的问题就是如何得到
其中
那么特征函数关于经验分布的期望值
另一种方法是使用学习到的模型
但是其中还是有未知的
那么特征函数关于模型和经验分布的期望值
如果模型能够获取到训练数据中的信息,那么我们可以假设
对于训练数据集
2.2. 问题求解
该问题为有约束的最优化问题,通过拉格朗日乘子法先转为无约束的最优化问题。引入拉格朗日乘子
那么原始问题就转换成无约束的最优化问题:
转换为对偶问题:
首先求解内层问题,直接对
式中的底数为 .
由
为了式子简洁,令
这样内层问题便解决了,将解出来的
接下来就要求解外层问题:
该问题解决的方法可以为改进的迭代尺度法 (Improved Iterative Scaling, IIS) 或者是拟牛顿法 (BFGS),等我学到了这两个算法后再写笔记。
本文采用 CC BY-SA 4.0 许可,本文 Markdown 源码:Haotian-BiJi