一般线性模型(General Linear Model)

在线性回归中,我们有 $y|x;\theta\sim\mathcal{N}(\mu,\sigma^2)$;在逻辑回归中,我们有 $y|x;\theta\sim\text{Bernoulli}(\phi)$。其中,$\mu$ 和 $\phi$ 可以很好地定义为关于 $x$ 和 $\theta$ 的函数。下面,我们将说明线性回归、逻辑回归都是一般线性模型(General Linear Model)的特例。

指数族分布(Exponential Family Distributions)

在介绍GLM之前,我们先定义指数族分布。如果一类分布(参数不同)可以写成如下的形式,我们就说这类分布属于指数族分布
$$p(y;\eta)=b(y)\exp(\eta^TT(y)-a(\eta))\tag{1}$$
其中,$\eta$ 称为自然参数(natural parameter, also canonical parameter);$T(y)$ 称为充分统计量(sufficient statistic),在大多数情形下,$T(y)=y$;$a(\eta)$ 称为对数配分函数(log partition function)。式中$e^{-a(\eta)}$ 扮演着很重要的角色,它确保分布 $p(y;\eta)$ 关于 $y$ 的和或积分值为1。
一组固定的$T,a,b$就可以确定一类分布(比如伯努利分布),由 $\eta$ 确定分布的参数。当我们变化 $\eta$ 时,我们就能得到这类分布的不同实例。

上面的定义可能比较难懂,下面将推导伯努利分布、正态分布、泊松分布属于指数族分布。

伯努利分布

对于 $\text{Bernoulli}(\phi)$,我们有 $p(y=1;\phi)=\phi;\quad p(y=0;\phi)=1-\phi$
可以将伯努利分布写成:
$$\begin{array}{l}
p(y;\phi)&=&\phi^y(1-\phi)^{1-y} \\
&=& \exp(y\log\phi+(1-y)\log(1-\phi)) \\
&=& \exp\left(\left(\log\left(\cfrac{\phi}{1-\phi}\right)\right)y+\log(1-\phi)\right)
\end{array}$$
仔细对比可以发现,上式符合(1)式的结构。其中
$$\begin{array}{r,l}
\eta&=&\log\left(\cfrac{\phi}{1-\phi}\right) \\
T(y)&=& y \\
a(\eta)&=& -\log(1-\phi) \\
b(y) &=& 1
\end{array}$$
至此,我们说明了伯努利分布属于指数族分布。此外,用上面的第一个式子反解 $\phi$,可以得到 $\phi=1/(1+e^{-\eta})$,这正是Sigmoid函数!

正态分布

在线性回归中,$\sigma^2$的值对拟合 $\theta$ 没有任何影响,所以为了简化下面的推导,我们设$\theta^2=1$。于是就有
$$\begin{array}{l}
p(y;\mu)&=&\cfrac{1}{\sqrt{2\pi}}\exp\left(-\cfrac{1}{2}(y-\mu)^2\right) \\
&=& \cfrac{1}{\sqrt{2\pi}}\exp\left(-\cfrac{1}{2}y^2\right)\cdot\exp\left(\mu y-\cfrac{1}{2}\mu^2\right)
\end{array}$$
其中
$$\begin{array}{r,l}
\eta&=&\mu \\
T(y)&=&y \\
a(\eta)&=&\mu^2/2 \\
&=&\eta^2/2 \\
b(y)&=&(1/\sqrt{2\pi})\exp(-y^2/2)
\end{array}$$

如果要考虑$\sigma^2$参数,则可以将正态分布归到更一般的指数族分布:$p(y;\eta,\tau)=b(a,\tau)\exp((\eta^TT(y)-a(\eta))/c(\tau))$。其中$\tau$被称为散度参数(dispersion parameter)。对于正态分布,$c(\tau)=\sigma^2$。

泊松分布

对于泊松分布,有
$$\begin{array}{r,l}
p(y;\eta)&=&\cfrac{\lambda^y}{y !}e^{-\lambda} \\
&=&\cfrac{1}{y !}\exp(y\log\lambda-\lambda)
\end{array}$$
其中
$$\begin{array}{r,l}
\eta&=&\log\lambda \\
T(y)&=&y \\
a(\eta)&=&\lambda \\
b(y)&=&\cfrac{1}{y!}
\end{array}$$

构建一般线性模型(Constructing GLMs)

考虑一个分类或回归问题,我们要对给定的某个 $x$ 值预测出一个 $y$ 值。要为这个问题推导出一个GML,我们需要做出以下关于模型和 $y$ 的条件分布的假设:

  1. $y|x;\theta\sim\text{ExponentialFamily}(\eta)$
  2. 给定一个 $x$,我们的目标是预测出 $T(y)$ 的期望值。在大多数模型中,有 $T(y)=y$,所以,这意味着我们希望$h(x)$满足$h(x)=\mathrm{E}[y|x]$
  3. 自然参数 $\eta$ 和输入 $x$ 之间线性相关:$\eta=\theta^Tx$

第三条假设看上去似乎没有上面两条“合理”,我们不妨将其看作一种“设计技巧”。这样,可以让我们推导出一类非常优雅的学习算法,即GLM,还可以带来很多优良的性质。下面我们将说明线性回归和逻辑回归是如何作为GLM推导出来的。

最小二乘线性回归

我们认为 $y$ 在给定的 $x$ 服从的条件分布为正态分布$\mathcal{N}(\mu,\sigma^2)$,我们在上面已经证明了正态分布属于指数族分布,则就有
$$\begin{array}{r,l}
h_{\theta}(x)&=&E[y|x;\theta] \\
&=&\mu \\
&=&\eta \\
&=&\theta^Tx
\end{array}$$

逻辑回归

对于分类问题,$y\in \{0,1\}$,自然地想到用伯努利分布来作为条件分布,则有
$$\begin{array}{r,l}
h_{\theta}(x)&=&E[y|x;\theta] \\
&=&1\times\phi+0\times(1-\phi) \\
&=&\phi \\
&=&1/(1+e^{-\eta}) \\
&=&1/(1+e^{-\theta^Tx})
\end{array}$$


再介绍一些术语,将分布均值写成关于自然参数的函数 $g(\eta)=\mathrm{E}[T(y);\eta]$称为canonical response function;它的逆函数 $g^{-1}$ 称为canonical link function

参考资料

  1. 斯坦福大学机器学习公开课
  2. CS229 Lecture notes