在上一篇文章的最后,我们指出,参数估计是不可能穷尽讨论的,要想对各种各样的参数作出估计,就需要一定的参数估计方法。今天我们将讨论常用的点估计方法:矩估计、极大似然估计,它们各有优劣,但都很重要。由于本系列为我独自完成的,缺少审阅,如果有任何错误,欢迎在评论区中指出,谢谢

Part 1:矩法估计

矩法估计的重点就在于“矩”字,我们知道矩是概率分布的一种数字特征,可以分为原点矩和中心矩两种。对于随机变量\(X\)而言,其\(k\)阶原点矩和\(k\)阶中心矩为

\[a_k=\mathbb{E}(X^k),\quad m_k=\mathbb{E}[X-\mathbb{E}(X)]^k,
\]

特别地,一阶原点矩就是随机变量的期望,二阶中心矩就是随机变量的方差,由于\(\mathbb{E}(X-\mathbb{E}(X))=0\),所以我们不定义一阶中心矩。

实际生活中,我们不可能了解\(X\)的全貌,也就不可能通过积分来求\(X\)的矩,因而需要通过样本\((X_1,\cdots,X_n)\)来估计总体矩。一般地,由\(n\)个样本计算出的样本\(k\)阶原点矩样本\(k\)阶中心矩分别是

\[a_{n,k}=\frac{1}{n}\sum_{j=1}^{n}X_j^k,\quad m_{n,k}=\frac{1}{n}\sum_{j=1}^{n}(X_j-\bar X)^k.
\]

显然,它们都是统计量,因为给出样本之后它们都是可计算的。形式上,样本矩是对总体矩中元素的直接替换后求平均,因此总是比较容易计算的。容易验证,\(a_{n,k}\)是\(a_k\)的无偏估计,但\(m_{n,k}\)则不是。

特别地,\(a_{n,1}=\bar X\),

\[m_{n,2}=\frac{1}{n}\sum_{j=1}^{n}(X_j-\bar X)^2=\frac{n-1}{n}S^2\xlongequal{def}S_n^2,
\]

一阶样本原点矩就是样本均值,二阶样本中心矩却不是样本方差,而需要经过一定的调整,这点务必注意。这里也可以看到,由于\(S^2\)是\(\mathbb{D}(X)\)的无偏估计,\(S_n^2\)自然就不是了。

下面给出矩法估计的定义:设有总体分布族\(X\sim f(x;\theta)\),这里\(\theta\)是参数,\(g(\theta)\)是参数函数。如果\(g(\theta)\)可以被表示为某些总体矩的函数:

\[g(\theta)=G(a_1,\cdots,a_k,m_2,\cdots,m_k),
\]

则从\(X\)中抽取的简单随机样本可以计算相应的样本原点矩\(a_{n,k}\)和中心矩\(m_{n,k}\),替换掉\(G\)中的总体矩,就得到矩估计量

\[\hat g(\boldsymbol{X})=G(a_{n,1},\cdots,a_{n,k},m_{n,2},\cdots,m_{n,k}).
\]

看着很长的一段定义,其实体现出的思想很简单,就是将待估参数写成矩的函数,再用样本矩替换总体矩得到矩估计量。并且实践中,还可以遵循以下的原则:

  • 如果低阶矩可以解决问题,不要用高阶矩。这是因为低阶矩的计算总是比高阶矩更容易的。
  • 如果原点矩可以解决问题,不要用中心矩。这是因为中心矩既不好算,还是有偏估计。

运用矩法估计,我们可以很容易地得到一些总体矩存在的分布的参数点估计。下面举书上的例子——Maxwell分布为例,其总体密度为

\[p(x)=2\sqrt{\frac{\theta}{\pi}}e^{-\theta x^2}I_{x>0}.
\]

现在要对此参数\(g(\theta)=1/\theta\)作估计。用矩法估计的话,我们要求出总体矩,按照上面的原则,假设\(X\)服从Maxwell分布,则

\[a_1=\mathbb{E}(X)=2\sqrt{\frac{\theta}{\pi}}\int_0^{\infty}xe^{-\theta x^2}\mathrm{d}x=\frac{1}{\sqrt{\pi\theta}},
\]

显然有

\[g(\theta)=\frac{1}{\theta}=a_1^2\pi,
\]

所以其矩估计量为\(\hat g_1(\boldsymbol{X})=\pi\bar X^2\),简单快捷地求出了矩估计量。

但是,矩估计量唯一吗?我们不妨再往上计算一层,计算其二阶原点矩\(a_2\),它的计算比\(a_1\)稍微复杂一些,有

\[\begin{aligned}
a_2&=\mathbb{E}(X^2)=2\sqrt{\frac{\theta}{\pi}}\int_0^\infty x^2e^{-\theta x^2}\mathrm{d}x\\
&=2\sqrt{\frac{\theta}{\pi}}\int_0^\infty -\frac{x}{2\theta}\mathrm{d}(e^{-\theta x^2})\\
&=2\sqrt{\frac{\theta}{\pi}}\int_0^\infty e^{-\theta x^2}\cdot\frac{1}{2\theta}\mathrm{d}x\\
&=\frac{1}{2\theta},\\
g(\theta)&=\frac{1}{\theta}=2a_2,
\end{aligned}
\]

从这个角度来看,其矩估计量为\(\hat g_2(\boldsymbol{X})=\frac{2}{n}\sum_{j=1}^n X_j^2\)。

你不能说哪一种矩估计量错了,因为它们都是基于矩法计算得到的合理矩估计量,但是\(\hat g_1\ne \hat g_2\)是显然的,所以矩估计量是不唯一的。另外,由于两个矩估计量用到的都是原点矩,且次数都是一次,所以它们都是无偏的。这是矩估计的缺点之一——即得到的估计量不唯一,哪一个更好还有待于实践的选择。

现在我们来检验一下哪个统计量效果更好一些,假设参数\(\theta=2\)。为此,我们需要设法从Maxwell分布中抽样,抽取100000个样本,分成50组,每一组包含2000个样本。

如何从Maxwell分布中抽样是一个需要考虑的问题,使用MCMC抽样法,下面的函数是用于从Maxwell分布中抽样的:

p <- function(x, theta){
# Maxwell分布的密度函数,无正则化因子
return(exp(-theta*(x^2)))
} maxwell <- function(n, theta){
# 从参数为theta的Maxwell分布中抽取n个样本
buffer <- 10000
samples <- c()
x <- 1 # 初始值
for (i in 1:(buffer+n)){
y <- runif(1, x-0.5, x+0.5) # 极小邻域
h <- runif(1)
if (y > 0 && h < p(y,theta)/p(x,theta)){
x <- y
}
if (i > buffer){
samples[i-buffer] <- x
}
}
return(samples)
}

此程序是能够正常运行的,下图中,黑色为抽样核密度,红色为实际的密度曲线。

对于2000个一组的样本,计算其估计量的值,结果如下:

在样本容量为2000时,两个估计量的表现类似,精度都在\(\pm 0.1\)左右,不能说有多好;但对于我们的100000个样本,如果一起计算,则

\[\hat g_1(\boldsymbol{X})=0.5000618,\\
\hat g_2(\boldsymbol{X})=0.499744,
\]

效果都不错。

事实上,\(a_{n,k}\)总是\(a_k\)的无偏估计、强相合估计,所以这也成为了矩估计的优点,只要选择的矩是原点矩的话。但是,我们也可以看到即使样本容量多达2000,矩估计也偶然会出现20%的较大误差,因此矩估计的精度是难以解决的痛;并且,矩法估计要求总体矩一定是要存在的,对于柯西分布这类奇形怪状的分布,矩法估计就没法使用。

Part 2:极大似然估计

极大似然估计是另外一种参数点估计的方法,它采用的思路与矩估计的“直接替代”不同。矩估计更像是一种贪图方便的做法,采用直接替代法而不顾后果,这样虽然有无偏性和强相合性作为保证,但精度却无法考虑。极大似然估计源于事情发生的可能性,它总是在可选择的参数中,选择最有可能导致这个抽样结果发生的参数,作为参数的估计量。

如何量度这种事情发生的可能性呢?我们以离散情况为例,离散情况下,如果你抽取了一组样本\(\boldsymbol{X}=(X_1,\cdots,X_n)\),它的观测值是\((x_1,\cdots,x_n)\),则在参数为\(\theta\)的情况下,这组观测值发生的概率就是

\[\mathbb{P}(X_1=x_1,\cdots,X_n=x_n|\theta),
\]

既然不同的\(\theta\)对应着不同的发生概率,在发生概率和\(\theta\)之间就存在一个对应关系,这个关系就称为似然函数,记作\(L(\theta)\),即

\[L(\theta)=\mathbb{P}(X_1=x_1,\cdots,X_n=x_n|\theta).
\]

极大似然估计要做的,就是找到一个\(\theta\)使得\(L(\theta)\)最大,就这么简单。如果对于连续的情况,则用联合密度函数表示这个联合概率函数即可。总而言之,极大似然估计的要点,就是先写出似然函数来,似然函数与联合概率函数是形式上一致的,只是主元从\(\boldsymbol{x}\)变成了待估参数\(\theta\)。

依然以Maxwell分布为例,它的总体密度为

\[p(x)=2\sqrt{\frac{\theta}{\pi}}e^{-\theta x^2}I_{x>0}.
\]

所以似然函数就是联合密度函数的形式,写成

\[\begin{aligned}
L(\theta)&=2^n\left(\frac{\theta}{\pi} \right)^{n/2}\exp\left(-\theta\sum_{j=1}^n x_j^2 \right)I_{x_{(1)}>0}.
\end{aligned}
\]

要如何对这个函数求\(\theta\)的最大值?既然这里\(L(\theta)\)是可导的,显然对\(\theta\)求导最方便,但是对\(L(\theta)\)求导显然不太方便,注意到使\(L(\theta)\)最小的\(\theta\)值必然也使得\(\ln L(\theta)\)最小,所以我们完全可以对似然函数的对数求导。这个技巧过于常用,以至于人们直接给似然函数的对数\(\ln L(\theta)\)起了一个专门的名字:对数似然函数,记作\(l(\theta)\)。由于联合密度函数是总体密度的乘积,对数似然就是总体密度对数之和,经过降次,求导肯定更容易了。

在这里,

\[l(\theta)=n\ln 2+\frac{n}{2}\ln\theta-\frac{n}{2}\ln \pi-\theta\sum_{j=1}^n x_j^2+\ln I_{x_{(1)}>0}.
\]

和\(\theta\)无关的项可以直接视为常数,所以

\[l(\theta)=C+\frac{n}{2}\ln\theta-\theta\sum_{j=1}^n x_j^2,\\
\frac{\partial l(\theta)}{\partial\theta}=\frac{n}{2\theta}-\sum_{j=1}^n x_j^2.
\]

令这个偏导数为\(0\),就得到了\(\theta\)的极大似然估计量为

\[\hat\theta_{\text{MLE}}=\frac{n}{2\sum_{j=1}^n X_j^2}.
\]

但是,问题还没有解决,我们要求的是\((1/\theta)\)的极大似然估计,怎么把\(\theta\)的极大似然估计给求出来了?其实,参考这里极大似然估计的来源,只有\(\hat\theta_{\text{MLE}}\)能让似然函数的偏导数为\(0\)取到最大值,由链式法则,也只有\(1/\hat\theta_{\text{MLE}}\)能让似然函数对\(1/\theta\)的偏导数为\(0\),因此我们得到极大似然估计一个极为有用的性质:

  • 如果\(\hat\theta\)是\(\theta\)的极大似然估计,则\(g(\hat\theta)\)是\(g(\theta)\)的极大似然估计。

虽然这里对\(g\)有一定的约束,比如\(g\)可微之类的,但是一般情况下这样的约束都是可以满足的。因此,我们得到

\[\left(\frac{1}{\theta} \right)_{\text{MLE}}=\frac{2}{n}\sum_{j=1}^nX_j^2=\hat g_2(\boldsymbol{X}).
\]

可以看到,它的极大似然估计与矩法估计中,二阶矩对应的矩法估计一致。

不过实际上,极大似然估计并没有这么一帆风顺,有时候\(L(\theta),l(\theta)\)不一定可导,导数为\(0\)的点也不一定唯一(这两种情况一般发生在总体是均匀分布的时候),这时候要根据似然函数的性质灵活选择极大似然估计量。

需要注意的是,极大似然估计的无偏性、相合性都是没法保证的,为什么我们要使用它呢?原因很简单:它的原理很好解释,并且效果确实还不错。

Part 3:一个例题

截尾数据是之前一直被我们忽略的题目,这道题出自习题2的第26题,了解这道题还是很有必要的。

某电子元件服从指数分布\(E(1/\lambda)\),密度函数为

\[f(x)=\frac{1}{\lambda}e^{-\frac{x}{\lambda}}I_{x>0},
\]

从这批产品中抽取\(n\)个作寿命试验,规定到第\(r\)个电子元件失效时停止试验,这样获得前\(r\)个次序统计量\(X_{(1)}\le X_{(2)}\le \cdots\le X_{(r)}\)和电子元件的总试验时间

\[T=\sum_{i=1}^rX_{(i)}+(n-r)X_{(r)}.
\]

第一步,证明\(2T/\lambda \sim \chi^2_{2r}\),即证明\(T\sim \Gamma(r,\lambda)\)。注意到总体服从的分布是指数分布,具有无记忆性,这是本题考察的一大知识点,因此作如下变换:

\[Z_i=X_{(i)}-X_{(i-1)},\quad i=1,2,\cdots,n,X_{(0)}=0.
\]

这里要注意,虽然\(X_{(r+1)},\cdots,X_{(n)}\)我们没有观测到,但是它们是切实存在的量。\(X_{(1)},\cdots,X_{(n)}\)的联合密度函数为

\[f(x_{(1)},\cdots,x_{(n)})\frac{n!}{\lambda^n}\exp\left\{-\frac{1}{\lambda}\sum_{j=1}^{n}x_{(j)} \right\}I_{0<x_{(1)}\le \cdots\le x_{(n)}},
\]

\(X_{(1)},\cdots,X_{(n)}\)到\(Z_1,\cdots,Z_{n}\)变换的Jacobi行列式为\(|J|=1\),且\(X_{(j)}=Z_1+\cdots+Z_j\),所以

\[\begin{aligned}
&\quad g(z_1,z_2,\cdots,z_n)\\
&=\frac{n!}{\lambda^n}\exp\left\{-\frac{1}{\lambda}\sum_{j=1}^{n}x_{(j)} \right\}I_{0<x_{(1)}\le \cdots\le x_{(n)}}\\
&=\frac{n!}{\lambda^n}\exp\left\{-\frac{1}{\lambda}\sum_{j=1}^n(n+1-j)z_j \right\}I_{z_1>0,\cdots,z_n>0}\\
&=\prod_{j=1}^n\left(\frac{(n+1-j)}{\lambda}\exp\left\{-\frac{n+1-j}{\lambda} z_j\right\}I_{z_j>0}\right)\\
&=\prod_{j=1}^n g_j(z_j),
\end{aligned}
\]

这里

\[g_j(z_j)=\frac{(n+1-j)}{\lambda}e^{-\frac{n+1-j}{\lambda}z_j}I_{z_j>0},
\]

所以

\[Z_j\sim E\left(\frac{n+1-j}{\lambda} \right),\quad j=1,\cdots,n.\\
(n+1-j)Z_j\sim E(1/\lambda),\quad j=1,\cdots,n.
\]

于是

\[T=\sum_{i=1}^r X_{(i)}+(n-r)X_{(r)}=\sum_{j=1}^r(n+1-j)Z_j\sim \Gamma(r,1/\lambda).
\]

第二步,寻找\(\lambda\)的极大似然估计量。由于统计量是样本的函数,而我们实际上没有获得\(X_{(r+1)},\cdots,X_{(n)}\)的观测值,因此我们只能用\(X_{(1)},\cdots,X_{(r)}\)来构造统计量。事实上,我们得出了统计量\(T\)的分布,可以验证\(T\)是充分的,只要求\((X_{(1)},\cdots,X_{(r)})\)的联合密度,运用我们在次序统计量处说到的方法,可以得出(忽略示性函数部分)

\[\begin{aligned}
&\quad p(x_{(1)},\cdots,x_{(r)})\\
&=n!p(x_{(1)})\cdots p(x_{(r)})\left(\frac{[1-F(x_{(r)})]^{n-r}}{(n-r)!} \right)\\
&=\frac{n!}{(n-r)!}\frac{1}{\lambda^r}\exp\left\{-\frac{1}{\lambda}\sum_{j=1}^{r}x_{(j)} \right\}\exp\left\{-\frac{n-r}{\lambda}x_{(r)} \right\}\\
&=\frac{n!}{(n-r)!\lambda^r}\exp\left\{-\frac{1}{\lambda}\left[\sum_{j=1}^rx_{(j)}+(n-r)x_{(r)} \right] \right\}\\
&=\frac{n!}{(n-r)!\lambda^r}e^{-\frac{t}{\lambda}}.
\end{aligned}
\]

因此\(T\)是一个充分统计量。下寻找极大似然估计,对数似然函数为

\[l(\lambda)=\ln\left[\frac{n!}{(n-r)!} \right]-r\ln\lambda-\frac{t}{\lambda},
\]

这里参数空间(参数的取值范围)为\(\lambda>0\)。对其求偏导,有

\[\frac{\partial l(\lambda)}{\partial \lambda}=-\frac{r}{\lambda}+\frac{t}{\lambda^2}=0
\]

所以

\[\hat\lambda_{\text{MLE}}=\frac{T}{r}.
\]

如果要求指数分布参数\(1/\lambda\)的估计量,则利用极大似然估计的可映射性,得到

\[\widehat{\left(\frac{1}{\lambda}\right)}_{\text{MLE}}=\frac{r}{T}.
\]

数理统计7:矩法估计(MM)、极大似然估计(MLE),定时截尾实验的更多相关文章

  1. 理解极大似然估计(MLE)

    极大似然估计学习时总会觉得有点不可思议,为什么可以这么做,什么情况才可以用极大似然估计.本文旨在通俗理解MLE(Maximum Likelihood Estimate). 一.极大似然估计的思想与举例 ...

  2. 浅议极大似然估计(MLE)背后的思想原理

    1. 概率思想与归纳思想 0x1:归纳推理思想 所谓归纳推理思想,即是由某类事物的部分对象具有某些特征,推出该类事物的全部对象都具有这些特征的推理.抽象地来说,由个别事实概括出一般结论的推理称为归纳推 ...

  3. 机器学习(二十五)— 极大似然估计(MLE)、贝叶斯估计、最大后验概率估计(MAP)区别

    最大似然估计(Maximum likelihood estimation, 简称MLE)和最大后验概率估计(Maximum aposteriori estimation, 简称MAP)是很常用的两种参 ...

  4. 极大似然估计(MLE)

    基本思想 模型已定,参数未知 根据已存在的样本,挑选(求出)能让样本以最大概率发生的参数 极大似然估计和最小二乘法最大区别之一 极大似然需要知道概率密度函数(离散型叫分布律) 若总体X属离散型,其分布 ...

  5. MLE极大似然估计和EM最大期望算法

    机器学习十大算法之一:EM算法.能评得上十大之一,让人听起来觉得挺NB的.什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题.神为什么是神,因为神能做很多人做不了的事.那么EM ...

  6. (转载)极大似然估计&最大后验概率估计

    前言 不知看过多少次极大似然估计与最大后验概率估计的区别,但还是傻傻分不清楚.或是当时道行太浅,或是当时积累不够. 这次重游机器学习之路,看到李航老师<统计学习方法>中第一章关于经验风险最 ...

  7. [白话解析] 深入浅出 极大似然估计 & 极大后验概率估计

    [白话解析] 深入浅出极大似然估计 & 极大后验概率估计 0x00 摘要 本文在少用数学公式的情况下,尽量仅依靠感性直觉的思考来讲解 极大似然估计 & 极大后验概率估计,并且从名著中找 ...

  8. 机器学习基础系列--先验概率 后验概率 似然函数 最大似然估计(MLE) 最大后验概率(MAE) 以及贝叶斯公式的理解

    目录 机器学习基础 1. 概率和统计 2. 先验概率(由历史求因) 3. 后验概率(知果求因) 4. 似然函数(由因求果) 5. 有趣的野史--贝叶斯和似然之争-最大似然概率(MLE)-最大后验概率( ...

  9. 极大似然估计、贝叶斯估计、EM算法

    参考文献:http://blog.csdn.net/zouxy09/article/details/8537620 极大似然估计 已知样本满足某种概率分布,但是其中具体的参数不清楚,极大似然估计估计就 ...

随机推荐

  1. Spring Boot 计划任务中的一个“坑”

    计划任务功能在应用程序及其常见,使用Spring Boot的@Scheduled 注解可以很方便的定义一个计划任务.然而在实际开发过程当中还应该注意它的计划任务默认是放在容量为1个线程的线程池中执行, ...

  2. Zap简单使用

    前言 zap 是 uber 开源的一个日志记录的包, uber 在 go 的领域建树颇多, zap 更是优秀, 相比于自带的 log ,他有更多的功能, 当然, 最显眼的还是他很快, 本文介绍 zap ...

  3. 用js实现打印九九乘法表

    用js在打印九九乘法表 思考 在学习了流程控制和条件判断后,我们可以利用js打印各式各样的九九乘法表 不管是打印什么样三角形九九乘法表,我们都应该找到有规律的地方,比如第一列的数字是什么规律,第一行的 ...

  4. Nginx 实现动态负载均衡(Nginx-1.10.1 + Consul v0.6.4)

    一直也没有找到合适的类似Socat + Haproxy 的组合能用在Nginx,后来发现了Nginx的几个模块,但是也存在各种不足. 而且Nginx 在大流量的情况下nginx -s reload 是 ...

  5. http-请求和响应报文的构成

    请求的构成: 1)请求方法URI协议/版本 2)请求头(Request Header) 3)请求正文 1)请求方法URI协议/版本 Request URL: http://localhost:8080 ...

  6. kubernets之namespace

    一 命名空间的介绍以及作用 1  概念 为了方便不同部门之间对kubernets集群的使用,并且对其进行有效的隔离,kubernets提供了一种资源隔离手段,通过将各种不同资源分组到 一个区域,并且统 ...

  7. 记一道C语言编程题(C语言学习笔记)

    题目如下 解答如下 #include <stdio.h> #include<math.h> double Mysqrt(double n) { return sqrt(n); ...

  8. JMS监听Oracle AQ

    该文档中,oracle版本为11g,jdk版本1.8,java项目为maven构建的springboot项目,springboot的版本为2.1.6,并使用了定时任务来做AQ监听的重连功能,解决由于外 ...

  9. OLED的波形曲线、进度条、图片显示(STM32 HAL库 模拟SPI通信 5线OLED屏幕)详细篇

    少废话,先上效果图 屏幕显示效果         全家福 一.基础认识及引脚介绍 屏幕参数: 尺寸:0.96英寸 分辨率:128*64 驱动芯片:SSD1306 驱动接口协议:SPI 引脚说明: 二. ...

  10. JVM(三)从JVM源码角度看类加载器层级关系和双亲委派

    类加载器我们都知道有如下的继承结构,这个关系只是逻辑上的父子关系. 我们一直听说引导类加载器没有实体,为什么没有实体呢? 因为引导类加载器只是一段C++代码并不是什么实体类,所谓的引导类加载器就是那一 ...