Fork me on GitHub

PRML第十二章习题答案

Chapter 12. Continuous Latent Variables

更新日志(截至20210423)
  • 20210423:首次提交,含习题简述及习题 12.2,12.3 的详解

习题简述

  • PCA
    • 12.1:证明最大方差 \(M\) 维子空间由数据协方差矩阵的前 \(M\) 大特征值对应的特征向量张成
    • 12.2:用矩阵的拉格朗日乘子法解 PCA
    • 12.3:样本点个数小于特征维度时的计算技巧
    • 12.4:对隐空间做平移、旋转/反射、伸缩等不改变最大方差子空间,因为子空间映射会相应发生改变
  • 概率 PCA
    • 12.5:高斯线性模型及其对应的子空间映射
    • 12.6:概率 PCA 的概率图模型为 \(z\to x\)
    • 12.7:隐变量分布和数据的条件分布是高斯,则数据分布亦为高斯
    • 12.8:隐变量的后验分布
    • 12.9-12.10:概率 PCA 的对数似然关于子空间映射的偏置是严格凸的,因而极大值点为唯一最大值点
    • 12.11:概率 PCA 的先验方差趋于零时,随机选消失,退化为普通的 PCA
    • 12.12:概率 PCA 的先验方差大小对后验均值的影响
    • 12.13:数据点在 \(M\) 子空间的投影
    • 12.14:概率 PCA 的参数量
    • 12.15:概率 PCA 的 EM 算法
    • 12.16:将缺失数据视为隐变量,推导带缺失数据的概率 PCA 的 EM 算法
    • 12.17:基于最小二乘的子空间嵌入方法与概率 PCA 的 EM 算法的关系
    • 12.23:混合概率 PCA
  • 因子分析
    • 12.18:因子分析的参数量
    • 12.19:因子分析的旋转不变性
    • 12.20-12.22:因子分析的优化
    • 12.25:概率 PCA 和因子分析可以统一在高斯线性模型框架下
  • 核 PCA
    • 12.26:特征值零对应的子空间不影响 PCA 结果
    • 12.27:PCA 的核形式
  • 其他
    • 12.28:随机变量函数的分布
    • 12.29:两个随机变量的协方差为零不一定独立

习题详解

Exercise 12.2


Hint.

  • 迹运算的交换性:\(\text{tr}(AB) = \text{tr}(BA)\)
  • 矩阵导数的定义:\(\frac{\partial\text{tr}(A^T X)}{\partial X}=A\)

Solution.
\(\tilde{J}=\text{tr}(\widehat{U}^TS\widehat{U})+\text{tr}(H(I-\widehat{U}^T\widehat{U}))\),其中 \(H\) 是正交矩阵约束的拉格朗日乘子。注意到 \(I-\widehat{U}^T\widehat{U}\) 是对称矩阵,总可假设 \(H\) 对称而不改变正则项的值,否则可使 \(H:= (H+H^T) / 2\)

计算易得 \(\frac{\partial\tilde{J}}{\partial \widehat{U}}=2(S\widehat{U}-\widehat{U}H)\),令导数为零得 \(S\widehat{U}=\widehat{U}H\)。由于最优解满足正交约束,两边左乘 \(\widehat{U}^T\)\(H=\widehat{U}^TS\widehat{U}\),即 \(H\) 可解。不同的 \(\widehat{U}\) 间差一个正交矩阵 \(P\),即 \((\widehat{U}P)^T(\widehat{U}P)=P^T\widehat{U}^T\widehat{U}P=P^TP=I\),回代亦可验证其不改变目标函数最优值。显然当 \(\widehat{U}\)\(S\) 的特征向量,\(H\)\(S\) 的特征值时,最优解条件成立,故所有的解与 \(S\) 的特征向量差一个正交矩阵。


Comment.
正交矩阵理解为旋转和反射的组合,上述结论可以理解为,通过适当的旋转和反射,可以得到唯一的主成分向量。实际上,主成分分析只关心原空间能否用低维空间线性近似,不同坐标系下表示的子空间是等价的。


Exercise 12.3


Solution.
\(X\in\mathbb{R}^{N\times D} (D\gg N)\) 为数据矩阵,PCA 求主成分向量即求以下特征向量 \(N^{-1}X^T X u=\lambda u\)。注意到 \(X^T X\in\mathbb{R}^{D\times D}\),即面对高维数据,计算特征向量的计算量很大。本题提供一种降维思路,即等号两端左乘 \(X\),得 \(N^{-1}(XX^T) X u=\lambda Xu\),即 \(v=Xu\) 是矩阵 \(X X^T\in\mathbb{R}^{N\times N}\) 的特征向量。在等式 \(N^{-1}(XX^T)v=\lambda v\) 两端左乘 \(X^T\)\(N^{-1}(X^T X)X^Tv=\lambda X^Tv\),注意到 \(X^T v\) 亦为 \(N^{-1}(X^T X)\) 特征值为 \(\lambda\) 对应的特征向量。故将 \(X^T v\) 归一化可以得到一个 \(u'\)。只需计算 \(X^T v\) 的范数。注意到

\[\|X^T v\|^2_2 = v^T XX^T v=N\lambda \|v\|^2_2, \]

假定 \(v\) 是单位向量,则有 \(\|X^T v\|_2=(N\lambda)^{1/2}\),故 \(u'=(N\lambda)^{-1/2}X^T v\)

总结而言,对高维数据做主成分分析的步骤可以为

  1. 用幂法计算 \(X X^T\) 的前 \(M\) 大特征值 \(\lambda_m\) 及对应的特征向量 \(v_m\)
  2. \(u_m = (N\lambda_m)^{-1/2}X^T v_m\)

Comment.

  • \(X\) 的奇异值分解为 \(X=P\Lambda Q\),则 \(X^T X=Q^T\Lambda^T\Lambda Q\)\(X X^T=P\Lambda\Lambda^T P^T\),可以看到 \(X^T X\)\(X X^T\) 的非零特征值是相等的。亦是本题方法可行的一般性结论。
  • 当数据量很大时,即 \(N\) 很大时,计算量也很大。

posted @ 2021-04-23 00:07  Rotopia  阅读(213)  评论(0编辑  收藏  举报