为什么PCA最大化投影的总方差?


11

克里斯托弗·毕晓普(Christopher Bishop)在他的《模式识别和机器学习》一书中写道,在将数据投影到与先前选定的组件正交的空间之后,每个连续的主分量将投影在一个维度上的方差最大化。其他人显示类似的证明。

但是,这仅证明了就最大方差而言,每个连续分量都是对一个维度的最佳投影。为什么这意味着,首先选择这样的组件,投影到5个维度的方差最大化?


您能告诉我们确切地说,五维数据集的“方差”是由一个数据集投影到五个维而产生的吗?(为了使受最大化这样的量将必须是一个单个数字。)
whuber

3
很好的一点。克里斯·毕晓普(Chris Bishop)在他的书中提到将投影的方差最小化,但对于1维以上的尺寸,这还不是很清楚。我想了解在什么意义上将方差最小化以及为什么这样的程序共同将方差最小化。
michal 2014年

1
@ user123675:在您的最后一条评论中,您可能表示“最大化”,而不是“最小化”。
变形虫

是的,你是对的。抱歉!
michal 2014年

Answers:


11

几个维度上的差异(“总差异”)可以理解为仅仅是每个维度上的差异之和。从数学上讲,它是协方差矩阵的痕迹:痕迹只是所有对角元素的总和。此定义具有各种不错的属性,例如,在正交线性变换下轨迹是不变的,这意味着,如果旋转坐标轴,则总方差保持不变。

Bishop的书(第12.1.1节)证明,协方差矩阵的前导特征向量给出最大方差的方向。第二个特征向量在附加约束下给出了最大方差的方向,该约束应与第一个特征向量正交,依此类推。(我认为这构成了练习12.1)。如果目标是使2D子空间中的总方差最大化,则此过程是贪婪的最大化:首先选择一个使方差最大化的轴,然后选择另一个轴。

您的问题是:为什么此贪婪过程会获得全局最大值?

@whuber在注释中建议了一个很好的论点。让我们首先将坐标系与PCA轴对齐。协方差矩阵变成对角线:。为简单起见,我们将考虑相同的2D情况,即最大方差最大的平面是什么?我们想证明它是由前两个基向量(总方差)给出的平面。Σ=diag(λi)λ1+λ2

考虑一个由两个正交向量和跨越的平面。此平面上的总方差为因此,它是特征值与全部为正,不超过(请参见下文)且总和为系数的线性组合。如果是这样,那么几乎很明显在达到了最大值。uv

üΣü+vΣv=λ一世ü一世2+λ一世v一世2=λ一世ü一世2+v一世2
λ一世1个2λ1个+λ2

仅留下表明系数不能超过。请注意,其中是第个基向量。此数量是在和跨越的平面上的投影的平方长度。因此,它必须小于等于 QED 的的平方长度。1个üķ2+vķ2=üķ2+vķ2ķķķüvķ|ķ|2=1个

另请参阅@cardinal 对PCA的目标功能是什么的答案(遵循相同的逻辑)。


1
(+1)但是在给定各种现金量的钱包(模拟非负特征值)和固定数量的钱包的情况下,直观上不是很明显 k 您可以选择,选择 k最富有的钱包会最大化您的总现金吗?这种直觉是正确的证明几乎是微不足道的:如果您没有ķ最大,那么您可以通过将最小的金额换成更大的金额来提高总金额。
ub

@amoeba:如果目标是最大化方差之和而不是总和的方差,则没有理由使第二个投影与第一个投影正交。
Innuo 2014年

1
抱歉,我认为您已经进行了分析,以至于认识到 k维子空间是特征值的非负线性组合,其中所有系数均不能超过 1 系数的总和等于 k。(这是一个简单的矩阵乘法问题-不需要拉格朗日乘法器。)然后将我们带到钱包的比喻中。我同意必须进行一些此类分析。
ub

1
@amoeba:我的意思是我们正在考虑由特征向量组成的基数中的问题(如果我们通过乘以对角协方差矩阵来计算其方差,则这是u和v的基数)。u和v最终将成为它们,但是在证明这一阶段,我们不应该假设我认为。该论证不应该是,如果在任何时候总和都大于1,那么2个向量将不再正交,因为基数是正交的,并且每个向量最多具有1个?但是话又说回来,为什么我们将自己限制为正交向量u和v?
michal

1
@海森堡:啊,我明白了!不,我当然不是那个意思!但是我现在明白了为什么它令人困惑。我重写了最后的证明,以摆脱“选择基础”这一步骤。请看我的编辑。谢谢。
变形虫

2

如果你有 ñ 不相关的随机变量按其方差的降序排列,并被要求选择 ķ 使得他们的总和的方差最大化,您是否同意选择第一个的贪婪方法 ķ 会做到吗?

投影到其协方差矩阵特征向量上的数据本质上是 ñ 不相关的数据列,其方差等于各自的特征值。

为了使直觉更清晰,我们需要将方差最大化与计算具有最大特征值的协方差矩阵的特征向量相关联,并将正交投影与消除相关性相关联。

第二个关系对我很清楚,因为两个(零均值)向量之间的相关系数与它们的内积成正比。

方差最大化与协方差矩阵的本征分解之间的关系如下。

假使,假设 d是将列居中之后的数据矩阵。我们需要找到最大方差的方向。对于任何单位向量v,沿投影后的方差 v

Ë[dvŤdv]=vŤË[dŤd]v=vŤCØvdv

如果最大化 v 是...的特征向量 CØvd 对应于最大特征值。


原来的问题是:选择 k 它们的正交线性组合(相对于 k),以使它们的方差之和最大。选第一个的贪婪方法是否仍然很明显ķ完成吗?
变形虫

寻找 N 正交线性组合,然后选择第一个最大的变体 k其中一个就是过程描述的(宽松的)。我的回答只是宣称正交性足以使贪婪过程达到最大化总方差的目的。
Innuo 2014年

我不确定我是否遵循该论点。正交性有什么关系?如果你有N 变量,必须选择 k 总方差最高的情况下,您应该选择 ķ具有最高的方差(无论它们是否相关)。
变形虫

啊,我明白了。我的回答有错字。立即修复。
Innuo 2014年

我认为您可能会遇到一些问题,但是总和的神奇外观需要说明。这与PCA甚至与频谱分解有什么关系?
ub
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.