最大熵模型

1. 最大熵原理

学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型。

假设离散随机变量X的概率分布是P(X),则其熵为

且满足0<=H(P)<=logN

当且仅当X的分布是均匀分布时右边的等号成立,即当X服从均匀分布时,熵最大。

直观地,最大熵原理认为要选择地概率模型首先必须满足已有事实(约束条件)。在没有更多信息的情况下,那些不确定的部分都是"等可能的"。

通过熵的最大化来表示等可能性,使不容易操作的"等可能"转化为一个可优化的数值指标-熵。

最大熵原理是概率学习或估计的一个准则。

2. 最大熵模型的定义与学习

2.1 最大熵模型的定义

假设满足所有约束条件的模型集合为C,定义在条件概率分布P(Y|X)上的条件熵为

则模型集合C中条件熵H(p)最大的模型成为最大熵模型。

2.2 最大熵模型学的学习

其学习过程就是求解最大熵模型的过程,可以形式化为约束最优化问题。

对偶函数的极大化等价于最大熵模型的极大似然估计。

最大熵模型与LR模型有类似的形式,它们又称为对数线性模型。这类模型的学习就是在给定训练数据条件下对模型进行极大似然估计或正则化的极大似然估计。

3. 模型学习的最优化方法

LR回归模型和最大熵模型学习归结为以似然函数为目标函数的(无约束)最优化问题,一般通过

迭代算法求解,这时的目标函数具有很好的性质(光滑的凸函数),多种最优化方法都适用,保证能找到全局最优解。

常用的方法有改进的迭代尺度法、梯度下降法、牛顿法或拟牛顿法。其中牛顿法或拟牛顿法一般收敛速度更快。

相关推荐
飞哥数智坊9 分钟前
告别繁琐部署:TRAE SOLO 帮我一键跑通 Z-Image 模型
人工智能·trae·solo
学历真的很重要24 分钟前
Hello-Agents —— 03大语言模型基础 通俗总结
开发语言·人工智能·后端·语言模型·自然语言处理·面试·langchain
STY_fish_201233 分钟前
P11855 [CSP-J2022 山东] 部署
算法·图论·差分
myw07120534 分钟前
湘大头歌程-Ride to Office练习笔记
c语言·数据结构·笔记·算法
H_BB35 分钟前
算法详解:滑动窗口机制
数据结构·c++·算法·滑动窗口
Zero-Talent37 分钟前
“栈” 算法
算法
橘子编程38 分钟前
经典排序算法全解析
java·算法·排序算法
waeng_luo38 分钟前
【鸿蒙开发实战】智能数据洞察服务:待回礼分析与关系维护建议算法
算法·ai编程·鸿蒙
风筝在晴天搁浅38 分钟前
代码随想录 279.完全平方数
算法
不穿格子的程序员42 分钟前
从零开始刷算法——字串与区间类经典题:前缀和 + 单调队列双杀
算法·前缀和·哈希表·双向队列·单调队列