JhGU's personal site

贝叶斯视角下的线性回归

从普通最小二乘线性回归问题说起

从更为宏观的角度看,普通的线性回归问题,从本质上来说就是以“残差平方和”为统计量的一次多项式模型拟合问题,即 $$\mathbf{p}=\arg \min_{\mathbf{p}} \sum |y_i-f(x_i;\mathbf{p})|^2$$ 令其中的$\mathbf{p}=(a,b)$, $f(x;\mathbf{p})=ax+b$

又称为最小二乘法。非常简单直接,甚至于简单粗暴的思路,在各类工程问题中得到了广泛的应用。数学上可以证明,最小二乘法的结果和均一正态误差(即每一个$y$的测量值$y_i$的分布是以“真实的”$\hat{y}_i$为期望,统一的误差$\sigma$为标准差的正态分布)情况下的极大似然拟合是一致的。在很多情况下,对于$y_i$分布的假设往往是隐含的,不被显式指出的。

然而,当上述对于$y_i$的正态分布性质的隐含假设不再成立时,最小二乘尽管仍然可能是对于真实结果的一个足够良好的逼近,但其可解释性将会受到显著的损害。同时,当实际情况中$y_i$显著偏离正态分布,而在数据分析中又强加这一假定时,很可能会发现出现显著偏离模型的野值(野值是相对于给定的$y_i$的分布而言的,例如,如果$y_i$服从的实际上是t分布,而强行假定它符合正态分布,就可能观察到出现概率极小的测量值,因为t分布相对于正态分布有两个很长的尾巴)。

对于这些显著偏离模型的所谓野值,我们当然可以修正统计量,使得拟合结果更为稳健(即所谓稳健拟合),然而很多情况下这只是权宜之计。 此外,对于自变量和因变量都存在弥散的情况下,普通的最小二乘线性拟合尽管能稍作修改应用在此类问题上,但这种修改的可推广性很差,难以应用到更复杂的非线性模型中。

贝叶斯图模型框架下的线性回归建模

在贝叶斯统计的框架下,我们能够以更为自然、统一的方式来处理上述更为一般的回归问题。例如,如果我们希望用一次多项式去对一组自变量和因变量都存在测量误差的数据,我们可以进行如下的建模:

a~某一先验分布(可以假定为给定上下限的均匀分布)//一次项系数

b~某一先验分布(可以假定为给定上下限的均匀分布)//常数项系数

scat~某一先验分布(可以假定为给定上下限的均匀分布)//y的内禀弥散

xobs[i]~N(x[i],xerr[i])//xobs--x的观测值,x--x的实际值,xerr--x的测量误差

ym[i]=a*x[i]+b

y[i]=N(ym[i],intrscat)//y--y的实际值

yobs[i]~N(y[i],yerr[i])//yobs--y的观测值

上面所写的是BUGS伪代码,符号“~”代表~左边的变量服从~右边的具体概率分布。对于上述模型,我们可以发现:

  1. 各个变量之间存在两种依赖关系:确定性依赖(如ym[i]依赖于a,b,x[i])和随机性依赖(代表某一随机变量所符合的分布,如y[i]依赖于ym[i]和intrscat)
  2. 不存在循环依赖关系,即贝叶斯网络模型中的“无环”
  3. 某些随机变量是有观测值的,例如yobs[i],某些随机变量是没有观测值的,例如y[i]

我们可以把上述用公式表达的贝叶斯模型用图形表达出来

这张图上每一个节点(node)代表一个变量(a,b,x,y...),箭头从被依赖的变量指向被决定的变量。绿色的节点代表无观测值的随机(stochastic)节点,灰色的节点代表存在观测值的节点(包含随机的和决定性的)。唯一的白色节点ym(实际上是一组)是一个不存在观测值决定性节点。

吉布斯采样法和贝叶斯图模型的关系

贝叶斯图模型表达了一个多元的后验概率分布函数,其自变量就是由所有无观测值的随机节点组成的向量,其概率密度值(或者概率值,对于离散情况)就是所有无观测值的随机节点的概率密度(或者概率)之乘积(或者对数概率(密度)的和)。

所以,原则上我们只需要将概率图模型还原成一个巨大的连乘式,再用贝叶斯采样算法去采样,就能得到一个随机变量定义域上的样本,然后对这个样本进行统计,就能得到随机变量的统计特性。 然而,让我们重新审视上面那个贝叶斯图模型的图来发现一些新的东西。例如,我们很容易就会发现,在对y[i]进行采样的时候,y[i]的后验概率分布取决于intrscat的当前值、ym[i]的当前值以及obsy[i]的观测值(即y[i]的似然函数$p(obsy_i|y_i)$),而不需要去计算a、b、x[i]的概率。 又如,对x[i]进行采样的时候,只需要计算x[i]本身的先验概率$p(x_i)$、似然函数$p(obsx_i|x_i)$和$p(y_i|a,b,x_i)$,不需要计算$p(a)$、$p(b)$、$p({\rm intrscat})$、$p(obsy_i|y_i)$。

由此,我们得出结论:尽管我们可以写出一个巨大的概率连乘式,然后利用吉布斯采样算法进行直接的采样,但是利用贝叶斯图模型里的依赖关系可以大大降低所需的计算量。 体力不支,先写到这儿吧,下一篇准备用一个例子来阐述一下贝叶斯框架下的线性回归,如果有时间,还想写一下一般的贝叶斯建模方法。

参考文献:

Bayesian Methods for the Physical Sciences 作者:Stefano Andreon & Brian Weaver

Understanding Computational Bayesian Statistics 作者:Bolstad