在相关矩阵和协方差矩阵上执行主成分分析(PCA)之间的主要区别是什么?他们给出相同的结果吗?
在相关矩阵和协方差矩阵上执行主成分分析(PCA)之间的主要区别是什么?他们给出相同的结果吗?
Answers:
当变量比例相似时,倾向于使用协方差矩阵;当变量比例不同时,倾向于使用相关矩阵。
使用相关矩阵等效于标准化每个变量(均值0和标准差1)。通常,具有和不具有标准化的PCA都会得出不同的结果。尤其是当比例不同时。
例如,看一下这个R heptathlon
数据集。一些变量的平均值约为1.8(跳高),而其他变量(行程800m)约为120。
library(HSAUR)
heptathlon[,-8] # look at heptathlon data (excluding 'score' variable)
输出:
hurdles highjump shot run200m longjump javelin run800m
Joyner-Kersee (USA) 12.69 1.86 15.80 22.56 7.27 45.66 128.51
John (GDR) 12.85 1.80 16.23 23.65 6.71 42.56 126.12
Behmer (GDR) 13.20 1.83 14.20 23.10 6.68 44.54 124.20
Sablovskaite (URS) 13.61 1.80 15.23 23.92 6.25 42.78 132.24
Choubenkova (URS) 13.51 1.74 14.76 23.93 6.32 47.46 127.90
...
现在让我们对协方差和相关进行PCA:
# scale=T bases the PCA on the correlation matrix
hep.PC.cor = prcomp(heptathlon[,-8], scale=TRUE)
hep.PC.cov = prcomp(heptathlon[,-8], scale=FALSE)
biplot(hep.PC.cov)
biplot(hep.PC.cor)
注意,协方差的PCA由run800m
和主导javelin
:PC1几乎等于run800m
(解释了的方差),PC2几乎等于javelin
(一起解释了的方差)。相关性的PCA信息量更大,并揭示了数据中的某些结构以及变量之间的关系(但请注意,解释的方差分别下降到和)。
还请注意,无论使用协方差矩阵还是相关矩阵,离群个体(在此数据集中)都是离群值。
未转换的(RAW)数据:如果对于原始的,未转换的数据,变量的标度差异很大,即每天的卡路里摄入量,基因表达,ELISA / Luminex以ug / dl,ng / dl为单位,基于以下几个顺序:蛋白质表达的幅度,然后使用相关性作为PCA的输入。但是,如果您的所有数据都基于例如具有相同范围和规模的同一平台上的基因表达,或者您正在使用对数净值资产收益,那么使用相关将抛出大量信息。
VDW分数在遗传学中非常流行,许多变量被转换为VDW分数,然后输入到分析中。使用VDW分数的优势是可以从数据中去除偏度和异常值影响,并且如果目标是在正态性约束下进行分析,并且每个变量都必须是纯正态正态分布且没有偏度,则可以使用它或离群值。
一个常见的答案是建议在变量处于相同比例时使用协方差,而在比例不同时使用相关性。但是,只有当变量的比例不是一个因素时,这才是正确的。否则,为什么会有人做协方差PCA?始终执行关联PCA会更安全。
想象一下,您的变量具有不同的度量单位,例如米和千克。在这种情况下,使用米还是厘米都没有关系,因此您可以争辩说应该使用相关矩阵。
现在考虑不同州的人口。度量单位是相同的-人数(数量)。现在,规模可能会有所不同:DC拥有600K,CA拥有38M人。我们应该在这里使用相关矩阵吗?这取决于。在某些应用程序中,我们确实希望根据状态的大小进行调整。使用协方差矩阵是建立考虑国家规模的因素的一种方法。
因此,我的答案是在原始变量的方差很重要时使用协方差矩阵,而在不重要时使用相关性。
我个人认为,根据最大似然主成分分析模型(MLPCA)[1,2]讨论这些选项非常有价值。在MLPCA中,需要进行缩放(甚至旋转),以便测量变量中的测量误差是独立的,并根据标准正态分布进行分布。这种缩放也称为最大似然缩放(MALS)[3]。在某些情况下,可以一起估算PCA模型和定义MALS缩放/旋转的参数[4]。
要解释基于相关性和基于协方差的PCA,则可以认为:
如上所述,最终选择取决于您所做的假设。此外,任何特定模型的效用还取决于分析的上下文和目的。引用George EP Box的话:“所有模型都是错误的,但有些模型是有用的”。
[1] Wentzell,PD,Andrews,DT,汉密尔顿,DC,Faber,K。和Kowalski,BR(1997)。最大似然主成分分析。化学计量学报,11(4),339-366。
[2] Wentzell,PD和Lohnes,MT(1999)。具有相关测量误差的最大似然主成分分析:理论和实践考虑。化学计量学和智能实验室系统,45(1-2),65-85。
[3] Hoefsloot,HC,Verouden,MP,Westerhuis,JA和Smilde,AK(2006)。最大似然缩放(MALS)。化学计量学报,20(3-4),120-127。
[4] Narasimhan,S.和Shah,SL(2008)。使用PCA从噪声数据中进行模型识别和误差协方差矩阵估计。控制工程实践,16(1),146-155。
[5] Tipping,ME和Bishop,CM(1999)。概率主成分分析。皇家统计学会杂志:B系列(统计方法),61(3),611-622。
基于比例的论点(对于以相同物理单位表示的变量)似乎很弱。想象一下一组(无因次)变量,它们的标准偏差在0.001和0.1之间变化。与标准值1相比,这两个值似乎都很小,并且波动程度相当。但是,以分贝表示时,其范围为-60 dB,而-10和0 dB。然后,这可能会被归类为“大范围”-特别是如果您要包含接近0的标准偏差,即负无穷大dB。
我的建议是同时进行基于相关和协方差的PCA。如果两者提供的是同一台(或非常相似,无论这意味着什么),那么您可以放心,您得到的答案是有意义的。如果他们提供的PC千差万别,则不要使用PCA,因为对一个问题有两种不同的答案不是解决问题的明智方法。