PRML第二章习题答案
Chapter 2. Probability Distributions
目录- Chapter 2. Probability Distributions
- 习题简述
- 习题详解
- Exercise 2.8
- Exercise 2.11
- Exercise 2.13
- Exercise 2.14
- Exercise 2.36
- Exercise 2.43
- Exercise 2.50
- Exercise 2.52
- Exercise 2.59
- Exercise 2.60
更新日志(截至20210712)
- 20210712:添加习题 2.14,2.36,2.52,2.59 的详解
- 20210307:添加习题简述,添加习题 2.8,2.50,2.60 的详解
- 20210127:首次提交,含习题 2.11,2.13,2.43 的详解
习题简述
- 分布基本性质
- 伯努利分布
- 2.1:伯努利分布的规范性、均值、方差、熵
- 2.2:伯努利分布的变体,变量取值由 \(\{0,1\}\) 变为 \(\{-1,1\}\)
- 二项分布
- 2.3:用二项式定理证明二项分布的规范性
- 2.4:二项分布的均值、方差
- beta 分布
- 2.5:用 gamma 函数的性质证明 beta 分布的规范性
- 2.6:beta 分布的均值、方差、众数
- 2.7:beta 分布最大后验估计与先验、极大似然估计的联系
- Dirichlet 分布
- 2.9:Dirichlet 分布的规范性
- 2.10:Dirichlet 分布的均值、方差、协方差
- 2.11:digamma 函数
- 均匀分布
- 2.12:均匀分布的规范性、均值、方差
- gamma 分布
- 2.41:gamma 分布的规范性
- 2.42:gamma 分布的均值、方差、众数
- 高斯分布
- 2.13:两个高斯分布的 KL 散度
- 2.14:已知均值和协方差矩阵的最大熵分布是高斯分布
- 2.15:高斯分布的熵,参见 2.13 的计算过程
- 2.16:两个独立高斯分布的和仍为高斯分布,求其熵
- 2.25:三元高斯的条件分布
- 2.28:用线性高斯与原变量的联合分布,返回去验证原变量的边际分布及线性高斯的分布(条件分布)
- 2.29:用分块矩阵求逆验证分块精度矩阵的逆为分块协方差矩阵
- 2.30:直接验证
- 2.31:用高斯线性模型的结论推导高斯变量和的分布,结果应与卷积公式一致
- 2.32:TBD
- 2.33:TBD
- 2.34:协方差矩阵的极大似然解
- 2.35:用协方差的定义直接验证
- 2.36:方差的序列估计
- 2.37:TBD
- 2.38:用配方法计算后验,进而计算均值和方差的序列估计
- 2.39:TBD
- 2.40:固定协方差矩阵,求均值的后验
- 2.43:将高斯分布推广到 \(p\)-范数情形
- 2.44:证明 Gaussian-gamma 分布是单变量高斯的精度的共轭先验
- 2.45:证明 Wishart 分布是高斯分布精度矩阵的共轭先验
- 线性代数
- 2.17:二次型总可以转为对称二次型,因此假定协方差矩阵对称
- 2.18:对称矩阵的特征值为实数,属于不同特征值的特征向量正交,属于同一特征值的特征向量总可以正交化,因此可以假定全部特征向量正交以便分析
- 2.19:可逆对称矩阵可以写成特征值分解,其逆有类似形式,特征值为原矩阵的倒数
- 2.20:矩阵正定等价于特征值大于零
- 2.21:对称矩阵的自由度
- 2.22:对称矩阵的逆也是对称的
- 2.24:用高斯消元法对分块矩阵求逆
- 2.26:矩阵和的逆
- Student's t 分布
- 2.46:变量替换验证 Student's t 分布的概率密度函数
- 2.47:证明单变量 Student's t 分布在一定条件下退化为高斯
- 2.48:多元 Student's t 分布的规范性
- 2.49:验证多元 Student's t 分布的概率密度函数
- 2.50:证明多变量 Student's t 分布在一定条件下退化为高斯
- von Mises 分布
- 2.51:证明三角恒等式,不用复数也可以证明
- 2.52:一定条件下,von Mises 分布的极限分布为尖峰高斯
- 2.53:计算角度参数的极大似然估计
- 2.54:分布极值
- 2.55:直接验证
- Expoential Family
- 2.56:将 beta 分布、gamma 分布和 von Mises 分布化为指数族形式
- 2.57:将高斯分布化为指数族形式
- 2.58:证明对数配分函数的二阶导为充分统计量的协方差
- 一般分布
- 2.8:条件期望和条件方差
- 2.27:独立随机向量的和的期望(协方差矩阵)等于期望(协方差矩阵)的和
- 伯努利分布
- 其他
- 2.59:尺度变换诱导了一个 noninformative 先验,通过变量替换即可证明积分为 1
- 2.60:柱状图的极大似然估计
- 2.61:\(k\)-NN 诱导一个 improper 先验
习题详解
Exercise 2.8
Hint.
条件期望由定义易得,下仅证条件方差。
Comment.
- 技巧在于加一项减一项 \(\underset{Y}{\mathbb{E}}[\underset{X}{\mathbb{E}}[X|Y]\,\underset{X}{\mathbb{E}}[X|Y]^T]\) 来凑出方差
- 规律可简记为,方差 = 条件方差的期望 + 条件期望的方差
Exercise 2.11
Hint.
\(p(\mu)=\frac{\Gamma (\sum \alpha)}{\prod \Gamma(\alpha)}\prod \mu^{\alpha-1}\),直接对\(\mu\)求导,涉及运算均为逐元素运算,
\[\begin{aligned} \frac{\partial}{\partial \alpha}p(\mu) &=p(\mu)\left[\ln \mu + \frac{\nabla\Gamma(\sum \alpha)}{\Gamma(\sum \alpha)} - \frac{\nabla(\prod \Gamma(\alpha))}{\prod \Gamma(\alpha)}\right], \end{aligned} \]两边求期望,
\[\frac{\partial}{\partial \alpha}\underset{p}{\mathbb{E}}[1] =\underset{p}{\mathbb{E}}\left[\ln \mu + \frac{\nabla\Gamma(\sum \alpha)}{\Gamma(\sum \alpha)} - \frac{\nabla(\prod \Gamma(\alpha))}{\prod \Gamma(\alpha)}\right], \]注意到左边等于0,所以
\[\begin{aligned} \underset{p}{\mathbb{E}}[\ln \mu] &= \frac{\nabla(\prod \Gamma(\alpha))}{\prod \Gamma(\alpha)} - \frac{\nabla\Gamma(\sum \alpha)}{\Gamma(\sum \alpha)}\\ &=\nabla\ln \prod \Gamma(\alpha) - \nabla\ln \Gamma(\sum \alpha). \end{aligned} \]Comment.
利用该结论可以计算Dirichlet分布的熵\({\rm H}[p]=\sum \alpha\circ\underset{p}{\mathbb{E}}[\ln \mu]+C(\alpha)\)。
Exercise 2.13
Hint.
\((x-\mu)^T\Sigma^{-1}(x-\mu)={\rm tr}(\Sigma^{-1}(x-\mu)(x-\mu)^T)\),参考stackexchange。
Solution.
\({\rm KL}(p||q)=\underset{p}{\mathbb{E}}[\ln p]-\underset{p}{\mathbb{E}}[\ln q]\),两项形式类似,只需计算后者。
\[\begin{aligned} \underset{p}{\mathbb{E}}[\ln q] &=-\frac{1}{2}\underset{p}{\mathbb{E}}[(x-m)^TL^{-1}(x-m)]-\frac{D}{2}\ln 2\pi-\frac{1}{2}\ln |L|\\ &=-\frac{1}{2}\underset{p}{\mathbb{E}}[{\rm tr}(L^{-1}(x-m)(x-m)^T)]+C\\ &=-\frac{1}{2}{\rm tr}(L^{-1}\underset{p}{\mathbb{E}}[(x-m)(x-m)^T])+C\\ &=-\frac{1}{2}{\rm tr}(L^{-1}\underset{p}{\mathbb{E}}[((x-\mu)-(m-\mu))((x-\mu)-(m-\mu))^T])+C\\ &=-\frac{1}{2}{\rm tr}(L^{-1}(\underset{p}{\mathbb{E}}[(x-\mu)(x-\mu)^T] -2\underset{p}{\mathbb{E}}[(x-\mu)](m-\mu)+(m-\mu)(m-\mu)^T))+C\\ &=-\frac{1}{2}{\rm tr}(L^{-1}(\Sigma+(m-\mu)(m-\mu)^T))+C. \end{aligned} \]当\(q=p\),有\(\underset{p}{\mathbb{E}}[\ln p]=-\frac{1}{2}D+C'\)。
综合两者得到,
\[{\rm KL}(p||q)=\frac{1}{2}\left[{\rm tr}(L^{-1}\Sigma)+(m-\mu)^TL^{-1}(m-\mu)+\ln \frac{|L|}{|\Sigma|}-D\right]. \]Comment.
- 两个正态分布的KL散度可以显式计算
- 当两个正态分布的协方差矩阵相同时,其KL散度是均值的差的二次型
Exercise 2.14
Hint.
用泛函的拉格朗日乘子法求解。
Solution.
记 \(\lambda\in\mathbb{R},a\in\mathbb{R}^D,A\in\mathbb{R}^{D\times D}\), 包含均值、协方差约束的熵的拉格朗日函数为
令 \(\frac{\delta L}{\delta p}=0\),有
\[\begin{aligned} 0 &= - (1 + \ln p)+\lambda + a^Tx+\text{tr}(A^T(x-\mu)(x-\mu)^T) \\ &=- (1 + \ln p)+\lambda + a^Tx+(x-\mu)^TA^T(x-\mu) \end{aligned} \] \[\begin{aligned} p(x) &=\exp(\lambda - 1 + a^Tx+(x-\mu)^TA^T(x-\mu)) \\ &=\exp(\lambda - 1 +x^T Ax+(a-2A\mu)^Tx+\mu^T A\mu)\\ &\propto\exp(\lambda - 1 +(x+(x+\frac{1}{2}A^{-1}a-\mu))^T A(x+\frac{1}{2}A^{-1}a-\mu)) \end{aligned} \]上述推导过程中假设 \(A\) 对称、可逆。故 \(p(x)=\mathcal{N}(x|\mu-\frac{1}{2}A^{-1}a,-2A)\),由等式约束可知,
\[\begin{aligned} \mu-\frac{1}{2}A^{-1}a&=\mu,\\ -2A&=\Sigma \end{aligned} \]解得,\(A=-\frac{1}{2}\Sigma,a=0\)。无需求 \(\lambda\),由高斯分布的归一化系数可求得 \(p(x)\) 的表达式。
Exercise 2.36
Hint.
Robbins-Monro 算法的标量形式为
形式上,上式可以推广得到向量形式
\[\theta_N=\theta_{N-1}+A_{N-1}\frac{\partial\ln p(x_N|\theta_{N-1})}{\partial \theta_{N-1}},\theta_N\in\mathbb{R}^D,A_N\in\mathbb{R}^{D\times D}. \]当 \(\theta\in\mathbb{R}^{D\times D}\) 为矩阵时,可以使用矩阵向量化的方式给出相应的序列估计算法
\[\text{vec}(\theta_N)=\text{vec}(\theta_{N-1})+A_{N - 1} \text{vec}\left(\frac{\partial \ln p(x_N | \theta^{(N - 1)})}{\partial \theta^{(N - 1)}}\right),A_{N-1}\in\mathbb{R}^{D^2\times D^2}. \]这里,向量版本和矩阵版本的 Robbins-Monro 算法并未给出收敛性条件及收敛性证明,我猜测有
\[\begin{align} \lim_{N\to\infty}A_N&=O\\ \left\|\sum^\infty_{n=1}A_N\right\| &=\infty\\ \left\|\sum^\infty_{n=1}A_N^2\right\|&<\infty, \end{align} \]其中 \(\|\cdot\|\) 是任意的矩阵范数。
Solution.
假设已知均值,则协方差的极大似然估计可写成以下的序列估计形式
下面展开 \(\Sigma\) 的 Robbins-Monro 算法,并待定出相应的系数 \(A_N\) 来恢复上述迭代公式。只需计算 \(\frac{\partial\ln p(x|\mu,\Sigma)}{\partial \Sigma}\)。
似然函数 \(\ln p(x|\mu,\Sigma)=-\frac{1}{2}\ln |\Sigma|-\frac{1}{2}\text{tr}(\Sigma^{-1}(x-\mu)(x-\mu)^T)+\text{const.}\),易知 \(\frac{\partial \ln |\Sigma|}{\partial \Sigma}=\Sigma^{-1}\),考虑 \(\frac{\partial \text{tr}(\Sigma^{-1}(x-\mu)(x-\mu)^T)}{\partial \Sigma}\)。
易知 \(\Sigma \Sigma^{-1}=I\),两边微分得 \(\text{d}\,\Sigma \Sigma^{-1}+\Sigma \text{d}\,\Sigma^{-1}=O\),故 \(\text{d}\,\Sigma^{-1}=-\Sigma^{-1}\text{d}\,\Sigma \Sigma^{-1}\)。故
\[\begin{align} \text{d}\,\text{tr}(\Sigma^{-1}(x-\mu)(x-\mu)^T) &=\text{tr}(\text{d}\,\Sigma^{-1}(x-\mu)(x-\mu)^T)\\ &=-\text{tr}(\Sigma^{-1}\text{d}\,\Sigma \Sigma^{-1}(x-\mu)(x-\mu)^T)\\ &=-\text{tr}(\Sigma^{-1}(x-\mu)(x-\mu)^T\Sigma^{-1}\text{d}\,\Sigma) \end{align} \] \[\frac{\partial \text{tr}(\Sigma^{-1}(x-\mu)(x-\mu)^T)}{\partial \Sigma}=\Sigma^{-1}(x-\mu)(x-\mu)^T\Sigma^{-1} \] \[\begin{aligned} \frac{\partial\ln p(x_N|\mu,\Sigma_{N-1})}{\partial \Sigma_{N-1}} &=\frac{1}{2}\Sigma_{N-1}^{-1}(x_N-\mu)(x_N-\mu)^T\Sigma_{N-1}^{-1}-\Sigma_{N-1}^{-1}\\ &=\frac{1}{2}\Sigma_{N-1}^{-1}\left((x_N-\mu)(x_N-\mu)^T-\Sigma_{N-1}\right)\Sigma_{N-1}^{-1}, \end{aligned} \]两边对矩阵向量化有
\[\begin{aligned} \text{vec}\left(\frac{\partial\ln p(x_N|\mu,\Sigma_{N-1})}{\partial \Sigma_{N-1}}\right) &=\frac{1}{2}\text{vec}\left(\Sigma_{N-1}^{-1}\left((x_N-\mu)(x_N-\mu)^T-\Sigma_{N-1}\right)\Sigma_{N-1}^{-1}\right)\\ &=\frac{1}{2}(\Sigma_{N-1}^{-1}\otimes \Sigma_{N-1}^{-1})\text{vec}\left((x_N-\mu)(x_N-\mu)^T-\Sigma_{N-1}\right). \end{aligned} \]采用矩阵的向量化版本的 Robbins-Monro 算法有
\[\text{vec}(\Sigma_N) =\text{vec}(\Sigma_{N-1})+\frac{A_{N-1}}{2}(\Sigma_{N-1}^{-1}\otimes\Sigma_{N-1}^{-1})\text{vec}((x_N-\mu)(x_N-\mu)^T-\Sigma_{N-1})\tag{2} \]令 \(A_{N-1}=\frac{2}{N}(\Sigma_{N-1}^{-1}\otimes\Sigma_{N-1}^{-1})^{-1}=\frac{2}{N}(\Sigma_{N-1}\otimes\Sigma_{N-1})\),即可由公式 (2) 恢复公式 (1)。当 \(\Sigma\) 各项同性,即 \(\Sigma=\sigma^2 I\),有 \(A_{N-1}=\frac{2\sigma^4_{N-1}}{N}I\),即恢复了其标量形式。
下面简单考虑上述序列估计的收敛性。假设 \(\Sigma_N\to\Sigma,\|\Sigma\|<\infty\), 则 \(\|\Sigma_{N-1}\otimes\Sigma_{N-1}\|\leq C<\infty\),则 \(A_{N-1}=o(\frac{1}{N})\),显然
\[\begin{aligned} \lim_{N\to\infty}\frac{1}{N}&=0\\ \sum^\infty_{n=1}\frac{1}{N}&=\infty\\ \sum^\infty_{n=1}\frac{1}{N^2}&<\infty \end{aligned} \]即 \(A_{N-1}\) 满足矩阵的向量化版本 Robbins-Monro 算法的约束。
Comment.
本题给出了矩阵形式的 Robbins-Monro 算法的系数确定方式,但是对于系数的约束是标量形式的,未明确其矩阵形式,暂自定为相应的矩阵级数收敛。
Exercise 2.43
Hint.
\[\begin{aligned} \int_{\mathbb{R}} \exp(-\frac{|x|^q}{2\sigma^2})\,{\rm d}x &=2\int_{\mathbb{R}^+} \exp(-\frac{x^q}{2\sigma^2})\,{\rm d}x\\ &=2\int_{\mathbb{R}^+} \exp(-u)(2\sigma^2)^{q^{-1}}q^{-1}u^{q^{-1}}\,{\rm d}u\quad(u=\frac{x^q}{2\sigma^2})\\ &=2(2\sigma^2)^{q^{-1}}q^{-1}\Gamma(q^{-1}). \end{aligned} \]所以,归一化常数为\(\frac{q}{2(2\sigma^2)^{q^{-1}}\Gamma(q^{-1})}\)。
Exercise 2.50
Hint.
极限分布也是分布,只需考虑变量形式,归一化常数通过对比得到。
Solution.
假设极限分布存在,或假设与 \(\mathbf{x}\) 无关,仅与 \(\nu\) 有关的常数项 \(\frac{\Gamma(\nu/2 + D/2)}{\Gamma(\nu/2)\nu^{D/2}} \overset{\nu\to\infty}{\longrightarrow} \text{const.}\)
求极限处用到了经典极限 \(\underset{x\to\infty}{\lim}(1+\frac{1}{x})^x=e\) 。
此外,上面推导假设 \(\Delta\neq 0\),可以验证当 \(\Delta= 0\) 结论也成立。
Comment.
- 只考虑分布形式的前提假设是极限分布存在,但是存在性尚未给出证明。
- 预测分布 \(\text{St}(\mathbf{x}|\mathbf{\mu},\Lambda,\nu)=\underset{\eta}{\mathbb{E}}[\mathcal{N}(\mathbf{x}|\mathbf{\mu},(\eta\Lambda)^{-1})]\),其中先验分布为 \(\eta\sim\text{Gam}(\eta | \nu/2, \nu/2)\),均值为 \(\mathbb{E}[\eta] = \frac{\nu/2}{\nu/2} = 1\),方差为 \(\text{Var}[\eta] = \frac{\nu/2}{(\nu/2)^2}\to 0\,(\nu\to\infty)\),也就是先验分布退化为一个常数分布 \(p(\eta=1)=1\),此时预测分布 \(\int \mathcal{N}(\mathbf{x}|\mathbf{\mu},(\eta\Lambda)^{-1})\delta(\eta - 1)=\mathcal{N}(\mathbf{x}|\mathbf{\mu},\Lambda^{-1})\),即为极限分布。简言之,在退化先验下,预测分布为高斯分布。
Exercise 2.52
Solution.
\[\begin{aligned} p(\theta|\theta_0,m) &\propto e^{m\cos(\theta-\theta_0)}\\ &=e^{m-\frac{m}{2}(\theta-\theta_0)^2+o(m(\theta-\theta_0)^4)}\\ &\propto e^{\frac{\xi^2}{2}+o(m^{-2}\xi^4)}\quad(\xi=m^{1/2}(\theta-\theta_0))\\ &\to e^{\frac{\xi^2}{2}}\quad(m\to\infty) \end{aligned} \]即 \(p(\theta|\theta_0,m)\to\mathcal{N}(\theta|\theta_0,m^{-1}),m\to\infty\),注意到高斯分布的方差 \(m^{-1}\to 0\),因此此时为尖峰高斯。
Comment.
由上述推导可理解正文公式 2.179 下面一段话中对 \(m\) 的意义的解释,即 \(m\) 相当于单变量高斯分布的精度,即方差的逆。
Exercise 2.59
Solution.
\(p(x|\sigma)=\frac{1}{\sigma}f(\frac{x}{\sigma}),\int \frac{1}{\sigma}f(\frac{x}{\sigma})\,\text{d}x=\int f(\frac{x}{\sigma})\,\text{d}\frac{x}{\sigma}=1\)。
Exercise 2.60
Solution.
设共有 \(m\) 个区域, \(x_i\) 落在区域 \(j_i\),则带拉格朗日乘子的似然函数为
\[\begin{aligned} \mathcal{L}(X;\lambda) &= \sum^N_{i=1} \ln h_{j_i} + \lambda \left(\sum^m_{i=1} h_j\Delta_j - 1 \right)\\ &= n^T \ln h + \lambda (\Delta^T h - 1) \end{aligned} \]\(\frac{\partial \mathcal{L}}{\partial h}=\frac{n}{h} + \lambda\Delta=0\),两边同时左乘 \(h^T\) 得 \(N+\lambda=0\),故 \(\lambda=-N\),故 \(\hat{h}=\frac{n}{N\Delta}\)。
Comment.
该结果可视为带权类别分布的极大似然估计,当每个区域体积相等时,退化为类别分布。