本文主要讨论了机器学习中的最大似然估计MLE,贝叶斯估计和最大后验估计MAP,以及它们的关系,是上一篇《机器学习浅析之最优解问题》的深刻。 html
Frequentist Learning假定存在模型M,其中未知参数为.该参数的估计值为. 给定样本观察数据X,经过选择合适的θ值,可使产生该样本数据X的几率最大。 机器学习
首先介绍逆几率公式: 函数
即 学习
它能够将后验几率转化为给予先验几率和似然函数的表达式,因此最大似然估计MLE就是要用似然函数取得最大值时的参数值做为估计值。 spa
MLE的过程以下: 3d
首先,写出样本观察数据的联合分布的表达式: htm
其次,取对数可得: blog
最后,这是一个关于θ的函数,求导可得极值点,取最大值时对应的θ取值就是合适的模型参数。 文档
以抛硬币为例,单次试验服从伯努利分布,N次试验服从二项分布,模型参数为θ,即每次获得正面的几率为θ。为了估计该参数,采用最大似然估计: get
似然函数的对数为:
求导可得
最大似然估计中,参数θ是一个固定的值,只要可以拟合样本数据就能够了。可是当样本过少的时候就容易出现过拟合现象,会获得诸如只要没见过飞机相撞,飞机就必定不会相撞的扭曲事实。
最大后验估计与最大似然估计类似,不一样点在于须要考虑先验几率p(θ)。也就是说,此时不是要去求似然函数取得最大值,而是要去求贝叶斯公式计算出的整个后验几率最大值时的θ。
即
这里的P(X)与θ无关,所以等价于使分子最大便可。
此处的先验几率p(θ)能够用来描述人们已知的广泛规律,例如在扔硬币试验中,每次抛出正面的几率θ应该服从一个几率分布,且在θ=0.5时取得最大值。该分布就是先验分布,其参数称为超参数。即p(θ)=p(θ|α)
同理,上述后验几率取得最大值时,可得MAP估计出的参数值。
仍以抛硬币为例,假设硬币均匀,先验几率分布在θ=0.5时取得最大值。选用beta分布做为θ的分布,即θ~Beta(α,β),当α,β=5时,p(θ=0.5),由上面公式推导可得:
其中
求导可得参数θ的最大估计值
从中咱们能够看出先验几率的做用为
例如,当咱们作商品个性化推荐的时候,当没法得到用户我的喜爱的时候,只好根据先验几率推荐大众热门的商品给他。
贝叶斯估计是在MAP上的进一步扩展,此时再也不是直接估计参数值,而是容许参数服从必定的分布。因此如今不是要求后验几率最大时的参数值。
根据
其中,根据全几率公式:
当新的数据被观察到时,后验几率能够随之调整。
预测方法以下:
以抛硬币为例,和MAP中同样,假设先验分布为beta分布,可是在构造贝叶斯估计的时候,不是要用最大后验几率时的参数来近似做为参数值,而是求知足beta分布的参数的指望。
由于在Beta分布中
因此
因而可得
根据结果可知,根据贝叶斯估计,参数θ服从一个新的beta分布。
在MAP中,咱们为θ选取的先验分布为beta分布,后来以θ参数的二项分布用贝叶斯估计获得的θ的后验几率仍服从beta分布,由此可知二项分布与beta分布为共轭分布。
当随机变量取值为二维时,可使用beta分布来处理,而多维时可使用狄利克雷分布。在几率语言模型中,一般选取共轭分布为先验分布,从而带来计算的方便性。LDA中每一个文档的topic服从多项式分布,其先验分布选取狄利克雷分布。
因为在贝叶斯估计中,参数的后验几率是比较难以计算的,由于要对全部的参数进行积分,并且,这个积分其实就是全部θ的后验几率的汇总,其实它是与最优θ是无关的,而咱们只关心最优θ(p(x)相同)。在这种状况下,咱们采用了一种近似的方法求后验几率,这就是最大后验估计:
最大后验估计相比最大似然估计,只是多了一项先验几率,它正好体现了贝叶斯认为参数也是随机变量的观点,在实际运算中一般经过超参数给出先验分布。最大似然估计实际上是经验风险最小化的一个例子,而最大后验估计是结构风险最小化的一个例子。若是样本数据足够大,最大后验几率和最大似然估计趋向于一致,若是样本数据为0,最大后验就仅由先验几率决定。尽管最大后验估计看着要比最大似然估计完善,可是因为最大似然估计简单,不少方法仍是使用最大似然估计。