对极大似然估计的理解

参数估计

随机变量X属于某种分布,这样的分布是可以用概率函数表示出来的

p(X=x)=f(x)

也就是说,要计算一个具体的x的概率,只需将x作为函数f的输入求值即可。

常见的分布的概率函数有:

两点分布: f(x)=px(1p)(1x) ,p又是什么呢,这里很容易引起混淆,它是x=1的概率,注意f(x)并不等于1,它是x取某值时的概率,而p是x=1的概率。

可以认为p是概率函数的参数,当p已知时,f(x)是x的函数,当x已知(通过实验得到了很多的x)时,f(x)就是p的函数了,意思就是通过很多次实验可以求出p(或近似于真理的估计值)。

举例来说,我们做无穷次(实际不可能),得到的x都是1,那你自然会想p就是百分百(=1),如果有一半是1一半是0,那显然取p=0.5是合理的。

这种用做实验的方式来估算既定概率函数的参数的方法就叫参数估计。

再举例来说明参数估计,我们看看均匀分布

f(x)==1b=0whenelse0<x<b()

已知b,那求任意x的概率都很简单,只需看x在不在(0,b)里面即可。如果现在不知道b,就可以做很多次实验得到很多的x,最后对b的估计就是max(x)

极大似然估计

一些有直观意义的概率分布,我们通过直觉就能估计参数,但是不那么直观的分布,怎么做推广呢。

n次实验得到n个观测值,假设实验独立且观测值服从同一个分布,我们可以把它们的联合概率写出来:

L=f(x1,x2,...,xn)=f(x1)f(x2)...f(xn)

因为 xi 已知,所以L其实是θ(概率函数中的参数)的函数,所以上式重写为

L(θ)=i=1nf(θ;xi)

当然 xi 可能是向量,θ也可能是参数向量(一组参数)
我们希望 L(θ) 最大,并不只是因为必须定界才能求解,更重要的是我们相信某种结果已经出现就代表着它与冥冥之中的客观规律是一致的,也就是说使这个乘积最大化的θ就近似客观地描述了概率(注意概率是理想的,是客观的)

因此,求
arg maxθL(θ;x)(1)
被称为极大似然估计(估计θ的函数也统称为这个名字),上式为极大似然估计方程。

因为乘积的计算有诸多不便,通常用对数联合概率:

H(θ)=lni=1nf(θ;xi)=i=1nln(f(θ;xi))

式(1)的等价形式为:
arg maxθH(θ;x)(2)

举个栗子来看看,对于两点分布来说n次实验之后:

H(θ)=i=1nln(θxi(1θ)(1xi))=i=1n[xiln(θ)+(1xi)ln(1θ)](3)

其中 xi=01 ,现在要使 H(θ) 最大,只需对θ求导并令结果为0然后解方程,也就是说,式(2)转为:

ddθH(θ)=0(4)

注意,如果θ是参数向量,式(4)是对各分量求偏导然后令为0的偏微分方程组。

在本例中,只有一个参数,因此具体写为:

ddθH(θ) =ni=1[xi/θ+(1xi)/(1θ)]=0
如果用电脑来计算的话,只需带入 xi 就可以轻松求解θ

通过极大似然估计推导逻辑回归的损失函数

逻辑回归(logistics regression)及其应用(MLIA第五章)中我们写出了逻辑回归的损失函数,但是没有解释。

J(θ)=1mi=1N[y(i)log(hθ(x(i)))+(1y(i)))log(1hθ(x(i)))]()

这个式子和式(3)是不是有点关联,好像就是在前面乘了 1m ,这个点可以理解为求最大似然等价于求最小损失。

但是x,y,θ怎么对应了,这里不容易理解,因为
1、在损失函数中θ是回归系数,而不是式(3)的θ。

2、式(3)的 xi 是观测值,对应于损失函数中的 y(i) 即真正出现的分类(0或1)

3、式(3)中的θ是对观测值=1的概率估计,对应于损失函数中的 hθ(x(i)) 也就是通过回归系数组合各属性值后再用sigmoid求出的对分类=1的概率估计

4、损失函数中的x,其实是样本的属性(特征),x的某个函数值才是式(3)中的x
这样就完全对应起来了。

为了不迷惑,可以捋一捋:
1、极大似然估计的是概率函数的参数,而不是直接估计机器学习算法中的回归系数或别的系数
2、极大似然估计中所谓的观测值,往往是分类算法中的样本分类标签
3、分类学习的目的是把分类结果(似然估计中的观测值,要预测的值)表示为样本属性的函数(线性的或者非线性的函数), X=h(x) ,此x非彼x
4、极大似然估计往往和最小化损失有很强的关联,如果 θ 是机器学习中分类函数或得分函数的函数(本例中θ直接等于分类函数)的话,那么它们可以互相转换

猜你喜欢

转载自blog.csdn.net/zhengwei223/article/details/79111783