统计学习方法笔记_cbr:第六章 6.2 最大熵模型
时间:2022-10-22 06:00:01
6.2 最大熵模型
目录
-
- 6.2 最大熵模型
-
- 6.2.1 最大熵原理
- 6.2.2 定义最大熵模型
-
- 拉格朗日的对偶性
- 6.2.3 最大熵模型的学习问题
- 6.2.似乎估计了最大熵模型的最大熵模型
- 6.3 模型学习优化算法
-
- 最快梯度下降法
- 6.3.1 改进迭代尺度法( Improved Iterative Scaling Algorithm)简称IIS算法
- 牛顿法
- 6.3.2 拟牛顿法
-
- 牛顿法的合理性
- DFP算法
- BFGS算法
- Broyden算法:
最大熵模型是指信息最多的条件概率分布;
问:为什么要求条件概率分布?
答: 最大熵模型实际上是一种判断方法,即获得条件概率分布;
最大熵模型作用,计算熵最大条件概率分布,根据条件概率分布对输入x进行分类;
获得最大熵模型的是所有满足约束条件的模型中信息熵极大的模型;
约束条件由于模型数量相关,模型计算量大,难以实际应用,影响模型的拟合和预测能力;
6.2.1 最大熵原理
熵计算式:
随机变量为离散用求和,随机变量为连续积分;
熵表示随机变量的不确定性和复杂性;
最大熵模型是指包含最多信息的最大熵模型条件概率分布;
如何找到熵最大对应的熵?条件概率分布?
取熵最大时的概率;
对H(P)求导,让一阶导0;
此时函数取最大值,计算概率p,这个p对应的熵是最大熵;
若有限制(约束条件),就使用拉格朗日乘子法,引进拉格朗日乘子;
偏导为0得一式,与约束条件相连p;
将p带入H(p),得最大熵模型;
//默认计算熵(离散形式)对数取2最后,单位为比特(bit);
//默认计算熵(连续形式)对数取e最后,单位为比特(nat);
例如:正态分布是附加三个约束条件(常规、平均值、方差)的最大熵原理;
6.2.2 定义最大熵模型
C是满足所有约束条件的集合;
前P是指满足约束条件的概率;
后P代表所有概率分布;
特征函数f(i):
{f(x,y)} x和y满足事实为1,否者为0;
预期:
使经验分布等同于理论分布,即经验分布的期望等同于理论分布的期望;
条件熵概念:
条件 | 对应不同条件的类别 |
---|---|
输入变量x | 输出变量y |
条件熵公式推导:
最大熵模型得应用:
对于输入x,我们将选择概率高的类别作为输出变量
问:如果概率最大得类有两个及以上?
答:正则化,导入正则项将最小化经验风险转化为最小化结构风险,再次估量;
拉格朗日的对偶性
方法的实质:
不等式原始问题将有约束的优化->
用拉格朗日乘子法将原始问题转化为无约束等式->
对偶问题;
加拉格朗日乘子,转化为无约束的原始问题
易得:
当满足KKT条件等号成立:
仿射函数的定义
多项式函数最高次数为:y=Ax b(一般形式)
6.2.3 最大熵模型的学习问题
1.学习最大熵模型的想法
已知信息:训练数据集,特征函数(约束);
学习目的:利用最大熵模型找到最大条件熵的概率分布函数,通过已知x找到y类;
实现方法:
添加负号将最大熵转化为最小值;
根据概率分布的概率和为一,以及特征函数确定两个约束条件;
这样就最大熵模型转化为求解限制最小化问题;
应用拉格朗日乘子法得到以下内容n 1维参数公式:
易证,f(x)是上凸函数。两种约束的简化是仿射函数;
现在我们可以用对偶问题解决其原始问题;
首先,最大熵函数的偏差导致极小值,此时固定p;
1
2.规范化因子
3
1.2.3联立
获取关于参数w的函数w*使函数获得最大值;
用w *要求条件概率分布;
6.2.似乎估计了最大熵模型的最大熵模型
最大的似然估计:
简单来说就是找出结果的最可能条件;
最大熵模型应用大似然估计只是为了找到最大的可能性概率分布的最大条件;
计算:对数似然函数(已删除数据集样本总数N)等于对偶函数;
///样本点默认独立
从此问题转移到求w;
6.3 模型学习优化算法
最快梯度下降法
梯度下降法它是通过一阶泰勒展开的;
最大熵模型的最快梯度下降法
6.3.1 改进迭代尺度法( Improved Iterative Scaling Algorithm)简称IIS算法
找到一个δ,使得w δ似乎函数值大于上一轮:
引入下式(去对数)
得:
展开规划因素:
分子分为两项:
第一项除以分母得
联立得:已知参数ω,关于δ的函数;
找对的δ使函数大于0,即可迭代到下一个值;
求A(δ|ω)的最小值:
若直接对函数A(δ|ω)求偏导等于0,第三项指数部分任存在δin项累乘不易单独求δi的值;
引入函数f#(x,y),值为(x,y)符合特征的数量:
f#(x,y)函数性质:
导入jensen不等式(原函数为下凸,指数函数为下凸函数)
得:
也就是这两个步骤,指数部分n个δi移除,然后对δi求偏导,只剩下唯一的δi;
带入A(δ|ω)的式子得:
右端为下:
得:
B(δ|ω)是对数似乎函数变量相对不紧的下一届:
求偏导:
偏导为0,得:
对每一δi求解上方方程即可解δ;
(3)重复上述步骤,更新参数直至收敛;
(4)将得到ω*带入Pω(y|x)获得最优条件概率分布模型
牛顿法
牛顿法就是因为牛顿改进了方程求根,而得名;
牛顿法的作用:求解极值;(简单来说就是高中的二导求极值;)
函数可微:函数f(x)在x0点邻域D有定义,且在x0处可导;
费马原理:函数可微,对于任意x属于D,如果f(x0)是极值,那么其导数为0;
自此求极值问题转化为求解导函数0点问题;
//θ放置在一阶导函数图像里更易理解:新的θ为原θ-一阶导函数f(θ)‘值除以二阶导f(θ)’‘;令g(θ)等于一阶导函数f(θ)’,那么,新的θ为原θ-函数g(x)值除以一阶导g(θ)',即函数值除以斜率k,得θ距离,新θ即等于原θ-该θ距离;
扩展到n维就是求偏导:
梯度(一阶导数)直接求偏导;
二阶导数求偏导得海森矩阵:
6.3.2 拟牛顿法
二次型:多项中存在某项为二次项的多项式;
由于牛顿法中的海森矩阵涉及大量二次偏导,计算量大,所有我们想找一个式子代替海森矩阵;
牛顿法的实质是对目标函数f(x)进行二阶泰勒展开;
对x求导:
向量的平方求导:
(由于海森矩阵是对称矩阵,逆与原矩阵相同,值应为2Ax;)
令
得出替代Gk的满足条件;
拟牛顿法的合理性
应用梯度下降法原理,但还需要一个最优步长;
如下计算得出;
对目标函数f(x)进行一阶泰勒展开(验证其满足梯度下降的合理性)
带入搜素公式,牛顿方向,
牛顿法的搜索公式:
牛顿方向:
得:
假设海森矩阵是正定的,那么它的逆是正定,则其二次型大于0,第二项小于0,上式成立;
证明:初值H(k)是正定的对称矩阵;
DFP算法
求海森矩阵的逆的替代品Gk;
令
由于海森矩阵是正定且对称的,所有,Gk,Qk,Pk都是对称的
令:
为求Pk构造函数满足条件;
该函数分子为矩阵,分母为数,相除得矩阵;
同理,构造Qk;
最终得迭代式:
BFGS算法
BFGS过程推导同理;不过是由条件二
推导而出:
Broyden算法:
令
这个Gk记作Gk(BFGS)
BFP算法的GK记作Gk(DFP)
两者线性组合得出一类拟牛顿算法,称为Broyden类 算法
笔记内容参阅于简博士机器学习系列课程