机器学习常用算法:最大熵模型

最大熵原理

学习概率模型时,在所有可能的概率模型中,熵最大的模型是最好的模型。
假设离散随机变量 X 的概率分布是 P ( X ) , 则其熵为

H ( P ) = x P ( x ) log P ( x )

且满足如下不等式:

0 H ( P ) log | X |

式中, | X | X 的取值个数,当且仅当 X 的分布是均匀分布时,右边等号成立,即当 X 服从均匀分布时,熵最大。

最大熵原理可简述为按照满足约束条件下求等概率的方法估计概率分布。

最大熵模型

1.最大熵模型是由以下条件概率分布表示的分类模型,可用于二类或多分类问题。

P w ( y | x ) = 1 Z w ( x ) exp ( i = 1 n w i f i ( x , y ) )

Z w ( x ) = y exp ( i = 1 n w i f i ( x , y ) )

其中, Z w ( x ) 是规范化因子; w i 是特征权值; f i ( x , y ) 是特征函数,描述输入 x 和输出 y 之间的某一个事实,其定义为

f ( x , y ) = { 1 , x  与  y  满足某一事实 0 , 否则

这是一个二值函数。

2.对于给定的训练集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) } 和特征函数 f i ( x , y ) , i = 1 , 2 , . . . , n ,应用最大熵原理于分类模型中,得到以下约束最优化问题:

min H ( P ) = x , y P ~ ( x ) P ( y | x ) log P ( y | x )

s . t . E P ( f i ) E P ~ ( f i ) = 0 , i = 1 , 2 , . . . , n

y P ( y | x ) = 1

求解此最优化问题的无约束最优化对偶问题可得到最大熵模型,即最大熵模型的学习可归结为对偶函数 Ψ ( w ) 的极大化。

对偶函数 Ψ ( w )

Ψ ( w ) = min P C L ( P , w ) = L ( P w , w )

其中, L ( P , w ) 为引入拉格朗日乘子 w 后的拉格朗日函数

L ( P , w ) = H ( P ) + w 0 ( 1 y P ( y | x ) ) + i = 1 n w i ( E P ~ ( f i ) E P ( f i ) ) = x , y P ~ ( x ) P ( y | x ) log P ( y | x ) + w 0 ( 1 y P ( y | x ) ) + i = 1 n w i ( x , y P ~ ( x , y ) f i ( x , y ) x , y P ~ ( x ) P ( y | x ) f i ( x , y ) )

3.对偶函数的极大化等价于最大熵模型的极大似然估计。
(1).已知训练数据的经验概率分布 P ~ ( X , Y ) ,条件概率分布 P ( Y | X ) 的对数似然函数为

L P ~ ( P w ) = log x , y P ( y | x ) P ~ ( x , y ) = x , y P ~ ( x , y ) log P ( y | x ) = x , y P ~ ( x , y ) i = 1 n w i f i ( x , y ) x , y P ~ ( x , y ) log Z w ( x ) = x , y P ~ ( x , y ) i = 1 n w i f i ( x , y ) x P ~ ( x ) log Z w ( x )

最后一步用到 y P ~ ( y ) = 1 .
(2).对偶函数 Ψ ( w )

Ψ ( w ) = L ( P w , w ) = x , y P ~ ( x ) P w ( y | x ) log P w ( y | x ) + i = 1 n w i ( x , y P ~ ( x , y ) f i ( x , y ) x , y P ~ ( x ) P w ( y | x ) f i ( x , y ) ) = x , y P ~ ( x , y ) i = 1 n w i f i ( x , y ) + x , y P ~ ( x ) P w ( y | x ) ( log P w ( y | x ) i = 1 n w i f i ( x , y ) ) = x , y P ~ ( x , y ) i = 1 n w i f i ( x , y ) x , y P ~ ( x ) P w ( y | x ) log Z w ( x ) = x , y P ~ ( x , y ) i = 1 n w i f i ( x , y ) x P ~ ( x ) log Z w ( x )

最后一步用到 y P ( y | x ) = 1 .

(3).比较可得,

Ψ ( w ) = L P ~ ( P w )

即最大熵模型的学习问题可转换为求解对数似然函数极大化或对偶函数极大化的问题。

结论

优点:
1、准确率较高。
2、可以灵活地设置约束条件,从而调节模型对未知数据的适应度和对已知数据的拟合程度
缺点:
1.由于约束函数数量和样本数目有关系,导致迭代过程计算量巨大,实际应用较难。

参考资料

统计学习方法,李航著,清华大学出版社
最大熵模型原理小结

猜你喜欢

转载自blog.csdn.net/u013402321/article/details/79355678