最大熵模型的学习

        最大熵模型(maximum entropy model),由最大熵原理推导实现,是一种判别模型,也是利用条件概率P(Y|X)来进行判断。要想知道最大熵模型,首先需要从最大熵定理来说起。

         香农爸爸真的是强,对于通信专业的我们从本科就沐浴在了香农爸爸的学识中,熵是一种什么东西呢,他是对于不确定性的一种度量的手段,表明了蕴含信息量的多少。比如,马云爸爸今天净赚1个亿,这个信息对我们来说就没有什么信息量,因为大概率,很可能会发生,或者是稀疏平常,所以我们没觉得由什么冲击,但如果跟你说,你身边的小伙伴今天中了彩票头奖,那么这个信息量就很大了。熵的解释就是对不确定性的度量。而如果对于一个概率模型来说,什么情况下,模型的平均的不确定性最大呢?当然是你根本没有办法判断是哪一个情况发生的时候,熵最大呀,也就是无法预料。。只要不抱有强烈的功利心,生活处处是惊喜。

        对于最大熵定理,在满足约束条件,可能学习到的所有的概率分布中,我们认为熵最大的那个概率模型就是最好的模型,这句话换个简单点的描述,就是我们认为没有办法提前依据概率知识判定的,概率分布很平均的模型就是好的模型。对于概率模型,他的熵的大小满足:0<=H(P)<=log(X),X表示随机变量不同取值个数。也就是,在约束条件下,在没有更多的信息的情况下,认为不确定的部分是等可能的,也就是通过等可能性来满足熵最大的原理。《满足约束条件的情况下平均》

          最大熵模型:如何通过训练数据来得到P(Y|X)这个模型呢?而且从最大熵定理,我们可以知道在约束条件下来求熵最大的模型。首先,需要解决的就是约束问题这一点,我们需要特征函数,这个特征函数就是在满足什么条件下,值为1,不满足条件的情况下,值为0的函数。对于特征函数对训练数据的经验分布(联合概率分布)求期望,然后对特征函数对模型的条件概率分布和经验分布(训练数据)求期望,然后让二个期望相同。然后满足这样的期望相同的模型组成了最大熵的假设空间,然后,我们求假设空间中的熵最大的模型,在这里的熵是条件熵,这个也是很好理解的,因为,我们的模型是条件概率分布,所以求得是条件熵也是顺理成章的情况。

          最大熵模型的学习过程:从上述描述中,我们可以看出求最大熵模型,就是求有约束的最优化问题,优化目标是最大化条件熵,然后约束条件除了特征函数的期望之间的关系,还有朴素的条件概率和为1的要求。求解最优化问题即可。在有约束问题的求解中,我们一般是通过拉格朗日乘子来转变为无约束的情况,有时也会涉及到求对偶问题,什么是对偶,就是求解思路不一样,但得到的解是一样的问题,比如求最大的情况,换成求最小的情况。。。【描述流程】:首先,求约束条件下的条件熵最大,取负号之后,然后变为求约束条件下的优化目标最小的情况;其次,将其利用拉格朗日乘子法变为无约束的条件,尤其需要注意KKT条件,然后将最小最大的问题,转变为最大最小问题;然后,就是求一波导数的关系,得到用乘子参数表示的模型,然后在对乘子参数进行求导,最终得到参数,得到最终的模型。

           



          在最大熵的学习模型,求解的目标我们是确定的,但中间我们将自己的目标(条件概率)与中间的参数联系在一起了,我们利用这些参数表述了我们的目标,然后通过求解这些参数值,最终得到模型情况。

          【求解最优化问题】点击打开链接(理解拉格朗日乘子法和KKT条件),我越看越觉得这一块需要慢慢的理清楚,慢慢来进行思考。

          考虑我们方法的可行性,我们最后将最优化的问题放在了对偶函数最大化上面,这种方法为什么可行,有人对此进行了证明,证明了对偶函数最大化等价于最大熵模型中的极大似然估计这一事实。证明如下:首先,肯定是把Pw带回去,得到一个值,然后求最大熵模型中的对数似然函数(交叉熵?也可以看作是与逻辑斯蒂回归一样的写法的似然函数及对数似然函数),然后二者的值相等,说明等价。。(具体的证明过程见图,稍后上传)。在此阶段,我们将求解的目标从求约束条件下的条件熵的最大值转变为了求对数似然函数(对偶函数)的最大值问题,此时得到的对数似然函数是光滑的凸函数,可以用最优化的方法求解,找到全局最优解。可以采用的方法有改进的迭代尺度法,梯度下降法,牛顿法,拟牛顿法等求解。

          【采用改进的迭代尺度法】,这种方法是想要找到一个参数更新的策略,通过这个策略,我们可以不断的更新我们的参数,直到最大的情况产生,也就是收敛。那么这个策略是什么呢,就是寻找参数改变的下界,然后通过优化下届,提高下界的门槛,那么肯定是增大的的,但在优化中,我们一般是固定一个来求另一个,但有个问题,就是紧的下界中,我们轮流对其某一维进行优化的过程中,对其求导,我们希望不出现其他维参数,所以,找了一个不紧的下界,通过优化这个下界,来达到更新操作。

            【梯度下降法】,求解的推导稍后上传

            【拟牛顿法】,这种方法还是没有领悟到精髓,还是在这个地方侧重看一下。。。

            【牛顿法】,求解的推导稍后上传

猜你喜欢

转载自blog.csdn.net/angela2016/article/details/80701705