标签:导数 max mit 分布 targe sum 参考 方法 直接
MLE(极大似然估计)与MAP(最大后验估计)在机器学习中是经常用到的参数估计的方法。都属于频率学派的参数估计。
MLE在构造目标函数过程中非常常见。已知了观测的样本值为\(D\),MLE核心思想是:假设我们已知了该样本内定的一个参数\(\theta\),这个参数\(\theta\)会导致样本出现不同的值,但是由于现在已经观测到的样本值为\(D\),那么我们假设观测到的样本值是该参数\(\theta\)下最可能出现的事件。也就是说,\(P(D|\theta)\)最大。
举个例子:
假设有个不规则的硬币,扔该硬币出现正面(记为\(T\))的概率为\(\theta\)。那么出现反面(记为\(H\))的概率为\(1-\theta\)。扔了6次硬币观测到的情况是:\(T,T,H,T,H,T\),那么利用MLE估计参数\(\theta\)的值。
我们发现扔了6次出现了4次正面,根据经验很容易想到这个概率是2/3,其实这就已经用到了MLE的思想。
解答:
假设事件\(D={T,T,H,T,H,T}\),也就是说该参数\(\theta\)下出现\(D\)事件的概率是最大的,也就是说\(P(D|\theta)\)max。
由于每次扔硬币是独立同分布的,每次出现的结果都是互不影响的,就可以直接相乘。那么
\(P(D|\theta) = P(T|\theta)P(T|\theta)P(H|\theta)P(T|\theta)P(H|\theta)P(T|\theta) = \theta *\theta *(1-\theta) *\theta*(1-\theta) *\theta\)
\(= \theta^4* (1-\theta)^2\)
则求上述式子的最大值时候的\(\theta\)值,那么上述式子对\(\theta\)求导,并令导数为0,即可求出\(\theta\)。
我们发现MLE中求参数\(\theta\)的值的过程完全是假设当前样本在该参数下出现的概率是最大的,没有引入先验知识。
先验知识就是说,可能没有观测任何样本,某些专家就可能对该参数有个预估,这个预估的值应该被考虑到参数估计中去,尤其是在样本较少的情况下,观测的值不一定是准确反应参数的,因此先验分布是很重要的。
因此出现了最大后验估计。
最大后验估计的思想是:假定了我们观测到的样本已经是固定了,不能变化了,且参数\(\theta\)引入了其先验概率,也就是对该参数有个预估值,这个时候计算该观测样本下,参数最可能的值。也就是使得\(P(\theta|D)\)max。
根据贝叶斯公式:
\(P(\theta|D) = \frac{P(D|\theta)P(\theta)}{ P(D)}\)
我们观测到的样本\(P(D)\)已经是固定了的一个常量,那么:
\(\theta^* = argmax P(\theta|D) = argmax \frac{P(D|\theta)P(\theta)}{ P(D)} = argmax P(D|\theta)P(\theta)\)
结论出来了:
最大后验估计的值 = 最大似然估计* 先验估计。
还是用上述扔硬币的例子,假设没有扔硬币之前已经知道了\(theta\)的先验参数可能是0.8,那么我们利用后验估计求得的参数值为:2/3 *0.8 = 0.5333
加入我们收集了N个相互独立的样本\(x_1,x_2,...,x_n \in R\),分别取自于均值为\(\mu\),方差为\(sigma^2\)的高斯分布,在这里假定\(\mu\)是未知参数,\(\sigma^2\)是已知参数。
1.利用MLE推导未知参数\(\mu\)。
2.利用MAP推导未知参数\(\mu\)。假定均值\(\mu\)的先验本身也服从高斯分布\(N(v,\beta^2)\)。
解答:
假设事件\(D = \{x_1,x_2,...,x_n\}\),已知高斯分布的概率密度函数为:
(1)利用MLE推导未知参数\(\mu\):
\(P(D|\mu) = P(x_1|\mu)P(x_1|\mu)...P(x_n|\mu)\)
\(=\prod\limits_{i=1}^{n}P(x_i|\mu) =\prod\limits_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} e^{- \frac{(x_i - \mu)^2}{2\sigma^2}}\)
我们最大化上述式子,也相当于最大化\(logP(D|\mu)\):
\(logP(D|\mu)= \sum\limits_{i=1}^{n}log(\frac{1}{\sqrt{2\pi}\sigma})-\frac{(x_i - \mu)^2}{2\sigma^2}\)
对\(logP(D|\mu)\)求偏导:
\(\frac{\partial log P(D|\theta)}{\partial \mu} = \sum\limits_{i=1}^{n}\frac{x_i-\mu}{\sigma^2}\)
令上式为0,可以求得:
\(\mu = \frac{1}{n} \sum\limits_{i=1}^{n}x_i\)
也就是说,用极大似然估计计算出来的\mu也就是这些样本的均值。
(2)利用MAP推导未知参数\(\mu\)。假定均值\(\mu\)的先验本身也服从高斯分布\(N(v,\beta^2)\)。
在MLE中我们得到:
\(P(D|\mu) = \prod\limits_{i=1}^{n}P(x_i|\mu) =\prod\limits_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} e^{- \frac{(x_i - \mu)^2}{2\sigma^2}}\)
同时,我们有:
\(P(\mu)=\frac{1}{\sqrt{2\pi}\beta} e^{- \frac{(\mu - v)^2}{2\beta^2}}\)
因此:
\(P(\mu|D) = [(\prod\limits_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma} e^{- \frac{(x_i - \mu)^2}{2\sigma^2}} ) \frac{1}{\sqrt{2\pi}\beta} e^{- \frac{(\mu - v)^2}{2\beta^2}} ]/C\)
也就是最大化上述的分子部分。求log:
\(logP(\mu|D)=(\sum\limits_{i=1}^{n} -log(\sqrt{2\pi}\sigma)- \frac{(x_i - \mu)^2}{2\sigma^2} ) - log(\sqrt{2\pi}\beta)-\frac{(\mu - v)^2}{2\beta^2}\)
对\(logP(\mu|D)\)求偏导:
\(\frac{\partial log P(\theta|D)}{\partial \mu} = \sum\limits_{i=1}^{n}\frac{x_i-\mu}{\sigma^2} - \frac{\mu-v}{\beta^2}\)
令上式为0,可以求得:
\(\mu = \frac{\sigma^2v+\beta^2\sum\limits_{i=1}^{n}x_i}{\sigma^2+n\beta^2}\)
标签:导数 max mit 分布 targe sum 参考 方法 直接
原文地址:https://www.cnblogs.com/dychen/p/14812952.html