6 因子分析模型
在前面的情况中,我们都认为我们有足够的训练集数量来让我们识别数据中的多重高斯结构。但当样本的维度n远大于训练集的数量m时,前面的算法就很难起到好的作用。具体来说,样本只反应了低维度信息,并且得到的协方差矩阵也是不可逆的。
1.Restriction of \(\Sigma\)¶
如果我们没有足够的数据来拟合一个完整的协方差矩阵,我们可以 对我们将要考虑的矩阵空间施加一些限制。
拟合对角矩阵¶
考虑拟合一个对角矩阵,可以证明原矩阵的极大似然估计可以用以下的对角矩阵来拟合
其中 \(\mu=\frac{1}{m}\sum_{i=1}^mx^{(i)}.\)
进一步约束¶
高斯密度的轮廓是椭圆,在有时候需要让对角元素相等,即 \(\Sigma=\sigma^2I\) ,参数的极大似然估计用
这样得到的密度图为圆形。
在上述提到的两个约束条件下,只需要 \(m\geq 2\) 我们就可以获得非奇异的协方差矩阵 \(\Sigma\).
然而,利用这样的对角化意味着我们把 \(x_i\) ,\(x_j\) 建模为不相关的。样本数据里实际上应该会包含一些相关的信息,如果这样对角化就让我们无法获得这个信息了。
我们需要提取有用特征----利用因子分析模型(Factor analysis)
2.Marginals and conditionals of Gaussians¶
在因子分析前,我们先讲述联合多元高斯分布的条件分布和边际分布。我们建立以下假设:
我们得到边际分布和条件分布
其中
3.The Factor analysis model¶
接下来介绍因子分析模型,我们首先假设联合分布 \((x,z)\) 如下:
其中,\(z\in R^k\) 为一个隐性随机变量,\(\mu \in R^n\) ,\(\Lambda \in R^{n\times k}\),对角矩阵 \(\Psi \in R^{n\times n}\),k的值一般比n小。所以在这样的假设下,每个数据点 \(x^{(i)}\) 可以理解为是通过采取k维高斯变量 \(z^{(i)}\)产生并通过仿射、添加噪声得到。
同样可以这样表示
经过计算可以得到
于是得到
根据训练集,我们可以得到对数似然函数
通过求导的方式求解是困难的,由此我们继续使用EM算法。
4.EM for factor analysis¶
EM算法的介绍见The EM algorithm