反转主成分分数的符号是​​否可以接受?

机器算法验证 主成分分析
2022-03-29 13:32:04

我有两个来自类似心理语言学实验的数据集。在这两者中,都收集了有关参与者阅读和拼写能力的信息,然后将其转换为标准化分数 zRead 和 zSpell。目的是在检查实验的启动效应时将这些用作协变量。因为这些预测变量是相关的,并且因为理论上区分它们的共享方差和它们的独特影响是有用的,所以我正在研究使用主成分,即从 zRead 和 zSpell 分数生成两个主成分,并将它们用作协变量线性混合模型。

问题在于,虽然每个实验的主成分相似,PC1 索引共享方差,PC2 区分阅读和拼写能力,但 PC2 的符号在每个数据集中是不同的,即:

实验一相关表:

       zSpell zRead  PC1a   PC2a
zSpell  1.000 0.504 0.867 -0.498
zRead   0.504 1.000 0.867  0.498
PC1a    0.867 0.867 1.000  0.000
PC2a   -0.498 0.498 0.000  1.000

实验二:

       zSpell  zRead  PC1a   PC2a
zSpell  1.000  0.485 0.862  0.508
zRead   0.485  1.000 0.862 -0.508
PC1a    0.862  0.862 1.000  0.000
PC2a    0.508 -0.508 0.000  1.000

目的是将两个相关数据集一起呈现,因此解释 PC2 如何在每个数据集中表示(稍微)不同的事物可能会令人困惑。是否可以通过乘以 -1 来反转单个组件的分数?如果不是,如果解释更有意义,是否可以一次反转所有组件?我看不到这会改变变量的相关结构,但我不确定是否有其他原因可以避免它。

4个回答

特征向量的符号本质上是任意的;PC1a如果一位同事要在不同的计算机上对相同的数据进行相同的分析,那么看到一个或两个特征向量(您的, & PC2a)具有不同的符号也就不足为奇了。在同一台计算机上使用相同的数据但通过不同的软件包计算 PCA 也可以产生相同的效果。

因此,您可以在不改变 PCA 的情况下非常高兴地改变特征向量的符号。

将主成分向量乘以负号就可以了。对于 0 均值数据矩阵,PCA 计算,X

maxw(Xw)T(Xw)
st 等式约束是存在的,我们可以使与我们希望的一样大,因此整个最大化程序将是不适定的。如您所见,如果我们定义,则新程序是相同的:wTw=1.||w||w=w

maxw(Xw)T(Xw)
st .wTw=1.

您可以使用理论和 PCA 使用公式构建组件。

例如

  • 综合能力=zSpell + zRead
  • 与阅读相比,拼写的相对能力 =zSpell - zRead

这基本上就是 PCA 正在做的事情。但是,它消除了跨分析的不同迹象的问题。

如果研究使用完全相同的变量,您甚至可以更进一步,通过共同的均值和标准差对两项研究中的变量进行标准化。这将使两项研究中的绝对值具有可比性。

反转组件的符号很好。组件的方向是任意的。您可以参考 Harman (1976) Modern Factor Analysis 作为参考。

其它你可能感兴趣的问题