最大似然估计MLE的原理和实用例子

最近在学习机器学习的一些理论知识,手推了一些公式,在查MLE的时候发现网上写好多MLE的文章理论性太强,不太能看得懂,所以想把自己是怎么理解MLE的说出来让大家看一看。我尽量找最通俗的方式。

接下来举一个最简单的例子:扔硬币具体的问题是要扔硬币时计算硬币出现正面的概率

假设我们扔硬币扔了10次 出现结果数据集D={正,反,正,反,正,正,正,反,反,正}

这里我们定义
Φ : T h e   p r o b a b i l i t y   o f   a   c o i n   a p p e a r i n g   o n    t h e   o b v e r s e \varPhi:The\, probability\, of\, a\, coin\, appearing\, on\,\, the\, obverse Φ:Theprobabilityofacoinappearingontheobverse
那我们从计算 Φ = 6 10 = 0.6 \varPhi = \frac{6}{10} = 0.6 Φ=106=0.6

我们总共看到10次结果,6次正面朝上,我们可以通过观察得到概率为0.6。当然这个结果是我们观测到的,我们很自然的就认为这个结果就是硬币朝上的概率,那是为啥呢,其实这就是最大似然估计。

对!!!你没看错!!!就这是极大似然估计。

接下来说一下,为啥是???为啥极大似然就是这个,给出很严谨!!的数学推导过程:

我们首先写出能够得到我们能扔出这样结果的概率:
P ( D ) = Φ ( 1 − Φ ) Φ ( 1 − Φ ) Φ Φ Φ ( 1 − Φ ) ( 1 − Φ ) Φ = Φ 6 ( 1 − Φ ) 4 P(D)=\varPhi(1-\varPhi)\varPhi(1-\varPhi)\varPhi\varPhi\varPhi(1-\varPhi)(1-\varPhi)\varPhi\\ =\varPhi^6(1-\varPhi)^4 P(D)=Φ(1Φ)Φ(1Φ)ΦΦΦ(1Φ)(1Φ)Φ=Φ6(1Φ)4
能得到这样结果是因为,扔硬币事件相互独立,也就是说我这一次扔到正面或者反面和我前面扔到那一面没有关系。

那么我们就得到能出现这样的结果的概率为 P ( D ) = Φ 6 ( 1 − Φ ) 4 P(D)=\varPhi^6(1-\varPhi)^4 P(D)=Φ6(1Φ)4

这样我们就得到了我们的目标函数 P ( D ) = Φ 6 ( 1 − Φ ) 4 P(D)=\varPhi^6(1-\varPhi)^4 P(D)=Φ6(1Φ)4,然后最大化目标函数

就得到了我们想要的扔硬币的概率了。

这里有个问题,为啥需要最大化目标函数呢,因为这一组数据之所以被你观测到,是因为这组数据出现的概率最大!!!

所以我们要求出使得这组数据最大的参数 Φ \varPhi Φ

对概率求导:
∂ Φ 6 ( 1 − Φ ) 4 ∂ Φ = Φ 5 ( 1 − Φ ) 3 ( 6 − 10 Φ ) \frac{\partial \varPhi ^6\left( 1-\varPhi \right) ^4}{\partial \varPhi}=\varPhi ^5\left( 1-\varPhi \right) ^3\left( 6-10\varPhi \right) ΦΦ6(1Φ)4=Φ5(1Φ)3(610Φ)
让上面的导数等于0,可以得到
Φ 1 = 0 , Φ 2 = 1 , Φ 3 = 0.6 \varPhi _1=0,\varPhi _2=1,\varPhi _3=0.6 Φ1=0,Φ2=1,Φ3=0.6
所以可以显然得到通过这样的一组数据集可以得到硬币正面朝上的概率为0.6.

MLE的基本过程

1.确定具体问题

2.定义问题的目标

3.确认目标函数

4.最大化目标函数,找到对应参数的值。

你可能感兴趣的:(机器学习算法)