我不是很确定双向和单向的理解是否有道理,估计是那人的个人理解吧,即使是正确的好像也没什么用。还是尝试重新解释下PCA和factor analysis吧,数据是随机变量X_1, \ldots, X_p的抽样:

1. PCA的目标是简化数据,特别是当p很大时,希望用Y_1,\ldots,Y_q来代替X_1,\ldots,X_p,其中每一个Y_i都是X_1, \ldots, X_p的线性组合:
Y_i = \sum_{j=1}^p \alpha_j^{(i)}X_i

PCA得到的主成分(principal component)\bm{\alpha_i}:=(\alpha_1^{(i)}, \ldots, \alpha_p^{(i)}),可以看做是Correlation的推广。Covariance描述两个变量之间的协变关系,principal component描述多个变量之间的协变关系。熟知\textrm{Cor}(X_1, X_2) \approx 1表示在随机波动时,X_1X_2这两个随机变量“共进退”。那么相应地,例如第一主成分\bm{\alpha_1}中前三个分量系数都是1/\sqrt{3}后面都是0,这可以解释成X_1, X_2, X_3这三个随机变量在波动时“共进退”,第一主成分描述了这三个变量的“高阶”的“相关性”。

2. Factor analysis(FA)的目标是解释X_1,\ldots,X_p之间的相关性。FA的理论是,X_1,\ldots,X_p之所以会互相相关,原因是他们都来源于同一组隐含变量Z_1,\ldots,Z_r,每一个X_j都是Z_1,\ldots,Z_r的线性组合。一般都会假设这些Z_1,\ldots,Z_r是零均值、单位方差和互不相关的。

详细解释一下:要是X_1X_2的主成分“完全不同”,即在X_1=\sum_{l=1}^r \beta_l^{(1)} Z_lX_2=\sum_{l=1}^r \beta_l^{(2)} Z_l中对任意l\beta_l^{(1)}\beta_l^{(2)}至少有一个是0,那么X_1X_2就独立。反之,它们的系数(那些\beta)越相似,它们的相关性就越强。

总之,PCA和FA都在寻找X_1, \ldots, X_p的简洁表示,大致可以理解为:PCA在对随机变量做归纳总结,将p个变量总结为q个强相关(这里的“相关”是1.中所谓“高阶”的“相关性”)的变量;而FA则是在挖掘X_1, \ldots, X_p背后的结构,将它们各自分解成一组共同的隐含变量不同的线性组合,从而解释它们相关性的来源。

顺便提一下,有个东西叫Probabilistic PCA,在某些条件下做Probabilistic PCA和做FA等价,有兴趣可以自己探索。

— 完 —

本文作者:Jack Diamond

【知乎日报】
你都看到这啦,快来点我嘛 Σ(▼□▼メ)

此问题还有 1 个回答,查看全部。
延伸阅读:
如何有效地进行数据挖掘和分析?
数据分析和挖掘有哪些公开的数据来源?

分享到