三、线性回归模型 (Linear Models for Regression)
3.1 线性基函数模型 (Linear Basis Function Models)
$$
y(\mathbf{x}, \mathbf{w})=w_{0}+\sum_{j=1}^{M-1} w_{j} \phi_{j}(\mathbf{x})
$$
其中
$\phi_j(x)$
是基函数 (basis functions),
$w_0$
为偏差参数 (bias parameter),令
$\phi_0(x)=1$
后,得到如下式子:
$$
y(\mathbf{x}, \mathbf{w})=\sum_{j=0}^{M-1} w_{j} \phi_{j}(\mathbf{x})=\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})
$$
基函数有多种形式,例如:
-
polynomials:
$\phi_j(x)=x^j$
-
Gaussians:
$\phi_{j}(x)=\exp {-\frac{(x-\mu_{j})^{2}}{2 s^{2}}}$
-
sigmoidal:
$\phi_{j}(x)=\sigma\left(\frac{x-\mu_{j}}{s}\right),\sigma(a)=\frac{1}{1+\exp (-a)}$
3.1.1 极大似然估计与最小二乘 (Maximum likelihood and least squares)
前提条件:
- 假设目标变量 (target variable)
$t$
等于判别式
$y(\mathbf{x}, \mathbf{w})$
加上高斯噪声
$$
t=y(\mathbf{x}, \mathbf{w})+\epsilon
$$
- 其中高斯噪声服从
$\mathcal{N}(0,\beta^{-1})$
,则目标变量
$t$
服从下述分布:
$$
p(t \mid \mathbf{x}, \mathbf{w}, \beta)=\mathcal{N}\left(t \mid y(\mathbf{x}, \mathbf{w}), \beta^{-1}\right)
$$
将数据量从单组扩展到多组,即
$\mathbf{X}=\left{\mathbf{x}{1}, \ldots, \mathbf{x}{N}\right},\mathbf{t}={t_1,…,t_N}$
,似然概率表示为:
$$
p(\mathbf{t} \mid \mathbf{X}, \mathbf{w}, \beta)=\prod_{n=1}^{N} \mathcal{N}\left(t_{n} \mid \mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right), \beta^{-1}\right)
$$
使用极大似然估计,可得如下推导式,其中
$E_{D}(\mathbf{w})=\frac{1}{2} \sum_{n=1}^{N}{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x}_{n})}^{2}$
为线性回归的最小二乘形式:
$$
\begin{aligned} &\ln p(\mathbf{t} \mid \mathbf{X}, \mathbf{w}, \beta)=\frac{N}{2} \ln \beta-\frac{N}{2} \ln (2 \pi)-\frac{\beta}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2}\\ &\nabla \ln p(\mathbf{t} \mid \mathbf{X}, \mathbf{w}, \beta)=\sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)^{\mathrm{T}}=0 \\ \end{aligned}
$$
求解后,可得如下结果:
$$
\begin{aligned} &\mathbf{w}_{\mathrm{ML}}=\left(\boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi}\right)^{-1} \boldsymbol{\Phi}^{\mathrm{T}} \mathbf{t} \\ & \boldsymbol{\Phi}=\left(\begin{array}{cccc} \phi_{0}\left(\mathbf{x}_{1}\right) & \phi_{1}\left(\mathbf{x}_{1}\right) & \cdots & \phi_{M-1}\left(\mathbf{x}_{1}\right) \\ \phi_{0}\left(\mathbf{x}_{2}\right) & \phi_{1}\left(\mathbf{x}_{2}\right) & \cdots & \phi_{M-1}\left(\mathbf{x}_{2}\right) \\ \vdots & \vdots & \ddots & \vdots \\ \phi_{0}\left(\mathbf{x}_{N}\right) & \phi_{1}\left(\mathbf{x}_{N}\right) & \cdots & \phi_{M-1}\left(\mathbf{x}_{N}\right) \end{array}\right) \end{aligned}
$$
其中
$\mathbf{\Phi}^{\dagger} \equiv\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}}$
被称为伪逆 (Moore-Penrose pseudo-inverse of the matrix
$\mathbf{\Phi}$
),另外可以发现
$\mathbf{w}_{\mathrm{ML}}$
的取值与
$\beta$
无关。
也可以对
$\beta$
求导,求出其极大似然估计值:
$$
\frac{1}{\beta_{\mathrm{ML}}}=\frac{1}{N} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}_{\mathrm{ML}}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2}
$$
最后,我们来研究下 $w_0$ 的求解,改写似然函数,加入 $w_0$:
$$
\ln p(\mathbf{t} \mid \mathbf{X}, \mathbf{w}, \beta)=\frac{N}{2} \ln \beta-\frac{N}{2} \ln (2 \pi)-\frac{\beta}{2} \sum_{n=1}^{N}\left\{t_{n}-w_{0}-\sum_{j=1}^{M-1} w_{j} \phi_{j}\left(\mathbf{x}_{n}\right)\right\}^{2}
$$
对
$w_0$
求导后可得其似然估计值:
$$
\begin{aligned} w_{0_{\mathrm{ML}}}&=\bar{t}-\sum_{j=1}^{M-1} w_{j} \overline{\phi_{j}} \\ \bar{t}&=\frac{1}{N} \sum_{n=1}^{N} t_{n}\\ \quad \overline{\phi_{j}}&=\frac{1}{N} \sum_{n=1}^{N} \phi_{j}\left(\mathbf{x}_{n}\right) \end{aligned}
$$
3.1.2 最小二乘的几何视角 (Geometry of least squares)
将
$\mathbf{t}=\left(t_{1}, \ldots, t_{N}\right)^{\mathrm{T}}$
看作是一个 N 维空间的向量,则
$\mathbf{\Phi}$
的每一列都可以看成是一个 N 维空间的向量。
进一步地,
$\mathbf{\Phi}$
中的 M 个 N 维空间的向量,在 N 维空间中张成 (span) 了一个超平面,而
$\mathbf{y}=\mathbf{\Phi}\mathbf{w}_{\mathrm{ML}}$
恰好是
$\mathbf{t}$
在该超平面上的投影,如下图所示:
接下来证明上述结论,首先如下两点已知:(
$\boldsymbol{\varphi}_{j}$
是
$\mathbf{\Phi}$
的第
$j$
列)
$$
\begin{aligned} & \mathbf{y}=\boldsymbol{\Phi} \mathbf{w}_{\mathrm{ML}}=\mathbf{\Phi}\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}} \mathbf{t} \\ & \mathbf{\Phi}\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}} \boldsymbol{\varphi}_{j}=\left[\mathbf{\Phi}\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right]_{j}=\boldsymbol{\varphi}_{j} \end{aligned}
$$
接下来证明
$\mathbf{y}-\mathbf{t}$
与
$\boldsymbol{\varphi}_{j}$
正交:
$$
(\mathbf{y}-\mathbf{t})^{\mathrm{T}} \boldsymbol{\varphi}_{j}=\left(\boldsymbol{\Phi} \mathbf{w}_{\mathrm{ML}}-\mathbf{t}\right)^{\mathrm{T}} \boldsymbol{\varphi}_{j}=\mathbf{t}^{\mathrm{T}}\left(\mathbf{\Phi}\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}}-\mathbf{I}\right)^{\mathrm{T}} \boldsymbol{\varphi}_{j}=0
$$
因此
$\mathbf{y}-\mathbf{t}$
垂直于由
$\boldsymbol{\varphi}_{j}$
张成 (span) 的超平面,证明完毕。
3.1.3 序列化学习 (Sequential learning)
利用随机梯度下降来更新
$\mathbf{w}$
,令
$E_n=\frac{1}{2} \left (t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right )^{2}$
(先前极大似然估计中在求解
$\mathbf{w}$
时与
$\mathbf{x}_n$
相关的部分),则随机梯度下降的过程如下:
$$
\begin{aligned} & \mathbf{w}^{(\tau+1)}=\mathbf{w}^{(\tau)}-\eta \nabla E_{n}\\ & \mathbf{w}^{(\tau+1)}=\mathbf{w}^{(\tau)}+\eta\left(t_{n}-\mathbf{w}^{(\tau) \mathrm{T}} \boldsymbol{\phi}(\mathbf{x_n})\right) \boldsymbol{\phi}(\mathbf{x_n}) \end{aligned}
$$
3.1.4 正则化最小二乘 (Regularized least squares)
之前从极大似然估计中,我们推导出线性回归的最小二乘形式为:
$$
E_{D}(\mathbf{w})=\frac{1}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2}
$$
如今,对其加上约束项
$E_{W}(\mathbf{w})=\frac{1}{2} \mathbf{w}^{\mathrm{T}} \mathbf{w}$
,得到:
$$
\frac{1}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2}+\frac{\lambda}{2} \mathbf{w}^{\mathrm{T}} \mathbf{w}
$$
此种正则项比较常见,在机器学习中被称作权重衰减 (weight decay),在统计中被称作参数收缩 (parameter shrinkage),因此此正则项会使得优化的过程中,权重值朝 0 不断衰减。
求解上述正则化后的式子,得到:
$$
\mathbf{w}=\left(\lambda \mathbf{I}+\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}} \mathbf{t}
$$
接下来引入不同形式的正则项,讨论更泛化的形式:
$$
\frac{1}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2}+\frac{\lambda}{2} \sum_{j=1}^{M}\left|w_{j}\right|^{q}
$$
上述式子的优化可以进行如下转换 (可根据 KKT 条件进行证明):
$$
\begin{aligned} \min & \ \ \frac{1}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2} \\ s.t.& \ \ \sum_{j=1}^{M}\left|w_{j}\right|^{q} \leqslant \eta \\ \end{aligned}
$$
接下来以
$q=1$
和
$q=2$
为例,形象化地理解两种正则项的区别。观察下图,蓝线为目标函数的等高线,黄色区域为条件所限制的区域,等高线与合法区域的交点则为最优点。因此,当
$q=1$
时,最优点较之
$q=2$
更为稀疏,即很多维为 0。
3.1.5 多输出 (Multiple outputs)
接下来考虑 multi-label 的回归问题,即每一组数据有
$K$
个输出。
将
$\mathbf{W}$
扩展为
$M \times K$
的矩阵,则模型输出形式如下:
$$
\mathbf{y}(\mathbf{x}, \mathbf{w})=\mathbf{W}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})
$$
接下来采用与之前极大似然估计相同的方式进行最优值求解:(矩阵求导参考)
进一步考虑每一个 label 的输出,得到:
$$
\mathbf{w}_{k}=\left(\mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{\mathrm{T}} \mathbf{t}_{k}=\mathbf{\Phi}^{\dagger} \mathbf{t}_{k}
$$
上述式子表明求解不同 label 对应的
$\mathbf{w}_k$
时,只需要
$\mathbf{\Phi}^{\dagger}$
与当前 label 的信息
$\mathbf{t}_{k}$
,即不同 label 的求解过程可以解偶 (decouple)。
另外可以发现
$\mathbf{W}_{\mathrm{ML}}$
与一开始假设的高斯噪声的协方差无关。这一点并不难理解,因为在先前 2.3.4 高斯极大似然估计中,已经均值的估计值与协方差无关,而
$\mathbf{W}_{\mathrm{ML}}$
又仅与均值有关。
3.2 偏差-方差分解 (The Bias-Variance Decomposition)
在回归问题中,定义平方损失的期望如下:
$$
\mathbb{E}[y(\mathbf{x})]=\iint\{y(\mathbf{x})-t\}^{2} p(\mathbf{x}, t) \mathrm{d} \mathbf{x} \mathrm{d} t
$$
对其使用欧拉-拉格朗日公式(详情见 1.5.5 节),得到
$y(\mathbf{x})$
的最优解
$h(\mathbf{x})$
:
$$
h(\mathbf{x})=\mathbb{E}[t \mid \mathbf{x}]=\int t p(t \mid \mathbf{x}) \mathrm{d} t
$$
因此平方损失的期望可以修改为(详情见 1.5.5 节):
$$
\mathbb{E}[L]=\int\{y(\mathbf{x})-h(\mathbf{x})\}^{2} p(\mathbf{x}) \mathrm{d} \mathbf{x}+\iint\{h(\mathbf{x})-t\}^{2} p(\mathbf{x}, t) \mathrm{d} \mathbf{x} \mathrm{d} t
$$
在实际使用中,我们通过数据集
$\mathcal{D}$
来确定
$y(\mathbf{x})$
,因此
${y(\mathbf{x})-h(\mathbf{x})}^{2}$
修改为:
$$
\{y(\mathbf{x} ; \mathcal{D})-h(\mathbf{x})\}^{2}
$$
将其进一步拆分,得:
$$
\begin{array}{l} &\quad \left\{y(\mathbf{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]+\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]-h(\mathbf{x})\right\}^{2} \\ &=\left\{y(\mathbf{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]\right\}^{2}+\left\{\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]-h(\mathbf{x})\right\}^{2}+ \\ &\quad 2\left\{y(\mathbf{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]\right\}\left\{\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]-h(\mathbf{x})\right\} \end{array}
$$
因此可以得到:
$$
\begin{array}{l} \mathbb{E}_{\mathcal{D}}\left[\{y(\mathbf{x} ; \mathcal{D})-h(\mathbf{x})\}^{2}\right] \\ \quad=\underbrace{\left\{\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]-h(\mathbf{x})\right\}^{2}}_{\text {(bias) }^{2}}+\underbrace{\mathbb{E}_{\mathcal{D}}\left[\left\{y(\mathbf{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]\right\}^{2}\right]}_{\text {variance }} \end{array}
$$
将
$\mathbb{E}_{\mathcal{D}}\left[{y(\mathbf{x} ; \mathcal{D})-h(\mathbf{x})}^{2}\right]$
带回至
$\mathbb{E}[L]$
中,得:
$$
\begin{aligned} & \text { expected loss }=(\text { bias })^{2}+\text { variance }+\text { noise } \\ & (\text { bias })^{2}=\int\left\{\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]-h(\mathbf{x})\right\}^{2} p(\mathbf{x}) \mathrm{d} \mathbf{x} \\ & \text { variance }=\int \mathbb{E}_{\mathcal{D}}\left[\left\{y(\mathbf{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\mathbf{x} ; \mathcal{D})]\right\}^{2}\right] p(\mathbf{x}) \mathrm{d} \mathbf{x} \\ & \text { noise }=\iint\{h(\mathbf{x})-t\}^{2} p(\mathbf{x}, t) \mathrm{d} \mathbf{x} \mathrm{d} t \end{aligned}
$$
接下来进行实验,同一组数据集用集成的方法取出 100 份,每一份都对应一个分类器
$y(\mathbf{x} ; \mathcal{D})$
,最后将所有分类器取平均来拟合函数。另外,用
$\lambda$
来度量 bias 和 variance 的权重,其中
$\lambda$
越大,variance 权重越大。
在上图中,第一行 variance 权重最大,因此左边图中每条曲线预测数值波动较小,但由于 bias 权重小,因此右边图中,均值结果(红色)较真实分布(绿色)差距大。第三行 variance 权重最小,与第一行形成对比。
另外,
$\lambda$
的取值对拟合效果的影响也可以见下图:
当
$\lambda$
很大时,variance 很小;当
$\lambda$
很小时,bias 很小。另外,bias 和 variance 组合最小值所选取的
$\lambda$
与 test error 最小时所对应的位置很接近。
最后,bias-variance 分解基于多个集成数据集的平均,但实际应用中考虑一个完整的数据集效果通常更好,因此具有一定的局限性。
3.3 贝叶斯线性回归 (Bayesian Linear Regression)
贝叶斯线性回归能够避免极大似然估计所带来的过拟合,也可以使用训练数据自动确定模型复杂度。
3.3.1 参数分布 (Parameter distribution)
使用共轭先验的方式确定参数
$\mathbf{w}$
的后验概率:(假设
$\beta$
已知)
$$
\begin{aligned} & [似然]: \quad p(\mathbf{t} \mid \mathbf{X}, \mathbf{w}, \beta)=\prod_{n=1}^{N} \mathcal{N}\left(t_{n} \mid \mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right), \beta^{-1}\right)\\ & [先验]: \quad p(\mathbf{w})=\mathcal{N}\left(\mathbf{w} \mid \mathbf{m}_{0}, \mathbf{S}_{0}\right)\\ & [后验]: \quad p(\mathbf{w} \mid \mathbf{t})=\mathcal{N}\left(\mathbf{w} \mid \mathbf{m}_{N}, \mathbf{S}_{N}\right) \\ & \quad \quad \quad \quad \begin{aligned} \mathbf{m}_{N} &=\mathbf{S}_{N}\left(\mathbf{S}_{0}^{-1} \mathbf{m}_{0}+\beta \mathbf{\Phi}^{\mathrm{T}} \mathbf{t}\right) \\ \mathbf{S}_{N}^{-1} &=\mathbf{S}_{0}^{-1}+\beta \boldsymbol{\Phi}^{\mathrm{T}} \mathbf{\Phi} \end{aligned} \end{aligned}
$$
该后验概率估计也可以比较容易地转换为在线学习,每当获取一个新数据,则将当前后验作为先验,并重新求后验:
$$
\begin{aligned} & [似然]: \quad p\left(t_{N+1} \mid \mathbf{x}_{N+1}, \mathbf{w}\right)=\left(\frac{\beta}{2 \pi}\right)^{1 / 2} \exp \left(-\frac{\beta}{2}\left(t_{N+1}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}_{N+1}\right)^{2}\right)\\ & [先验]: \quad p(\mathbf{w})=\mathcal{N}\left(\mathbf{w} \mid \mathbf{m}_{N}, \mathbf{S}_{N}\right)\\ & [后验]: \quad p\left(\mathbf{w} \mid t_{N+1}, \mathbf{x}_{N+1}, \mathbf{m}_{N}, \mathbf{S}_{N}\right)=\mathcal{N}\left(\mathbf{w} \mid \mathbf{m}_{N+1}, \mathbf{S}_{N+1}\right) \\ & \quad \quad \quad \quad \mathbf{m}_{N+1}=\mathbf{S}_{N+1}\left(\mathbf{S}_{N}^{-1} \mathbf{m}_{N}+\beta \boldsymbol{\phi}_{N+1} t_{N+1}\right) \\ & \quad \quad \quad \quad \mathbf{S}_{N+1}^{-1}=\mathbf{S}_{N}^{-1}+\beta \boldsymbol{\phi}_{N+1} \boldsymbol{\phi}_{N+1}^{\mathrm{T}} \end{aligned}
$$
接下来用图像进行直观展示,先令先验概率
$p(\mathbf{w} \mid \alpha)=\mathcal{N}\left(\mathbf{w} \mid \mathbf{0}, \alpha^{-1} \mathbf{I}\right)$
,则后验的 log 形式如下:
$$
\ln p(\mathbf{w} \mid \mathbf{t})=-\frac{\beta}{2} \sum_{n=1}^{N}\left\{t_{n}-\mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right)\right\}^{2}-\frac{\alpha}{2} \mathbf{w}^{\mathrm{T}} \mathbf{w}+\mathrm{const}
$$
与带正则项的最小二乘形式一致。
考虑线性模型
$y(x, \mathbf{w})=w_{0}+w_{1} x$
,其数据由
$f(x, \mathbf{a})=a_{0}+a_{1} x$
加上高斯噪声(标准差为 0.2)得到,其中 x 从均匀分布中采样得到。假设已知高斯噪声,即
$\beta=(1 / 0.2)^{2}=25$
,得到下图:
其中每一行代表新拿到了一个数据点(蓝色圆圈),第三列红色的线来自第二列后验分布的随机采样。每一列的似然均只包括一个数据点(因此分布呈条状),每一列的后验分布则来自上一列的后验分布 * 当前列的似然。
观察上图,不难发现,随着数据点的增加,后验分布越来越紧密,接近于真实值,且对数据点的拟合越发精确。
3.3.2 预测分布 (Predictive distribution)
预测值的概率分布如下:
$$
p(t \mid \mathbf{t}, \alpha, \beta)=\int p(t \mid \mathbf{w}, \beta) p(\mathbf{w} \mid \mathbf{t}, \alpha, \beta) \mathrm{d} \mathbf{w}
$$
已知
$p(\mathbf{w})$
、
$p(t|\mathbf{w})$
求
$p(t)$
,与先前在「2.3.2 边缘高斯分布」中讨论的一致,
$p(t \mid \mathbf{t}, \alpha, \beta)$
求解如下:
$$
\begin{aligned} p(t \mid \mathbf{x}, \mathbf{t}, \alpha, \beta) &=\int \mathrm{N}\left(t \mid \boldsymbol{\phi}(\mathbf{x})^{\mathrm{T}} \mathbf{w}, \beta^{-1}\right) \mathrm{N}\left(\mathbf{w} \mid \mathbf{m}_{N}, \mathbf{S}_{N}\right) \mathrm{d} \mathbf{w} \\ &=\mathrm{N}\left(t \mid \mathbf{m}_{N}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x}), \sigma_{N}^{2}(\mathbf{x})\right) \\ \sigma_{N}^{2}(\mathbf{x})=\frac{1}{\beta}+&\phi (\mathbf{x})^{\mathrm{T}} \mathbf{S}_{N} \boldsymbol{\phi}(\mathbf{x}) \end{aligned}
$$
另外,随着数据集不断变大,后验分布的不确定性(
$\sigma^2(x)$
)就会不断降低,即
$\sigma_{N+1}^{2}(\mathbf{x}) \leqslant \sigma_{N}^{2}(\mathbf{x})$
,证明如下:
具体实验结果如下:
其中绿线为真实分布,红线为每一个 x 对应分布的均值,红色区域表示标准差范围。可以发现,随着已知数据点的增多,不确定性(红色区域)越发减少;并且在数据点附近位置,不确定性小于无数据点位置。
另外根据
$\mathbf{w}$
的分布,随机取样
$\mathbf{w}$
,得到下图:
观察上图,也可发现随着数据点的增多,拟合曲线的不确定性在下降。
由于高斯是局部基函数(围绕均值分布,离均值越远值越小,相比之下多项式是全局基函数),因此模型认为基函数附近区域的预测非常准,这通常不是我们要的结果。之后会介绍高斯过程(Gaussian process)来解决这一问题。
最后,如果
$\mathbf{w}$
和
$\beta$
均未知,则共轭先验
$p(\mathbf{w},\beta)$
将服从 Gaussian-gamma 分布,其预测分布则为 t-分布。
3.3.3 等效核 (Equivalent kernel)
令先验概率
$p(\mathbf{w} \mid \alpha)=\mathrm{N}\left(\mathbf{w} \mid \mathbf{0}, \alpha^{-1} \mathbf{I}\right)$
,则
$p(\mathbf{w} \mid \mathbf{t})=\mathrm{N}(\mathbf{w} \mid \mathbf{m}_{N}, \mathbf{S}_{N})$
中的
$\mathbf{m}_{N}=\beta \mathbf{S}_{N} \mathbf{\Phi}^{\mathrm{T}} \mathbf{t}$
,
$\mathbf{S}_{N}^{-1}=\alpha \mathbf{I}+\beta \mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}$
。对于
$y(\mathbf{x}, \mathbf{w})$
,取
$\mathbf{w}=\mathbf{m}_{N}$
,得到:
$$
y\left(\mathbf{x}, \mathbf{m}_{N}\right)=\mathbf{m}_{N}^{\mathrm{T}} \boldsymbol{\phi}(\mathbf{x})=\beta \boldsymbol{\phi}(\mathbf{x})^{\mathrm{T}} \mathbf{S}_{N} \boldsymbol{\Phi}^{\mathrm{T}} \mathbf{t}=\sum_{n=1}^{N} \beta \boldsymbol{\phi}(\mathbf{x})^{\mathrm{T}} \mathbf{S}_{N} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right) t_{n}
$$
使用等效核形式表示,即:
$$
\begin{aligned} y\left(\mathbf{x}, \mathbf{m}_{N}\right)&=\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right) t_{n} \\ k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)&=\beta \boldsymbol{\phi}(\mathbf{x})^{\mathrm{T}} \mathbf{S}_{N} \boldsymbol{\phi}\left(\mathbf{x}^{\prime}\right) \end{aligned}
$$
其中
$k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)$
称为平滑矩阵 (smoother matrix) 或等效核 (equivalent kernel)。
选用不同的基函数,查看等效核的性质:
可以发现无论选取什么基函数,当
$\mathbf{x}$
固定时,
$k\left(\mathbf{x}, \mathbf{x}^{\prime}\right)$
的函数图像呈现单峰状。
另外,分析
$y(\mathbf{x}), y\left(\mathbf{x}^{\prime}\right)$
相关性,即求取
$\operatorname{cov}\left[y(\mathbf{x}), y\left(\mathbf{x}^{\prime}\right)\right]$
:
$$
\begin{aligned} \operatorname{cov}\left[y(\mathbf{x}), y\left(\mathbf{x}^{\prime}\right)\right] &=\operatorname{cov}\left[\boldsymbol{\phi}(\mathbf{x})^{\mathrm{T}} \mathbf{w}, \mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}^{\prime}\right)\right] \\ &=\boldsymbol{\phi}(\mathbf{x})^{\mathrm{T}} \mathbf{S}_{N} \boldsymbol{\phi}\left(\mathbf{x}^{\prime}\right)=\beta^{-1} k\left(\mathbf{x}, \mathbf{x}^{\prime}\right) \end{aligned}
$$
根据协方差,我们可以发现
$\mathbf{x}$
的预测值与其附近点的预测值相关度较高。
另外,根据
$y\left(\mathbf{x}, \mathbf{m}_{N}\right)=\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right) t_{n}$
,我们也可以使用高斯过程 (Gaussian processes) 方法,通过直接定义等效核(其分布具有局部性,localized kernel)的方式对数据进行预测,其中
$k\left(\mathbf{x}, \mathbf{x}_{n}\right)$
可视为每个数据点的权重,满足:
$$
\sum_{n=1}^{N} k\left(\mathbf{x}, \mathbf{x}_{n}\right)=1
$$
最后,等效核也可以定义为如下形式:
$$
\begin{aligned} k(\mathbf{x}, \mathbf{z})&=\psi(\mathbf{x})^{\mathrm{T}} \boldsymbol{\psi}(\mathbf{z}) \\ \boldsymbol{\psi}(\mathbf{x})&=\beta^{1 / 2} \mathbf{S}_{N}^{1 / 2} \phi(\mathbf{x}) \end{aligned}
$$
3.4 贝叶斯模型比较 (Bayesian Model Comparison)
使用贝叶斯方法进行比较,首先需要假设所有模型的先验分布相同,即
$p\left(\mathcal{M}_{i}\right)$
一致,对应的后验分布如下:
$$
p\left(\mathcal{M}_{i} \mid \mathcal{D}\right) \propto p\left(\mathcal{M}_{i}\right) p\left(\mathcal{D} \mid \mathcal{M}_{i}\right)
$$
其中主要关注
$p\left(\mathcal{D} \mid \mathcal{M}_{i}\right)$
,即模型证据 (model evidence),也被称为边缘似然 (marginal likelihood)。在此基础上,引入贝叶斯因子 (Bayes factor),即:
$$
\frac{p\left(\mathcal{D} \mid \mathcal{M}_{i}\right)}{p\left(\mathcal{D} \mid \mathcal{M}_{j}\right)}
$$
得知模型后验分布后,即可得到预测分布 (predictive distribution):
$$
p(t \mid \mathbf{x}, \mathcal{D})=\sum_{i=1}^{L} p\left(t \mid \mathbf{x}, \mathcal{M}_{i}, \mathcal{D}\right) p\left(\mathcal{M}_{i} \mid \mathcal{D}\right)
$$
该分布也可视为混合分布 (mixture distribution)。当然也可以选择
$\underset{\mathcal{M}_i}{\arg} \max p\left(\mathcal{M}_{i} \mid \mathcal{D}\right)$
作为预测模型,此过程为模型选择 (model selection)。
接下来我们关注模型证据的求解:
$$
p\left(\mathcal{D} \mid \mathcal{M}_{i}\right)=\int p\left(\mathcal{D} \mid \mathbf{w}, \mathcal{M}_{i}\right) p\left(\mathbf{w} \mid \mathcal{M}_{i}\right) \mathrm{d} \mathbf{w}
$$
值得注意的是,模型证据也可作为参数
$\mathbf{w}$
后验分布的归一化系数:
$$
p\left(\mathbf{w} \mid \mathcal{D}, \mathcal{M}_{i}\right)=\frac{p\left(\mathcal{D} \mid \mathbf{w}, \mathcal{M}_{i}\right) p\left(\mathbf{w} \mid \mathcal{M}_{i}\right)}{p\left(\mathcal{D} \mid \mathcal{M}_{i}\right)}
$$
回到模型证据的求解,假设
$p(\mathcal{D} \mid \mathbf{w}, \mathcal{M}_{i})$
的分布集中于
$w_{\mathrm{MAP}}$
附近,其宽度为
$\Delta w_{\text {posterior }}$
;另外
$w$
的先验分布非常平坦,其宽度为
$\Delta w_{\text {prior }}$
。因此模型证据可以做如下近似:
$$
p(\mathcal{D}\mid \mathcal{M}_{i})=\int p(\mathcal{D} \mid w,\mathcal{M}_{i}) p(w\mid \mathcal{M}_{i}) \mathrm{d} w \simeq p\left(\mathcal{D} \mid w_{\mathrm{MAP}},\mathcal{M}_{i}\right) \frac{\Delta w_{\text {posterior }}}{\Delta w_{\text {prior }}}
$$
对其取 log,得到:
$$
\ln p(\mathcal{D} \mid \mathcal{M}_i) \simeq \ln p\left(\mathcal{D} \mid w_{\mathrm{MAP}},\mathcal{M}_i\right)+\ln \left(\frac{\Delta w_{\text {posterior }}}{\Delta w_{\text {prior }}}\right)
$$
将
$w$
从一维扩展到
$H$
维,假设每一维的
$\displaystyle\frac{\Delta w_{\text {posterior }}}{\Delta w_{\text {prior }}}$
一样大,则得到:
$$
\ln p(\mathcal{D} \mid \mathcal{M}_i) \simeq \ln p\left(\mathcal{D} \mid \mathbf{w}_{\mathrm{MAP}},\mathcal{M}_i\right)+H\ln \left(\frac{\Delta w_{\text {posterior }}}{\Delta w_{\text {prior }}}\right)
$$
其中第一项表示模型参数对给定数据的拟合能力,第二项则为模型复杂度的惩罚项(负数)。因为
$\Delta w_{\text {posterior }}<\Delta w_{\text {prior }}$
,即
$H$
越大或者模型拟合能力越强 (
$\Delta w_{\text {posterior }}$
越小),则惩罚项绝对值越大。
以下图为例,
$\mathcal{M}_1$
到
$\mathcal{M}_3$
,模型复杂度不断上升,即
$\mathcal{M}_1$
的拟合能力更弱,因此生成的数据集范围更小,
$\mathcal{M}_3$
则与其相反。假设数据集为
$\mathcal{D}_0$
,则使用贝叶斯方法最终将选取
$\mathcal{M}_2$
作为最终模型,在拟合能力与模型复杂度之间做了权衡。
根据 1.6.1 中信息论内容可知,假设
$\mathcal{M}_1$
为真实模型,
$\mathcal{M}_2$
为错误模型,则用 KL 散度来衡量模型差距,即期望贝叶斯参数 (the expected Bayes factor):
$$
\int p\left(\mathcal{D} \mid \mathcal{M}_{1}\right) \ln \frac{p\left(\mathcal{D} \mid \mathcal{M}_{1}\right)}{p\left(\mathcal{D} \mid \mathcal{M}_{2}\right)} \mathrm{d} \mathcal{D}
$$
当且仅当
$\mathcal{M}_1=\mathcal{M}_2$
时,该值为 0。
另外如下图所示,将 model evidence 与 Training、Testing loss 进行对比:
可以发现,单纯用 Training、Testing loss 来判断,则 M 在 [3, 8] 区间内表现一致,无法确定。然而如果使用 model evidence 进行模型选择,则可以确定 M = 3 时最优。
至此,我们可以发现贝叶斯方法可以避免过拟合问题,并且允许模型仅依靠训练集进行比较。另外,该方法也有不少限制,例如预先假定模型形式、对先验
$p(\mathbf{w})$
比较敏感等,因此在实际应用中通常仍采用训练-验证-测试集的划分。
3.5 证据近似 (The Evidence Approximation)
在进行贝叶斯估计时,线性模型涉及到
$\alpha,\beta$
两个超参数,具体如下:
$$
\begin{aligned} & p(\mathbf{w} \mid \alpha)=\mathrm{N}\left(\mathbf{w} \mid \mathbf{0}, \alpha^{-1} \mathbf{I}\right) \\ & p(\mathbf{t} \mid \mathbf{X}, \mathbf{w}, \beta)=\prod_{n=1}^{N} \mathrm{~N}\left(t_{n} \mid \mathbf{w}^{\mathrm{T}} \boldsymbol{\phi}\left(\mathbf{x}_{n}\right), \beta^{-1}\right) \end{aligned}
$$
因此将
$\alpha,\beta$
当作参数,对其进行边缘积分,则得到:
$$
p(t \mid \mathbf{t})=\iiint p(t \mid \mathbf{w}, \beta) p(\mathbf{w} \mid \mathbf{t}, \alpha, \beta) p(\alpha, \beta \mid \mathbf{t}) \mathrm{d} \mathbf{w} \mathrm{d} \alpha \mathrm{d} \beta
$$
其中满足:
$$
\begin{aligned} & p(t \mid \mathbf{x}, \mathbf{w}, \beta)=\mathcal{N}\left(t \mid y(\mathbf{x}, \mathbf{w}), \beta^{-1}\right) \\ & p(\mathbf{w} \mid \mathbf{t})=\mathcal{N}\left(\mathbf{w} \mid \mathbf{m}_{N}, \mathbf{S}_{N}\right) \\ & \mathbf{m}_{N}=\beta \mathbf{S}_{N} \boldsymbol{\Phi}^{\mathrm{T}} \mathbf{t} \\ & \mathbf{S}_{N}^{-1}=\alpha \mathbf{I}+\beta \mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi} \end{aligned}
$$
假设
$p(\alpha, \beta \mid \mathbf{t})$
集中分布于 (sharply peaked around)
$\hat{\alpha},\hat{\beta}$
,则
$p(t \mid \mathbf{t})$
可以表示为:
$$
p(t \mid \mathbf{t}) \simeq p(t \mid \mathbf{t}, \widehat{\alpha}, \widehat{\beta})=\int p(t \mid \mathbf{w}, \widehat{\beta}) p(\mathbf{w} \mid \mathbf{t}, \widehat{\alpha}, \widehat{\beta}) \mathrm{d} \mathbf{w}
$$
又因为
$p(\alpha, \beta)$
分布平坦,且
$$
p(\alpha, \beta \mid \mathbf{t}) \propto p(\mathbf{t} \mid \alpha, \beta) p(\alpha, \beta)
$$
即可以通过最大化
$p(\mathbf{t} \mid \alpha, \beta)$
来确定
$\hat{\alpha},\hat{\beta}$
。
这也就意味着,我们可以仅通过数据集来确定
$\hat{\alpha},\hat{\beta}$
取值,不再需要交叉验证。
3.5.1 证据函数的评估 (Evaluation of the evidence function)
我们通过对
$\mathbf{w}$
进行积分,得到
$p(\mathbf{t} \mid \alpha, \beta)$
的表达式:
$$
p(\mathbf{t} \mid \alpha, \beta)=\int p(\mathbf{t} \mid \mathbf{w}, \beta) p(\mathbf{w} \mid \alpha) \mathrm{d} \mathbf{w}
$$
将
$p(\mathbf{t} \mid \mathbf{w}, \beta),p(\mathbf{w} \mid \alpha)$
对应的表达式带入,得到:
$$
p(\mathbf{t} \mid \alpha, \beta)=\left(\frac{\beta}{2 \pi}\right)^{N / 2}\left(\frac{\alpha}{2 \pi}\right)^{M / 2} \int \exp \{-E(\mathbf{w})\} \mathrm{d} \mathbf{w}
$$
其中
$$
\begin{aligned} E(\mathbf{w}) &=\beta E_{D}(\mathbf{w})+\alpha E_{W}(\mathbf{w}) \\ &=\frac{\beta}{2}\|\mathbf{t}-\mathbf{\Phi} \mathbf{w}\|^{2}+\frac{\alpha}{2} \mathbf{w}^{\mathrm{T}} \mathbf{w} \end{aligned}
$$
为了求解
$p(\mathbf{t} \mid \alpha, \beta)$
,需要对
$E(\mathbf{w})$
进行如下转换:
$$
\begin{aligned} & E(\mathbf{w})=E\left(\mathbf{m}_{N}\right)+\frac{1}{2}\left(\mathbf{w}-\mathbf{m}_{N}\right)^{\mathrm{T}} \mathbf{A}\left(\mathbf{w}-\mathbf{m}_{N}\right) \\ & \mathbf{m}_{N}=\beta \mathbf{A}^{-1} \mathbf{\Phi}^{\mathrm{T}} \mathbf{t} \\ & \mathbf{A}=\alpha \mathbf{I}+\beta \mathbf{\Phi}^{\mathrm{T}} \mathbf{\Phi}=\nabla \nabla E(\mathbf{w})=\mathbf{S}_{N}^{-1} \\ \end{aligned}
$$
转换后,我们可以较容易地对
$E(\mathbf{w})$
求积分,即:
$$
\begin{aligned} \int \exp \{-E(\mathbf{w})\} \mathrm{d} \mathbf{w} &=\exp \left\{-E\left(\mathbf{m}_{N}\right)\right\} \int \exp \left\{-\frac{1}{2}\left(\mathbf{w}-\mathbf{m}_{N}\right)^{\mathrm{T}} \mathbf{A}\left(\mathbf{w}-\mathbf{m}_{N}\right)\right\} \mathrm{d} \mathbf{w} \\ &=\exp \left\{-E\left(\mathbf{m}_{N}\right)\right\}(2 \pi)^{M / 2}|\mathbf{A}|^{-1 / 2} \end{aligned}
$$
因此我们可以得到
$p(\mathbf{t} \mid \alpha, \beta)$
表达式:
$$
\ln p(\mathbf{t} \mid \alpha, \beta)=\frac{M}{2} \ln \alpha+\frac{N}{2} \ln \beta-E\left(\mathbf{m}_{N}\right)-\frac{1}{2} \ln |\mathbf{A}|-\frac{N}{2} \ln (2 \pi)
$$
另外,由于
$p(\mathbf{t} \mid \alpha, \beta)$
为两个高斯分布乘积的边缘分布,因此也可以运用 2.3.3 中的结论对其直接求解:
3.5.2 最大化证据函数 (Evaluation of the evidence function)
最大化
$\ln p(\mathbf{t} \mid \alpha, \beta)$
来确定
$\alpha,\beta$
的取值,由于其表达式中有行列式,因此引入实对称矩阵
$\beta \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi}$
的特征值:
$$
\left(\beta \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\Phi}\right) \mathbf{u}_{i}=\lambda_{i} \mathbf{u}_{i}
$$
注意实对称矩阵可以正交对角化,因此上述特征向量正交。由此
$\ln |\mathbf{A}|$
对
$\alpha$
求导得:
$$
\frac{d}{d \alpha} \ln |\mathbf{A}|=\frac{d}{d \alpha} \ln \prod_{i}\left(\lambda_{i}+\alpha\right)=\frac{d}{d \alpha} \sum_{i} \ln \left(\lambda_{i}+\alpha\right)=\sum_{i} \frac{1}{\lambda_{i}+\alpha}
$$
进而令
$\ln p(\mathbf{t} \mid \alpha, \beta)$
对
$\alpha$
的导数为 0,得:
$$
0=\frac{M}{2 \alpha}-\frac{1}{2} \mathbf{m}_{N}^{\mathrm{T}} \mathbf{m}_{N}-\frac{1}{2} \sum_{i} \frac{1}{\lambda_{i}+\alpha}
$$
因此可以得到:
$$
\alpha \mathbf{m}_{N}^{\mathrm{T}} \mathbf{m}_{N}=M-\alpha \sum_{i} \frac{1}{\lambda_{i}+\alpha}=\sum_{i}^{M} \frac{\lambda_{i}+\alpha}{\lambda_{i}+\alpha}-\alpha \sum_{i}^M \frac{1}{\lambda_{i}+\alpha}=\gamma
$$
化简后得到:
$$
\begin{aligned} \text{[式 1]}\quad& \gamma=\sum_{i} \frac{\lambda_{i}}{\alpha+\lambda_{i}} \\ \text{[式 2]}\quad& \alpha=\frac{\gamma}{\mathbf{m}_{N}^{\mathrm{T}} \mathbf{m}_{N}} \end{aligned}
$$
由于
$\alpha$
难以直接求出,因此采用迭代的方式,给定
$\alpha$
初始值,先用 [式 1] 确定
$\gamma$
,其中
$\lambda_i$
与
$\alpha$
无关,再根据 [式 2] 更新
$\alpha$
,直至收敛。
采用相同的方式对
$\beta$
进行求导,得到:
$$
\begin{aligned} & \frac{d}{d \beta} \ln |\mathbf{A}|=\frac{d}{d \beta} \sum_{i} \ln \left(\lambda_{i}+\alpha\right)=\frac{1}{\beta} \sum_{i} \frac{\lambda_{i}}{\lambda_{i}+\alpha}=\frac{\gamma}{\beta}\\ & \frac{d}{d \beta} \ln p(\mathbf{t} \mid \alpha, \beta)=0=\frac{N}{2 \beta}-\frac{1}{2} \|\mathbf{t}-\mathbf{\Phi} \mathbf{m}_{N}\|^{2}-\frac{\gamma}{2 \beta} \end{aligned}
$$
化简后得到:
$$
\text{[式 3]}\quad \frac{1}{\beta}=\frac{1}{N-\gamma} \|\mathbf{t}-\mathbf{\Phi} \mathbf{m}_{N}\|^{2}
$$
与
$\alpha$
类似,采用迭代的方式求解
$\beta$
。给定
$\beta$
初始值,先确定
$\lambda_i$
,再根据 [式 1] 确定
$\gamma$
,最后用 [式 3] 更新
$\beta$
,直至收敛。
若
$\alpha$
与
$\beta$
均未知,则给定
$\alpha,\beta$
初始值,先确定
$\lambda_i$
,再根据 [式 1] 确定
$\gamma$
,最后用 [式 2] 和 [式 3] 更新
$\alpha,\beta$
,直至收敛。
3.5.3 有效参数个数 (Effective number of parameters)
首先我们从
$\mathbf{w}_{\mathrm{ML}}$
和
$\mathbf{w}_{\mathrm{MAP}}$
的角度来理解
$\gamma$
:
其中使得
$(\mathbf{w}_{\mathrm{MAP}})_i$
接近
$(\mathbf{w}_{\mathrm{ML}})_i$
的
$\lambda_i$
称为易确定 (well determined) 的参数,因此
$\gamma=\sum_{i} \frac{\lambda_{i}}{\alpha+\lambda_{i}}$
衡量了有效参数(易确定的参数)的个数。
上述结论也可在下图中得到直观展示:
其中红、绿分别代表似然函数、先验分布的等高线,其中
$\lambda$
衡量了似然函数的曲率,曲率越小则似然函数轮廓伸长率越大,因此
$\lambda_1<\lambda_2$
。由于
$\lambda_1<\lambda_2$
,
$\mathbf{w}_{\mathrm{MAP}}$
在
$\mathbf{u}_{1}$
方向上更接近先验,在
$\mathbf{u}_{2}$
方向上则更接近
$\mathbf{w}_{\mathrm{ML}}$
。
3.6 固定基函数的局限 (Limitations of Fixed Basis Functions)
本章所探讨的线性模型有以下两大缺点:
为了缓解上述两大局限,我们可以在以下两个方面对数据进行处理: