PRML第七习题答案
Chapter 7. Sparse Kernel Machine
目录- Chapter 7. Sparse Kernel Machine
- 习题简述
- 习题详解
- Exercise 7.2
- Exercise 7.3(不完善)
- Exercise 7.4
- Exercise 7.7
- Exercise 7.8
- Exercise 7.9
- Exercise 7.10
- Exercise 7.12
- Exercise 7.13
- Exercise 7.15
- Exercise 7.16
- Exercise 7.19
更新日志(截至20210814)
- 20210814:添加习题 7.7-7.10,7.12-7.13,7.15-7.16,7.19 的详解
- 20210404:增加习题简述和习题 7.2,7.4 的详解
- 20210127:首次提交,含习题 7.3 的详解
习题简述
- 最大间隔分类器
- 7.1:基于核密度估计的分类器
- 7.2:最大间隔优化的决策平面满足尺度不变性
- 7.3:仅有 2 个数据点的最大间隔分类
- 7.4:用拉格朗日乘子表示间隔
- 7.5:用参数范数表示间隔,由 7.4 的求解过程可得
- 7.6:逻辑回归的负对数似然
- 带软间隔的支持向量机
- 7.7:带软间隔的支持向量机的对偶形式
- 7.8:带软间隔的支持向量机中,若软间隔非零,则拉格朗日乘子的最优解即为边界值,用 KKT 条件容易验证
- 相关向量机
- 7.9:相关向量机的后验均值和协方差
- 7.10:相关向量机的边际似然
- 7.11:同上
- 7.12:相关向量机边际似然的优化
- 7.13:相关向量机在经验贝叶斯框架下,引入超先验做超参数估计
- 7.14:相关向量机的预测分布
- 相关向量机的稀疏性
- 7.15:相关向量机稀疏性分析的中间步骤
- 7.16:优化相关向量机参数先验中的单个参数
- 7.17:相关向量机稀疏优化的中间步骤
- 相关向量机分类
- 7.18:相关向量机分类的梯度
- 7.19:相关向量机分类的超参数优化
习题详解
Exercise 7.2
Hint.
优化问题
等价于
\[\begin{aligned} \underset{w,b}{\arg\max}&\left\{\underset{n}{\min}\frac{t_ny(x_n)\gamma^{-1}}{\|\gamma^{-1}w\|_2}\right\}\\ \text{s.t.}&\quad t_ny(x_n)\gamma^{-1}\geq 1 \end{aligned} \]注意到 \(y\) 是 \(x\) 的仿射函数,对参数做尺度变化不影响优化目标,即 \(\frac{t_ny(x_n)\gamma^{-1}}{\|\gamma^{-1}w\|_2}=\frac{t_ny(x_n)}{\|w\|_2}\)。
Comment.
线性判别法的目标函数为 \(J(w)=\frac{w^T S_{\text{B}}w}{w^T S_{\text{W}}w}\),也具有尺度不变性,因而可以假设 \(\|w\|_2=1\),即限制参数在一个单位球面上进行求解。
Exercise 7.3(不完善)
Hint.
优化问题:
\[\begin{aligned} \min&\quad\frac{1}{2}\|w\|^2_2\\ {\rm s.t.}&\quad \begin{cases} w^T\phi(x_1) + b = 1,\\ w^T\phi(x_2) + b = -1. \end{cases} \end{aligned} \]两个等式约束做差得到\(w^T(\phi(x_1) - \phi(x_2)) = 2\),因为\(\phi(x_1)\neq\phi(x_2)\),所以\(w\neq 0\)。由于上述问题是凸优化问题,且满足Slater条件,所以有唯一解,且\(w^*\neq 0\)。
Comment.
注意,如果只有1个数据点,则\(w^* = 0\),分离超平面不存在。分离超平面存在的前提是\(w\neq 0\)。
Exercise 7.4
Solution.
支持向量机拉格朗日函数为
当 \(w=w^*\) 时,拉格朗日乘子项为零,\(L(w^*,b,a)=\frac{1}{2}\|w^*\|^2_2\)。
由PRML正文公式 7.8 知,参数的最优解满足 \(w^*=\Phi^T(a\circ t)\)。
由正文公式 7.10 知,对偶问题的目标函数为
由于支持向量机对应的凸优化问题满足强对偶,故原问题的目标函数的最优值等于对偶问题目标函数的最优值,即
\[L(w^*,b,a^*)=\frac{1}{2}\|w^*\|^2_2=\widetilde{L}(a^*)=(a^*)^T \mathbf{1} - \frac{1}{2}\|w^*\|^2_2, \]故 \(\|w^*\|^2_2=(a^*)^T \mathbf{1}\),又因为间隔 \(\rho=\|w\|^{-1}\),故 \((\rho^*)^{-2}=(a^*)^T \mathbf{1}\)。
Comment.
本题的关键在于搞清楚原问题和对偶问题之间的关系。
Exercise 7.7
Solution.
\[\begin{aligned} L &=C\mathbf{1}^T(\xi+\widehat{\xi})+\frac{1}{2}\|\mathbf{w}\|^2_2-(\mu^T\xi+\widehat{\mu}^T\widehat{\xi})\\ \quad&\quad-a^T(\epsilon\mathbf{1}+\xi+y-t)-\widehat{a}^T(\epsilon\mathbf{1}+\widehat{\xi}-y+t), \end{aligned} \]其中 \(y=\Phi\mathbf{w}+b\mathbf{1}\)。
对 \(\mathbf{w},b,\xi,\widehat{\xi}\) 求导可得
令导数为零有
\[\begin{aligned} \mathbf{w}&=\Phi^T(a-\widehat{a})\\ \mu&=C\mathbf{1}-a\\ \widehat{\mu}&=C\mathbf{1}-\widehat{a} \end{aligned} \]代入目标函数有
\[\begin{aligned} L &=\frac{1}{2}(a-\widehat{a})^T\Phi\Phi^T(a-\widehat{a})\\ &\quad+(C\mathbf{1}-a-\mu)^T\xi+(C\mathbf{1}-\widehat{a}-\widehat{\mu})^T\widehat{\xi}\\ &\quad-\epsilon(a+\widehat{a})^T+(a-\widehat{a})^T t\\ &\quad-(a-\widehat{a})^T(\Phi\Phi^T(a-\widehat{a})+b\mathbf{1})\\ &=-\frac{1}{2}(a-\widehat{a})^T\Phi\Phi^T(a-\widehat{a})\\ &\quad-\epsilon(a+\widehat{a})^T+(a-\widehat{a})^T t\\ &\quad-b(a-\widehat{a})^T\mathbf{1}\\ &=-\frac{1}{2}(a-\widehat{a})^T\Phi\Phi^T(a-\widehat{a})\\ &\quad-\epsilon(a+\widehat{a})^T+(a-\widehat{a})^T t\\ \end{aligned} \]即原目标函数的拉格朗日对偶。注意到该对偶函数仅与 \(a,\widehat{a}\) 有关,与 \(\mu,\widehat{\mu}\) 无关。
Exercise 7.8
Hint.
由 KKT 条件可知,若 \(\xi>0\),\(\mu^T\xi=0\) 当且仅当 \(\mu=0\),由上题推导过程可知 \(a=C\mathbf{1}-\mu=C\mathbf{1}\)。对 \(\widehat{\xi}\) 有相同结论。
Exercise 7.9
Solution.
模型和参数先验分别为
由公式 3.49-3.51,参数的后验分布为 \(p(\mathbf{w}|\mathbf{t},\mathbf{X}, \alpha,\beta)=\mathcal{N}(\mathbf{w}|\mu,\Sigma)\),其中
Exercise 7.10
Hint.
由高斯线性模型的结论可知,\(p(\mathbf{t}|\mathbf{X},\alpha,\beta)=\mathcal{N}(\mathbf{t}|0,\mathbf{C})\),其中
由此可以得到其对数似然。
Exercise 7.12
Hint.
对数似然 \(\mathcal{L}=\ln p(\mathbf{t}|\mathbf{X},\alpha,\beta)=-\frac{1}{2}\ln |\mathbf{C}|-\frac{1}{2}\mathbf{t}^T\mathbf{C}^{-1}\mathbf{t}+\text{const.}\),求微分有
直接令偏导为零则有
\[\mathbf{C}=\mathbf{t}\mathbf{t}^T, \]无法得到书中的结果,需要参考书中 3.5 节的推导。
Solution.
\[\begin{aligned} p(\mathbf{t}|\mathbf{X},\alpha,\beta) &=\int \mathcal{N}(\mathbf{t}|\Phi\mathbf{w},\beta^{-1}I)\mathcal{N}(\mathbf{w}|0,\text{diag}(\alpha))\,\text{d}\mathbf{w}\\ &=\left(\frac{\beta}{2\pi}\right)^{N/2}\frac{(\prod \alpha)^{1/2}}{(2\pi)^{M/2}}\int \exp\left\{\frac{\beta}{2}\|\mathbf{t}-\Phi\mathbf{w}\|^2_2+\frac{1}{2}\mathbf{w}^T\text{diag}(\alpha)\mathbf{w}\right\}\,\text{d}\mathbf{w}\\ &=\left(\frac{\beta}{2\pi}\right)^{N/2}\frac{(\prod \alpha)^{1/2}}{(2\pi)^{M/2}}\\ &\quad\int \exp\left\{\frac{\beta}{2}\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2+\frac{1}{2}\mathbf{m}_N^T\text{diag}(\alpha)\mathbf{m}_N+\frac{1}{2}(\mathbf{w}-\mathbf{m}_N)^T\mathbf{A}(\mathbf{w}-\mathbf{m}_N)\right\}\,\text{d}\mathbf{w}\\ \end{aligned} \]其中
\[\begin{aligned} \mathbf{A}&=\text{diag}(\alpha)+\beta\Phi^T\Phi\\ \mathbf{m}_N&=\beta\mathbf{A}^{-1}\Phi^T\mathbf{t} \end{aligned} \]由此得到对数似然为
\[\mathcal{L}=\ln p(\mathbf{t}|\mathbf{X},\alpha,\beta)=\frac{1}{2}\mathbf{1}^T_M\ln\alpha+\frac{N}{2}\ln \beta-\frac{1}{2}\left(\beta\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2+\mathbf{m}_N^T\text{diag}(\alpha)\mathbf{m}_N\right)-\frac{1}{2}\ln |\mathbf{A}|+\text{const.} \]对 \(\alpha,\beta\) 求偏导有
\[\begin{aligned} \frac{\partial\mathcal{L}}{\partial\alpha} &=\frac{1}{2\alpha}-\frac{1}{2}\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)-\frac{1}{2}\frac{1}{\alpha+\beta\lambda}\\ \frac{\partial\mathcal{L}}{\partial\beta} &=\frac{N}{2\beta}-\frac{1}{2}\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2-\frac{1}{2}\mathbf{1}^T_M\frac{\lambda}{\alpha+\beta\lambda}\\ \end{aligned} \]其中 \(\lambda=[\lambda_1,\dots,\lambda_M]^T\) 为 \(\Phi^T\Phi\) 的特征值构成的向量,\(\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)\) 表示 \(\mathbf{m}_N\mathbf{m}_N^T\) 的对角元构成的对角矩阵。令 \(\frac{\partial\mathcal{L}}{\partial\alpha}=0\),两边同乘 \(2\alpha\) 并移项有
\[\alpha\circ\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)=\mathbf{1}_M-\frac{\alpha}{\alpha+\beta\lambda} \]解得
\[\alpha^{\text{new}}=\frac{\mathbf{1}_M-\frac{\alpha}{\alpha+\beta\lambda}}{\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)} \]令 \(\frac{\partial\mathcal{L}}{\partial\beta}=0\),两边同乘 \(2\beta\) 移项有
\[\beta\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2=N-\mathbf{1}^T_M\frac{\beta\lambda}{\alpha+\beta\lambda} \]解得
\[(\beta^{\text{new}})^{-1}=\frac{\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2}{N-\mathbf{1}^T_M\frac{\beta\lambda}{\alpha+\beta\lambda}} \]记 \(\gamma=\frac{\beta\lambda}{\alpha+\beta\lambda}\),则前述结果可以写为
\[\begin{aligned} \alpha^{\text{new}}&=\frac{\gamma}{\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)}\\ (\beta^{\text{new}})^{-1}&=\frac{\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2}{N-\mathbf{1}^T_M\gamma} \end{aligned} \]Exercise 7.13
Hint.
对 \(\beta\) 引入 gamma 分布 \(\text{Gam}(\beta|a,b)\) 作为先验,对于每个 \(\alpha_i\),引入 gamma 分布 \(\text{Gam}(\alpha_i|a_i,b_i)\) 作为先验,这样先验参数过多,故假定每个 \(\alpha_i\) 的先验相同,即 \(\text{Gam}(\alpha_i|c,d)\),则包含超先验的似然函数为
Solution.
引入超先验后的对数似然为
沿用上题的记号和结论,对 \(\alpha,\beta\) 求偏导有
\[\begin{aligned} \frac{\partial\mathcal{L}}{\partial\alpha} &=\frac{1}{2\alpha}-\frac{1}{2}\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)-\frac{1}{2}\frac{1}{\alpha+\beta\lambda}+\frac{c-1}{\alpha}-d\mathbf{1}_M\\ \frac{\partial\mathcal{L}}{\partial\beta} &=\frac{N}{2\beta}-\frac{1}{2}\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2-\frac{1}{2}\mathbf{1}^T_M\frac{\lambda}{\alpha+\beta\lambda}+\frac{a-1}{\beta}-b\\ \end{aligned} \]令 \(\frac{\partial\mathcal{L}}{\partial\alpha}=0\),两边同乘 \(2\alpha\) 并移项有
\[\alpha\circ(\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)+2d\mathbf{1}_M)=\mathbf{1}_M-\frac{\alpha}{\alpha+\beta\lambda}+2(c-1)\mathbf{1}_M \]解得
\[\alpha^{\text{new}}=\frac{\mathbf{1}_M-\frac{\alpha}{\alpha+\beta\lambda}+2(c-1)\mathbf{1}_M}{\text{diag}(\mathbf{m}_N\mathbf{m}_N^T)+2d\mathbf{1}_M} \]令 \(\frac{\partial\mathcal{L}}{\partial\beta}=0\),两边同乘 \(2\beta\) 移项有
\[\beta(\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2+2b)=N+2(a-1)-\mathbf{1}^T_M\frac{\beta\lambda}{\alpha+\beta\lambda} \]解得
\[(\beta^{\text{new}})^{-1}=\frac{\|\mathbf{t}-\Phi\mathbf{m}_N\|^2_2+2b}{N+2(a-1)-\mathbf{1}^T_M\frac{\beta\lambda}{\alpha+\beta\lambda}} \]可以看到,本题结果为对上题结果的一个修正。
Exercise 7.15
Solution.
从 \(\mathbf{C}\) 中分离出包含 \(\alpha_i\) 的项
由书中公式 7.94-7.95 可知
代入对数似然的表达式有
\[\begin{aligned} \ln p(\mathbf{t}|\mathbf{X},\alpha,\beta) &=-\frac{1}{2}\left(\ln |\mathbf{C}|+\mathbf{t}^T\mathbf{C}^{-1}\mathbf{t}\right)+\text{const.}\\ &=-\frac{1}{2}\left(\ln |\mathbf{C}_{-i}|+\mathbf{t}^T\mathbf{C}_{-i}^{-1}\mathbf{t}+\ln|1+\alpha^{-1}_i\phi_i^T\mathbf{C}_{-i}^{-1}\phi_i|-\frac{\mathbf{t}^T\mathbf{C}_{-i}^{-1}\phi_j\phi_j^T\mathbf{C}_{-i}^{-1}\mathbf{t}}{\alpha_i+\phi_j^T\mathbf{C}_{-i}^{-1}\phi_j}\right)+\text{const.}\\ &=-\frac{1}{2}\left(\ln |\mathbf{C}_{-i}|+\mathbf{t}^T\mathbf{C}_{-i}^{-1}\mathbf{t}\right)\\ &\quad-\frac{1}{2}\left(\ln(1+\alpha^{-1}_i\phi_i^T\mathbf{C}_{-i}^{-1}\phi_i)-\frac{\mathbf{t}^T\mathbf{C}_{-i}^{-1}\phi_j\phi_j^T\mathbf{C}_{-i}^{-1}\mathbf{t}}{\alpha_i+\phi_j^T\mathbf{C}_{-i}^{-1}\phi_j}\right)+\text{const.}\\ \end{aligned} \]其中,第一项与 \(\alpha_i\) 无关,第二项与之有关,考虑 \(\alpha_i\) 的影响只需考虑第二项。记 \(s_i=\phi_j^T\mathbf{C}_{-i}^{-1}\phi_j,q_i=\phi_j^T\mathbf{C}_{-i}^{-1}\mathbf{t}\),则第二项可以简记为
\[\begin{aligned} \lambda(\alpha_i)&=\frac{1}{2}\left(-\ln(1+\alpha^{-1}_i s_i)+\frac{q^2_i}{\alpha_i+s_i}\right)\\ &=\frac{1}{2}\left(\ln\frac{1}{1+\alpha^{-1}_i s_i}+\frac{q^2_i}{\alpha_i+s_i}\right)\\ &=\frac{1}{2}\left(\ln\alpha_i-\ln(\alpha_i + s_i)+\frac{q^2_i}{\alpha_i+s_i}\right)\\ \end{aligned} \]Exercise 7.16
Solution.
求一阶导得
若 \(s_i\geq q_i^2\),则一阶导恒大于零,\(\lambda\) 关于 \(\alpha_i\) 单调递增,\(\lambda_{\text{max}}=\lambda(\infty)=0\);若 \(s_1,则当 \(\alpha_i=s_i^2(q_i^2-s_i)\) 时,一阶导为零,小于该临界值时一阶导大于零,大于该临界值时一阶导小于零,因此该点为最大值点。直接计算二阶导难以说明该点为最大值点,因为求二阶导可知该函数并非凹函数,一阶导为零处不一定是最大值点。
Exercise 7.19
Solution.
由拉普拉斯估计
其中
\[\Sigma=(\Phi^T\text{diag}(\mathbf{y}\circ(1-\mathbf{y}))\Phi+\text{diag}(\alpha))^{-1}. \]拉普拉斯估计对应的对数似然为
\[\mathcal{L}=-\frac{1}{2}\ln|\text{diag}(\alpha^{-1})|-\frac{1}{2}{\mathbf{w}^*}^T\text{diag}(\alpha)\mathbf{w}^*-\frac{1}{2}\ln |\Phi^T\text{diag}(\mathbf{y}\circ(1-\mathbf{y}))\Phi+\text{diag}(\alpha)|+\text{const.} \]对 \(\mathcal{L}\) 求微分
\[\begin{aligned} \text{d}\mathcal{L} &=\frac{1}{2}\text{tr}(\text{diag}(\alpha^{-1})\text{diag}(\text{d}\alpha))-\frac{1}{2}\text{tr}(\mathbf{w}^*{\mathbf{w}^*}^T\text{diag}(\text{d}\alpha))\\ &\quad-\frac{1}{2}\text{tr}((\Phi^T\text{diag}(\mathbf{y}\circ(1-\mathbf{y}))\Phi+\text{diag}(\alpha))^{-1}\text{diag}(\text{d}\alpha)) \end{aligned} \]由此得到偏导
\[\frac{\partial\mathcal{L}}{\partial\text{diag}(\alpha)} =-\frac{1}{2}(-\text{diag}(\alpha^{-1})+\mathbf{w}^*{\mathbf{w}^*}^T+\Sigma), \]可以进一步化简为
\[\frac{\partial\mathcal{L}}{\partial\alpha} =-\frac{1}{2}(-\alpha^{-1}+\text{diag}(\mathbf{w}^*{\mathbf{w}^*}^T)+\text{diag}(\Sigma)), \]令偏导为零,并两边同乘 \(\alpha\) 并移项有
\[\alpha\circ\text{diag}(\mathbf{w}^*{\mathbf{w}^*}^T)=\mathbf{1}_M-\alpha\circ\text{diag}(\Sigma) \] \[\alpha^{\text{new}}=\frac{\mathbf{1}_M-\alpha\circ\text{diag}(\Sigma)}{\text{diag}(\mathbf{w}^*{\mathbf{w}^*}^T)} \]