指数族与广义线性模型
这篇笔记整理指数族、$b(\theta)$、canonical link 和 GLM 之间的关系。核心问题是:响应变量的分布如何决定均值与方差结构,而 link function 又如何把这种结构接到线性预测子上。
从线性回归到 GLM
普通线性回归处理的是连续响应变量。它通常写成:
$$ Y_i=\mu_i+\epsilon_i,\qquad \mu_i=x_i^\top\beta,\qquad \epsilon_i\sim N(0,\sigma^2). $$这里的核心想法很清楚:响应变量的条件均值 $\mu_i=E(Y_i\mid x_i)$ 可以由协变量的线性组合 $x_i^\top\beta$ 来解释。
但很多实际数据并不适合这种设定。比如一道题答对/答错是二元变量,均值其实是概率,必须落在 $[0,1]$。某段时间内事件发生次数是计数变量,均值必须大于 0。并且这些变量的方差也常常随均值变化:Bernoulli 的方差是 $\mu(1-\mu)$,Poisson 的方差是 $\mu$。
GLM 的目标就是扩展线性回归的思想。它保留“协变量通过线性预测子影响响应变量”的结构,同时允许响应变量来自不同类型的分布。
指数族形式与自然参数
GLM 常见的响应分布可以写成指数族形式:
$$ f(y_i\mid \theta_i,\phi)= \exp\left\{ \frac{y_i\theta_i-b(\theta_i)}{\phi} +c(y_i,\phi) \right\}. $$这里:
- $\theta_i$ 叫作 natural parameter 或 canonical parameter,是分布在指数族形式下最自然的参数尺度。
- $\phi$ 叫作 dispersion parameter 或 scale parameter,用来控制方差的整体大小。
- $b(\theta_i)$ 叫作 cumulant function,也常被理解为 log-normalizer。它是指数族里非常关键的函数,决定了均值和方差结构。
- $c(y_i,\phi)$ 主要负责把和 $y_i$、$\phi$ 有关的部分放进来,使整个表达式成为正确的概率质量函数或密度函数。
很多分布原本可以用均值参数 $\mu$ 来写,但为了放进统一的指数族形式,需要把参数换到一个更合适的尺度上。这个尺度就是 $\theta$。
以 Poisson 分布为例,原始形式是:
$$ P(Y=y)=\frac{e^{-\mu}\mu^y}{y!}. $$改写成指数形式:
$$ P(Y=y)= \exp\left\{y\log\mu-\mu-\log(y!)\right\}. $$令:
$$ \theta=\log\mu. $$就得到:
$$ P(Y=y)=\exp\left\{y\theta-e^\theta-\log(y!)\right\}. $$所以 Poisson 分布中:
$$ b(\theta)=e^\theta. $$Bernoulli 分布也类似。若 $Y\sim \operatorname{Bernoulli}(p)$,则:
$$ P(Y=y)=p^y(1-p)^{1-y}. $$把它整理成指数族形式,会得到:
$$ \theta=\log\frac{p}{1-p}. $$也就是说,Bernoulli 的自然参数是 log-odds。
因此,$\theta$ 可以理解为:为了把不同分布写进同一个指数族模板,我们选择的一种标准参数尺度。
累积函数的作用
$b(\theta)$ 是指数族形式里最重要的函数之一。它的作用可以分成三层来看。
第一层:保证表达式真的是一个概率分布。
对任意合法的概率分布,都必须满足:
$$ \sum_y f(y\mid \theta,\phi)=1 $$或在连续情形下:
$$ \int f(y\mid \theta,\phi),dy=1. $$指数族形式中,$y\theta$ 这一项会随着 $\theta$ 改变而改变整个概率质量的大小。如果没有 $b(\theta)$ 去校正,概率加总可能不等于 1。 因此,$b(\theta)$ 可以理解为 normalization 所需要的校正项。它把整个分布“压回”合法概率分布的范围内。
第二层:$b(\theta)$ 直接生成均值。
从指数族形式出发:
$$ f(y\mid \theta,\phi)= \exp\left\{ \frac{y\theta-b(\theta)}{\phi} +c(y,\phi) \right\}. $$因为所有概率加总为 1:
$$ \int f(y\mid \theta,\phi),dy=1. $$对 $\theta$ 求导:
$$ 0= \int \frac{y-b^{\prime}(\theta)}{\phi} f(y\mid \theta,\phi),dy. $$整理后得到:
$$ E(Y)-b^{\prime}(\theta)=0. $$所以:
$$ E(Y)=b^{\prime}(\theta). $$这说明 $b(\theta)$ 的一阶导数就是均值。换句话说,只要知道某个分布的 $b(\theta)$,就知道自然参数 $\theta$ 如何决定均值 $\mu$。
第三层:$b(\theta)$ 也生成方差。
继续看一阶导数:
$$ \frac{\partial \log f(y\mid \theta,\phi)}{\partial \theta} =\frac{y-b^{\prime}(\theta)}{\phi}. $$这个量叫 score。它反映的是,改变 $\theta$ 时,log likelihood 会怎样变化。
再对 $\theta$ 求一次导数:
$$ \frac{\partial^2 \log f(y\mid \theta,\phi)}{\partial \theta^2} =-\frac{b^{\prime\prime}(\theta)}{\phi}. $$利用标准 likelihood theory 中 Fisher information 的关系,可以得到:
$$ \operatorname{Var}(Y)=\phi b^{\prime\prime}(\theta). $$所以 $b(\theta)$ 的二阶导数决定方差结构。如果写成均值的函数,就是:
$$ \operatorname{Var}(Y)=\phi V(\mu), $$其中:
$$ V(\mu)=b^{\prime\prime}(\theta) $$在用 $\mu=b^{\prime}(\theta)$ 替换 $\theta$ 后,叫作 variance function。
这一点非常有实际意义。不同响应变量之所以需要不同的 GLM,不只是因为它们的取值范围不同,也因为它们的方差随均值变化的方式不同。
比如 Normal 分布中:
$$ b(\theta)=\frac{\theta^2}{2}. $$因此:
$$ b^{\prime}(\theta)=\theta,\qquad b^{\prime\prime}(\theta)=1. $$所以:
$$ \operatorname{Var}(Y)=\phi. $$这就是普通线性回归里的常方差结构。
Poisson 分布中:
$$ b(\theta)=e^\theta. $$因此:
$$ b^{\prime}(\theta)=e^\theta=\mu, \qquad b^{\prime\prime}(\theta)=e^\theta=\mu. $$所以:
$$ \operatorname{Var}(Y)=\phi\mu. $$标准 Poisson 里 $\phi=1$,于是:
$$ \operatorname{Var}(Y)=\mu. $$这说明 Poisson 模型天然假设均值越大,方差也越大,而且二者相等。如果真实数据的方差远大于均值,就会出现 overdispersion,这时可能需要 quasi-Poisson、negative binomial 或 random-effects 模型。
Bernoulli 分布中:
$$ b(\theta)=\log(1+e^\theta). $$因此:
$$ \begin{aligned} b^{\prime}(\theta)&=\frac{e^\theta}{1+e^\theta}=\mu,\\ b^{\prime\prime}(\theta)&=\mu(1-\mu). \end{aligned} $$所以:
$$ \operatorname{Var}(Y)=\mu(1-\mu). $$这个结果很直观:当概率接近 0 或 1 时,结果几乎确定,方差小;当概率接近 0.5 时,不确定性最大,方差最大。
因此,$b(\theta)$ 可以看作指数族分布的“均值—方差说明书”。它告诉我们两个核心问题:自然参数如何决定均值,以及该分布的方差应当如何随均值变化。
参数、均值与 link function
GLM 里有三个层次需要分开看:
- 分布参数是 $\theta_i$,它属于指数族分布本身。
- 条件均值是 $\mu_i=E(Y_i\mid x_i)$,指数族给出 $\mu_i=b^{\prime}(\theta_i)$。
- 线性预测子是 $\eta_i=x_i^\top\beta$。
GLM 通过 link function 把均值和线性预测子连接起来:
$$ g(\mu_i)=\eta_i=x_i^\top\beta. $$所以完整链条是:
$$ \theta_i \longrightarrow \mu_i=b^{\prime}(\theta_i) \longrightarrow g(\mu_i)=x_i^\top\beta. $$也可以从回归建模方向理解:
$$ x_i^\top\beta \longrightarrow \mu_i=g^{-1}(x_i^\top\beta) \longrightarrow \theta_i=(b^{\prime})^{-1}(\mu_i). $$这里 $b$ 属于响应分布,$g$ 属于建模选择。两者会在 canonical link 的情形下产生一个特别简洁的关系。
Canonical link 的定义正是来自这个关系。
指数族中有:
$$ \mu=b^{\prime}(\theta). $$把这个关系反过来:
$$ \theta=(b^{\prime})^{-1}(\mu). $$GLM 中 link function 是:
$$ g(\mu)=x^\top\beta. $$如果选择:
$$ g(\mu)=(b^{\prime})^{-1}(\mu), $$那么:
$$ g(\mu)=\theta. $$于是:
$$ x_i^\top\beta=\theta_i. $$这种 link function 叫作 canonical link。它的特点是让线性预测子直接等于自然参数:
$$ \eta_i=\theta_i. $$几个典型例子:
| 响应分布 | $b(\theta)$ | $\mu=b^{\prime}(\theta)$ | canonical link |
|---|---|---|---|
| Normal | $\theta^2/2$ | $\theta$ | $g(\mu)=\mu$ |
| Bernoulli | $\log(1+e^\theta)$ | $\frac{e^\theta}{1+e^\theta}$ | $g(\mu)=\log\frac{\mu}{1-\mu}$ |
| Poisson | $e^\theta$ | $e^\theta$ | $g(\mu)=\log\mu$ |
因此 logistic regression 的 logit link 很自然,因为 Bernoulli 的自然参数就是 log-odds:
$$ \theta=\log\frac{\mu}{1-\mu}. $$Poisson regression 的 log link 也很自然,因为 Poisson 的自然参数是:
$$ \theta=\log\mu. $$GLM 需要三部分:
$$ \begin{aligned} Y_i\mid x_i &\sim \text{exponential family},\\ \mu_i &= E(Y_i\mid x_i),\\ g(\mu_i) &= x_i^\top\beta. \end{aligned} $$指数族形式提供响应变量的随机部分,也就是 $Y_i\mid x_i$ 的条件分布。link function 提供均值和协变量之间的连接。线性预测子 $x_i^\top\beta$ 则保留了线性模型的可解释性。
所以 GLM 的核心并不是让 $Y_i$ 本身对 $x_i$ 线性,而是让响应变量的条件均值在某个合适尺度上对 $x_i$ 线性。
GLM 的主要理解
GLM 的第一个 insight 是统一性。普通线性回归、logistic regression、Poisson regression 可以放在同一个框架下理解。它们的差异主要来自响应分布、link function 和 variance function。
第二个 insight 是尊重响应变量的取值范围。二元响应的均值是概率,因此适合用 logit 或 probit link 把线性预测子映射到 $[0,1]$。计数响应的均值必须为正,因此 log link 很自然:
$$ \mu_i=\exp(x_i^\top\beta)>0. $$第三个 insight 是方差结构。GLM 不再默认所有响应变量都有常方差。Bernoulli、Poisson、Gamma 等分布都有自己的 mean-variance relationship,而这个关系正是通过 $b^{\prime\prime}(\theta)$ 或 $V(\mu)$ 体现出来的。
第四个 insight 是解释性。虽然均值经过了 link function 转换,但 $\beta$ 仍然有清晰解释。logistic regression 中,$\beta$ 描述协变量对 log-odds 的影响;Poisson regression 中,$\beta$ 描述协变量对 log-rate 的影响。
最后,指数族形式也带来统一的估计方法。因为 log-likelihood 的结构很规整,GLM 可以用 Fisher scoring 或 IRLS 进行估计。canonical link 的情况下,数学形式尤其简洁。
总结
$$ \begin{aligned} Y_i\mid x_i &\sim \text{exponential family},\\ \mu_i &= E(Y_i\mid x_i)=b^{\prime}(\theta_i),\\ \operatorname{Var}(Y_i\mid x_i) &= \phi b^{\prime\prime}(\theta_i)=\phi V(\mu_i),\\ g(\mu_i) &= x_i^\top\beta. \end{aligned} $$其中,$b(\theta)$ 来自响应分布,负责均值和方差结构;$g(\mu)$ 是 link function,负责把均值接到线性预测子上;canonical link 是特殊选择:
$$ g(\mu)=(b^{\prime})^{-1}(\mu), $$它让:
$$ x_i^\top\beta=\theta_i. $$GLM 把“线性建模”的思想推广到二元、计数、连续、比例等多种响应变量,同时保留概率分布、均值结构、方差结构和参数解释之间的清晰关系。