下面介绍如何用最大似然估计(MLE)来估计负二项分布的参数,不过这里我们采用以“均值(mean)”和“离散度(dispersion)”来参数化的方式,这种参数化常用于处理过度离散(over-dispersion)问题。我们将详细介绍模型的构造、对数似然函数的推导以及如何求解参数估计。
通常,负二项分布有两种常见的参数化方式:一种是用成功次数 ( r ) 和成功概率 ( p ) 参数化,另一种是用均值 ( \mu ) 和离散度参数 ( k )(或称为大小参数、shape 参数)参数化。这里我们采用后者,其概率质量函数(PMF)写为
[P(Y = y) = \frac{\Gamma(y+k)}{\Gamma(k), y!} \left(\frac{\mu+k}\right)^k \left(\frac{\mu}{\mu+k}\right)^y,\quad y=0,1,2,\dots]
其中
设我们有独立同分布样本 ( y_1,y_2,\dots,y_n ),则整体似然函数为各个观测值概率的乘积:
[L(\mu,k) = \prod_^n \frac{\Gamma(y_i+k)}{\Gamma(k), y_i!} \left(\frac{\mu+k}\right)^k \left(\frac{\mu}{\mu+k}\right)^.]
为了便于求导,我们通常取对数,得到对数似然函数:
[\begin\ell(\mu,k) &= \log L(\mu,k) \&=\sum_^n \Biggl{ \log\Gamma(y_i+k) - \log\Gamma(k) - \log(y_i!) \&\quad\quad\quad +, k\log\left(\frac{\mu+k}\right) + y_i\log\left(\frac{\mu}{\mu+k}\right) \Biggr}.\end]
注意:其中的 (\log(y_i!)) 项与参数无关(对后续求导时不会产生影响),但通常还是保留写出。
对每个观测 ( y_i ) 来看,关于 (\mu) 的部分为
[k\log\left(\frac{\mu+k}\right) + y_i\log\left(\frac{\mu}{\mu+k}\right).]
对 (\mu) 求导时注意:
因此,单个观测的关于 (\mu) 的得分函数为
[\frac{\partial \ell_i}{\partial \mu} = -\frac{\mu+k} + \frac{\mu} - \frac{\mu+k}.]
合并第二和第三项,我们可以写为
[\frac{\partial \ell_i}{\partial \mu} = \frac{\mu} - \frac{y_i+k}{\mu+k}.]
将所有观测求和,得到总体得分函数
[\frac{\partial \ell}{\partial \mu} = \sum_^n \left[\frac{\mu} - \frac{y_i+k}{\mu+k}\right].]
将上式设为零:
[\sum_^n \left[\frac{\mu} - \frac{y_i+k}{\mu+k}\right] = 0.]
实际上可以发现,对每个 ( y_i ) 有
[\frac{\mu} - \frac{y_i+k}{\mu+k} = \frac{k(y_i-\mu)}{\mu(\mu+k)}.]
于是,总得分函数写为
[\frac{\partial \ell}{\partial \mu} = \frac{\mu(\mu+k)} \sum_^n (y_i-\mu) = 0.]
由于 ( \frac{\mu(\mu+k)} ) 不为零,要求
[\sum_^n (y_i-\mu) = 0 \quad \Longrightarrow \quad n\mu = \sum_^n y_i.]
这表明,关于 (\mu) 的 MLE 解为样本均值
[\boxed{\hat{\mu} = \bar = \frac{1}\sum_^n y_i.}]
我们对对数似然函数中含 ( k ) 的各项求导。对单个观测 ( y_i ),涉及 ( k ) 的部分为
[\log\Gamma(y_i+k) - \log\Gamma(k) + k\log\left(\frac{\mu+k}\right) + y_i\log\left(\frac{\mu}{\mu+k}\right).]
其中,最后一项不含 ( k )(因为 (\mu) 被视为常数,对 ( k ) 来说,只有 (\log(\mu+k)) 出现,但前面已出现过,我们统一求导)。具体来说:
综合起来,对单个 ( y_i ) 有
[\frac{\partial \ell_i}{\partial k} = \psi(y_i+k) - \psi(k) + \log k - \log(\mu+k) + 1 - \frac{\mu+k} - \frac{\mu+k}.]
整理一下,注意 ( \frac{\mu+k}+\frac{\mu+k}=\frac{y_i+k}{\mu+k} ),于是
[\frac{\partial \ell_i}{\partial k} = \psi(y_i+k) - \psi(k) + \log\frac{\mu+k} + 1 - \frac{y_i+k}{\mu+k}.]
总体得分函数为对所有 ( i ) 求和:
[\frac{\partial \ell}{\partial k} = \sum_^n \left[ \psi(y_i+k) - \psi(k) + \log\frac{\mu+k} + 1 - \frac{y_i+k}{\mu+k} \right].]
令
即有方程
\sum_{i=1}^n \left[ \psi(y_i+k) - \psi(k) + \log\frac{k}{\mu+k} + 1 - \frac{y_i+k}{\mu+k} \right] = 0.
注意:在这里我们已经得到了 (\hat{\mu}=\bar),可以将其代入上式。由于该方程涉及 digamma 函数和对数项,一般没有解析解,因此需要采用数值方法(如牛顿-拉夫森法、固定点迭代法等)来求解 ( k ) 的估计值。
在实际应用中,我们通常会:
许多统计软件(如 R 中的 glm.nb 函数或 Python 中的相关包)都内置了求解过程,直接返回 MLE 的参数估计值。
glm.nb
使用均值和离散度参数化的负二项分布,MLE 的估计过程主要包括:
这种从均值与离散度角度的解释,更直观地反映了负二项分布为何适用于那些方差大于均值的数据。