PCA和对应关系分析与Biplot的关系


38

Biplot通常用于显示主成分分析(和相关技术)的结果。它是一个双散点图或叠加散点图,同时显示了组件负荷和组件分数。今天,@ amoeba通知我,他给出的答案与我的评论不符,而是一个问题,询问如何生成/缩放Biplot坐标;他的回答更详细地考虑了几种方式。@amoeba询问我是否愿意与biplot分享我的经验。

我的经验(无论是理论上还是实验上的经验),尽管非常谦虚,但都突出了两点,但这两点很少得到人们的认可:(1)应将Biplot归类为分析技术,而不是辅助散点图;(2)PCA,对应分析(以及其他一些众所周知的技术)实际上是双图的特殊情况。或者至少,他们俩几乎都是双胞胎。如果可以做双图,则可以做另外两个。

我对您的问题是:它们(PCA,CA,Biplot)如何为您连接?请分享您的想法。同时,我正在发布自己的帐户。我想请增加更多答案并发表批评。


哇!当我要求评论时,我没想到会有这么大的话题:)谢谢。+1,开始有趣的讨论。在我仍在消化您的答案时,请让我澄清一下:说我给出的答案与您的评论“背道而驰”,您是说我扩大了它还是反对了?我当然不是故意反对。
变形虫说恢复莫妮卡

我的意思是“ [根据自己的经历发展]”不,我没有反对意见(尽管我希望得到像您这样的专家的反对意见)。
ttnphns

Answers:


40

SVD

奇异值分解是这三种技术的根本。令为实数值表。SVD是。我们可以只使用第一潜在向量和根来获得作为的最佳 -rank近似值:。此外,我们将标出,,。Xr×cX=Ur×rSr×cVc×cm [mmin(r,c)]X(m)mXX(m)=Ur×mSm×mVc×mU=Ur×mV=Vc×mS=Sm×m

奇异值及其平方即特征值代表数据的比例尺,也称为惯性。左特征向量是数据在主轴上的行的坐标;右特征向量是数据在相同潜轴上的列的坐标。整个标度(惯性)存储在,因此坐标和是单位归一化的(列SS = 1)。SU m V S U VUmVSUV

SVD主成分分析

在PCA,它会被同意考虑的为随机观察(可以来或去),但要考虑的作为固定的维数或变量。因此,通过svd分解而不是。注意,这对应于特征分解,是样本大小。(通常,大多数情况下具有协方差-为了使它们无偏,我们更喜欢除以,但这是一个细微差别。)XX Z = X / XZ=X/rXXX/rr[R-1nr1

与常数的乘积仅影响;和仍然是行和列的单位归一化坐标。XSUV

从这里到下面,我们按照的svd而不是 svd来重新定义,和;是的规范化版本,并且规范化在分析类型之间有所不同。SUVZXZX

通过乘以我们将列中的方数设为1。考虑到行是随机情况,这是合乎逻辑的。因此,我们获得了PCA 标准标准化观测主成分分数。对于我们不会做相同的事情,因为变量是固定的实体。Ur=UUU*VUUV

然后,我们可以与所有的惯性赋予行,以获得非标准化的行坐标,也称为PCA 原始主成分得分观察:。我们将这个公式称为“直接方式”。返回相同的结果;我们将其标记为“间接方式”。USXV

类似地,我们可以赋予列所有惯性,以获得非标准化的列坐标,在PCA中也称为分量可变载荷: [如果为正方形,则可以忽略转置],即“直接方式”。相同的结果由返回,即“间接方式”。(上面的标准化主成分分数也可以根据加载量计算为,其中为加载量。)VSSZUX 小号- 1 / 2X(AS1/2)A

双线图

从降维分析本身的角度考虑双图,而不是简单地将其视为“双重散布图”。该分析与PCA非常相似。与PCA不同,行和列都被对称地视为随机观察结果,这意味着被视为维度变化的随机双向表。然后,自然地,通过正常化它和:SVD之前。Xr c Z = X / rcž=X/[RC

svd之后,像在PCA中一样计算标准行坐标:。对列向量执行相同的操作(与PCA不同),以获得标准的列坐标:。行和列的标准坐标均值为 1。ü=ü[R V *=VV=VC

像在PCA中一样,我们可以赋予行和/或列坐标以特征值的惯性。非标准化的行坐标:(直接方式)。非标准化列坐标:(直接方式)。间接方式是什么?您可以轻松地通过替换得出非标准化行坐标的间接公式为,非标准化列坐标的间接公式为。ü小号V * 小号' X V * / ç X ' ü * / řV小号XV/CXü/[R

PCA作为Biplot的特例。从上面的描述中,您可能了解到PCA和biplot仅在将归一化为然后分解的方式方面有所不同。Biplot通过行数和列数进行归一化;PCA仅通过行数进行归一化。因此,在svd之后的计算中,两者之间几乎没有差异。如果在进行biplot时在其公式中设置,则将获得准确的PCA结果。因此,双图可以看作是通用方法,而PCA可以看作是双图的特殊情况。XžC=1个

[ 列居中。某些用户可能会说:停止,但是PCA是否也不需要,并且首先要以数据列(变量)为中心来解释方差?虽然biplot可能无法对中吗?我的回答:只有狭义的PCA进行居中并解释方差;我正在讨论线性PCA广义上的PCA,它解释了与所选原点的偏差的平方和。您可以选择它作为数据平均值,本机0或任何您喜欢的数据。因此,“居中”操作无法将PCA与双图区分开。]

被动行和列

在biplot或PCA中,您可以将某些行和/或列设置为被动或补充。被动行或列不影响SVD,因此不影响惯性或其他行/列的坐标,而是在主动(非被动)行/列产生的主轴空间中接收其坐标。

要将某些点(行/列)设置为被动,(1)将和定义为仅主动行和列的数量。(2)在svd之前将无源行和列设置为零。(3)使用“间接”方法来计算无源行/列的坐标,因为它们的特征向量值为零。[RCžž

在PCA中,当您借助在旧观测值上获得的负荷(使用得分系数矩阵)来计算新传入案例的组件分数时,实际上与在PCA中获取这些新案例并使它们保持被动状态是一样的。类似地,计算某些外部变量与PCA产生的组件得分的相关性/协方差等效于将那些变量放入该PCA中并使它们保持被动状态。

惯性的任意传播

标准坐标的列均方(MS)为1。未标准化坐标的列均方(MS)等于相应主轴的惯性:将所有特征值的惯性捐赠给特征向量以生成非标准化坐标。

双线图中:对于每个主轴,行标准坐标ü具有MS = 1。行非标准坐标,也称为行坐标具有MS =对应的特征值。对于列标准坐标和非标准化(主)坐标也是如此。ü小号=XV/Cž

通常,不需要赋予全部或完全没有惯性的坐标。如果出于某种原因需要,则允许任意传播。让是惯性比例是去行。那么行坐标的一般公式为:(直接方式)=(间接方式)。如果则获得标准行坐标,而则获得主体行坐标。p1个U S p 1 X V S p 1 1 / c p 1 = 0 p 1 = 1ü小号p1个XV小号p1个-1个/Cp1个=0p1个=1个

同样是惯性比例是去列。那么列坐标的一般公式为:(直接方式)=(间接方式)。如果则获得标准列坐标,而则获得主列坐标。p2V * 小号p 2 X ' ü * 小号p 2 - 1 / [R p 2 = 0 p 2 = 1V小号p2Xü小号p2-1个/[Rp2=0p2=1个

通用间接公式具有通用性,因为它们可以为无源点(如果有)计算坐标(标准,主坐标或中间坐标)。

如果则表示惯性分布在行和列点之间。所述,即,行主列标,二维图有时被称为“形式二维图”或“行度量保存”二维图。所述,即行标准列本金,二维图通常被称为PCA文献“协方差二维图”或“列度量保存”二维图内; 它们显示可变负荷(并置的协方差)加标准化的成分得分,当内PCA施加。p1个+p2=1个p1个=1个p2=0p1个=0p2=1个

对应分析中,通常使用并通过惯性将其称为“对称”或“规范”归一化-它允许(尽管在某种程度上具有欧几里得几何严格性)比较行列点之间的接近度,例如可以在多维展开图上执行。p1个=p2=1个/2

对应分析(欧几里得模型)

双向(=简单)对应分析(CA)是用于分析双向列联表的双图,即非负表,其条目具有行和列之间某种相似性的含义。当表格为频率时,使用卡方模型对应分析。例如,当条目是均值或其他分数时,将使用简单的欧几里得模型CA。

欧几里德模型CA 如上所述只是双标图,只有表在其进入双标图操作之前被附加预处理。特别地,不仅通过和而且通过总和归一化这些值。X[RCñ

预处理包括居中,然后通过平均质量进行归一化。居中可以是各种各样的,通常是:(1)列居中;(2)行的居中;(3)双向定心,其操作与频率残差的计算相同;(4)列总和均等后的列居中;(5)在使行总和相等之后,将行居中。用平均质量归一化除以初始表的平均像元值。在预处理步骤中,将对被动行/列(如果存在)进行被动标准化:通过从主动行/列计算出的值对它们进行居中/归一化。

然后从开始,在预处理的上完成通常的双线图。Xž=X/[RC

加权基准

想象一下,行或列的活动或重要性可以是0到1之间的任何数字,而不仅仅是到目前为止讨论的经典双线图中的0(被动)或1(主动)。我们可以通过这些行和列的权重对输入数据进行加权,然后执行加权双图。使用加权双线图,权重越大,该行或该列对所有结果(惯性和主轴上所有点的坐标)的影响就越大。

用户提供行权重和列权重。首先将它们和归一化和。然后归一化步骤为,其中和是第i行和第j列的权重。权重恰好为零表示行或列是被动的。ž一世Ĵ=X一世Ĵw一世wĴw一世wĴ

在这一点上,我们可能会发现经典biplot只是这个加权biplot,对于所有活动行,权重为对于所有活动列,权重为。和是活动行和活动列的数目。1个/[R1个/C[RC

执行 svd 。所有操作都与经典biplot中的操作相同,唯一的区别是代替而代替。标准行坐标:和标准列坐标:。(这些是针对权重非零的行/列。对于权重为零的行/列,将值保留为0,并使用下面的间接公式获取标准或任意坐标)。žw一世1个/[RwĴ1个/Cü一世=ü一世/w一世VĴ=VĴ/wĴ

以所需的比例给坐标提供惯性(在和的情况下,坐标将完全不标准化或成为主体;在和,坐标将保持标准)。行:(直接方式)=(间接方式)。列:(直接方式)=(间接方式)。括号中的矩阵分别是列权重和行权重的对角矩阵。对于被动点(即权重为零),仅适合间接计算方式。对于主动(正重)点,您可以选择两种方式。p1个=1个p2=1个p1个=0p2=0ü小号p1个X[w ^Ĵ]V小号p1个-1个V小号p2[w ^一世]Xü小号p2-1个

再谈PCA作为Biplot的特例。早先考虑未加权的Biplot时,我提到PCA和biplot是等效的,唯一的区别是biplot将数据的列(变量)视为与观察(行)对称的随机情况。现在将Biplot扩展为更一般的加权Biplot,我们可以再次声明它,观察到唯一的区别是(加权)biplot将输入数据的列权重之和归一化为(1),将(加权)PCA归一化为(有效)列。因此,这里介绍了加权PCA。其结果与加权双图成比例地相同。具体来说,如果C 是活动列的数量,则对于两个分析的加权以及经典版本,以下关系为真:

  • PCA的特征值= biplot特征值;C
  • loadings =列“主要归一化”下的列坐标;
  • 标准化组件分数=行的“标准归一化”下的行坐标;
  • PCA的特征向量=列的“标准归一化”下的列坐标;/C
  • 原始成分分数=行 “主要归一化”下的行坐标。C

对应分析(卡方模型)

从技术上讲,这是加权双图,其中权重是从表本身计算的,而不是由用户提供的。它主要用于分析频率交叉表。通过绘图上的欧式距离,该双图将近似表中的卡方距离。卡方距离在数学上是由边际总数反加权的欧几里得距离。我将不进一步详细介绍卡方模型CA几何。

频率表的预处理如下:将每个频率除以期望频率,然后减去1。这与首先获得频率残差然后除以期望频率相同。将行权重设置为,将列权重设置为,其中是第i行的边际总和(仅活动列),是第j列的边际总和(仅活动行),为表的总有效金额(这三个数字来自初始表)。Xw一世=[R一世/ñwĴ=CĴ/ñ[R一世CĴñ

然后执行加权双标图:(1)规格化成。(2)权重永远不会为零(CA中不允许零和);但是,您可以通过在中将行/列置零来强制使其变为被动状态,因此它们的权重对svd无效。(3)做svd。(4)按照加权双标图计算标准坐标和惯性归因坐标。Xž[R一世CĴž

在卡方模型CA以及使用双向居中的欧几里得模型CA中,最后一个特征值始终为0,因此,最大可能的主维数为。[R-1个C-1个

此答案中,另请参见卡方模型CA的概述。

插图

这是一些数据表。

 row     A     B     C     D     E     F
   1     6     8     6     2     9     9
   2     0     3     8     5     1     3
   3     2     3     9     2     4     7
   4     2     4     2     2     7     7
   5     6     9     9     3     9     6
   6     6     4     7     5     5     8
   7     7     9     6     6     4     8
   8     4     4     8     5     3     7
   9     4     6     7     3     3     7
  10     1     5     4     5     3     6
  11     1     5     6     4     8     3
  12     0     6     7     5     3     1
  13     6     9     6     3     5     4
  14     1     6     4     7     8     4
  15     1     1     5     2     4     3
  16     8     9     7     5     5     9
  17     2     7     1     3     4     4
  28     5     3     3     9     6     4
  19     6     7     6     2     9     6
  20    10     7     4     4     8     7

下面是对这些值的分析建立的几个双重散点图(在2个主要维度上)。列点通过尖峰与原点相连,以增强视觉效果。这些分析中没有被动的行或列。

第一个双标图是“按原样”分析的数据表的SVD结果;坐标是行和列的特征向量。

在此处输入图片说明

以下是来自PCA的可能的双份之一。PCA是按“原样”对数据进行的,而不会使列居中;但是,正如PCA中所采用的那样,最初是通过行数(案例数)进行归一化的。该特定的双图显示主要行坐标(即原始成分分数)和主要列坐标(即变量加载)。

在此处输入图片说明

接下来是biplot sensu stricto:最初通过行数和列数对表进行了规范化。像上面的PCA一样,行和列坐标都使用主归一化(惯性扩展)。注意与PCA双图的相似性:唯一的不同是由于初始归一化的不同。

在此处输入图片说明

卡方模型对应分析双标图。数据表以特殊方式进行了预处理,包括双向居中和使用边际总计进行归一化。这是一个加权双图。惯性分布在行和列的坐标上对称-两者都在“主要”坐标和“标准”坐标之间。

在此处输入图片说明

所有这些散点图上显示的坐标:

point      dim1_1   dim2_1   dim1_2   dim2_2   dim1_3   dim2_3   dim1_4   dim2_4
1            .290     .247   16.871    3.048    6.887    1.244    -.479    -.101
2            .141    -.509    8.222   -6.284    3.356   -2.565    1.460    -.413
3            .198    -.282   11.504   -3.486    4.696   -1.423     .414    -.820
4            .175     .178   10.156    2.202    4.146     .899    -.421     .339
5            .303     .045   17.610     .550    7.189     .224    -.171    -.090
6            .245    -.054   14.226    -.665    5.808    -.272    -.061    -.319
7            .280     .051   16.306     .631    6.657     .258    -.180    -.112
8            .218    -.248   12.688   -3.065    5.180   -1.251     .322    -.480
9            .216    -.105   12.557   -1.300    5.126    -.531     .036    -.533
10           .171    -.157    9.921   -1.934    4.050    -.789     .433     .187
11           .194    -.137   11.282   -1.689    4.606    -.690     .384     .535
12           .157    -.384    9.117   -4.746    3.722   -1.938    1.121     .304
13           .235     .099   13.676    1.219    5.583     .498    -.295    -.072
14           .210    -.105   12.228   -1.295    4.992    -.529     .399     .962
15           .115    -.163    6.677   -2.013    2.726    -.822     .517    -.227
16           .304     .103   17.656    1.269    7.208     .518    -.289    -.257
17           .151     .147    8.771    1.814    3.581     .741    -.316     .670
18           .198    -.026   11.509    -.324    4.699    -.132     .137     .776
19           .259     .213   15.058    2.631    6.147    1.074    -.459     .005
20           .278     .414   16.159    5.112    6.597    2.087    -.753     .040
A            .337     .534    4.387    1.475    4.387    1.475    -.865    -.289
B            .461     .156    5.998     .430    5.998     .430    -.127     .186
C            .441    -.666    5.741   -1.840    5.741   -1.840     .635    -.563
D            .306    -.394    3.976   -1.087    3.976   -1.087     .656     .571
E            .427     .289    5.556     .797    5.556     .797    -.230     .518
F            .451     .087    5.860     .240    5.860     .240    -.176    -.325

2
有趣的问题(+1)以及出色而全面的答案(+1)。但是,恕我直言,答案迫切需要一些视觉帮助,以便更好地理解所有出色的数学运算。
Aleksandr Blekh

1
我添加了一些示例图片。
ttnphns 2015年

2
太棒了,谢谢你!(这并不是说我了解所有内容,但是至少,现在我更有动力去尝试:-)。
Aleksandr Blekh
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.