
234
|
第
7
章
PCA
的基本思想是将多个数值型预测变量组合成一个更小的变量集合,这个小集合是初始
集合的加权线性组合。这个更小的变量集合就称为
主成分
,可以“解释”完整变量集合中
的变异性,同时能够降低数据的维度。构建主成分时所使用的权重表明了初始变量对于新
的主成分的相对贡献。
PCA
方法最早是由卡尔
•
皮尔逊提出的。在一篇可能是最早的、关于无监督学习的论文
中,皮尔逊指出,在很多问题中预测变量具有变异性,所以提出了使用
PCA
方法作为对
变异性的建模技术。
PCA
可以看作线性判别分析的无监督版本,参见
5.2
节。
7.1.1
一个简单的例子
对于两个变量
X
1
和
X
2
,有两个主成分
Z
i
(
i
=
1
或
2
):
权重
称为成分的
载荷
(
loading
)
,它们将初始变量转换为主成分。第一个主成分
Z
1
是能最好地解释全部变动的线性组合,第二个主成分
Z
2
与第一个主成分是正交的,它能最
好地解释剩余的变动。(如果还有其他主成分,那么每个主成分都与其他主成分是正交的。)
经常也使用预测变量的均值偏差代替它们本身的值来计算主成分。
在
R
中,可以使用
princomp
函数来计算主成分。下面的代码在雪佛龙公司(
CVX
)和埃
克森美孚公司(
XOM
)的股价收益上进行了一次
PCA
:
oil_px <- sp500_px[, c('CVX', 'XOM')]
pca <- princomp(oil_px)
pca$loadings
Loadings:
Comp.1 Comp.2
CVX ...