丽莎会馆 加入收藏  -  设为首页
您的位置:婚纱摄影 > PS教程 > 正文
主成分分析的基本思想
主成分分析的基本思想
提示:

主成分分析的基本思想

主成分分析的基本思想是设法将原来众多具有一定相关性(比如P个指标),重新组合成一组新的互相无关的综合指标来代替原来的指标。 主成分分析(Principal Component Analysis,PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。 在实际课题中,为了全面分析问题,往往提出很多与此有关的变量(或因素),因为每个变量都在不同程度上反映这个课题的某些信息。 主成分分析首先是由K.皮尔森(Karl Pearson)对非随机变量引入的,尔后H.霍特林将此方法推广到随机向量的情形。信息的大小通常用离差平方和或方差来衡量。 历史: 1846年,Bracais提出的旋转多元正态椭球到“主坐标”上,使得新变量之间相互独立。皮尔逊(Pearson)(1901)、霍特林(Hotelling)(1933)都对主成分的发展做出了贡献,霍特林的推导模式被视为主成分模型的成熟标志。主成分分析被广泛应用于区域经济发展评价,服装标准制定,满意度测评,模式识别,图像压缩等许多领域。

主成分分析的基本思想
提示:

主成分分析的基本思想

主成分分析的基本思想介绍如下: 主成分分析的原理是设法将原来变量重新组合成一组新的相互无关的几个综合变量,同时根据实际需要从中可以取出几个较少的总和变量尽可能多地反映原来变量的信息的统计方法叫做主成分分析或称主分量分析,也是数学上处理降维的一种方法。 主成分分析的主要作用 1.主成分分析能降低所研究的数据空间的维数。 2.有时可通过因子负荷aij的结论,弄清X变量间的某些关系。 3.多维数据的一种图形表示方法。 4.由主成分分析法构造回归模型。即把各主成分作为新自变量代替原来自变量x做回归分析。 5.用主成分分析筛选回归变量。 最经典的做法就是用F1(选取的第一个线性组合,即第一个综合指标)的方差来表达,即Va(rF1)越大,表示F1包含的信息越多。因此在所有的线性组合中选取的F1应该是方差最大的,故称F1为第一主成分。 拓展: 主成分分析是指通过将一组可能存在相关性的变量转换城一组线性不相关的变量,转换后的这组变量叫主成分。 主成分分析步骤:1、对原始数据标准化,2、计算相关系数,3、计算特征,4、确定主成分,5、合成主成分。

主成分分析法的优缺点
提示:

主成分分析法的优缺点

主成分分析(Principal Component Analysis,PCA)是一种常用的多元统计分析方法,其优缺点如下: 优点: 降维效果显著:PCA可以将原始数据集的维度降低,从而方便数据的可视化和处理。 减少冗余信息:PCA可以从原始数据中提取出主要的特征,减少冗余信息的影响。 去除噪声:PCA可以通过特征值分解的方法去除噪声,提高数据的准确性和可靠性。 提高计算效率:PCA通过对协方差矩阵进行特征值分解,可以将大规模数据计算转化为少量特征向量的计算,从而提高计算效率。 缺点: 对异常值敏感:PCA对异常值比较敏感,可能会导致提取出的主成分偏离真实情况。 对数据分布的假设:PCA假设数据符合高斯分布,如果数据分布与该假设不符,则可能导致分析结果不准确。 解释性不足:PCA提取的主成分可能难以解释其含义,需要通过额外的分析和解释才能得出结论。 受样本量和变量个数限制:PCA的应用需要考虑样本量和变量个数的限制,如果样本量不足或变量过多,可能会导致提取的主成分不具有代表性。

如何理解主成分分析的主成分得分?
提示:

如何理解主成分分析的主成分得分?

比如你想评价学生的总成绩(绩点),自变量是一些科目:数学、物理、化学、语文、政治、历史。比如主成分合并后:将数学、物理、化学、合并为理科;将语文、政治、历史合并为文科。那么主成分得分,就是理科(综合)得分、文科(综合)得分最终目的当然是为了计算总成绩(绩点)。 主成分分析(Principal Component Analysis,PCA), 是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。 在实际课题中,为了全面分析问题,往往提出很多与此有关的变量(或因素),因为每个变量都在不同程度上反映这个课题的某些信息。 名词解释: 在用统计分析方法研究多变量的课题时,变量个数太多就会增加课题的复杂性。人们自然希望变量个数较少而得到的信息较多。在很多情形,变量之间是有一定的相关关系的,当两个变量之间有一定相关关系时,可以解释为这两个变量反映此课题的信息有一定的重叠。 主成分分析是对于原先提出的所有变量,将重复的变量(关系紧密的变量)删去多余,建立尽可能少的新变量,使得这些新变量是两两不相关的,而且这些新变量在反映课题的信息方面尽可能保持原有的信息。

主成分分析法适用于哪些问题
提示:

主成分分析法适用于哪些问题

主成分分析法适用于变量间有较强相关性的数据,若原始数据相关性弱,则起不到很好的降维作用,降维后,存在少量信息丢失,不可能包含100%原始数据。
主成分分析是一种统计方法,即通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。主成分分析首先是由K.皮尔森对非随机变量引入的,而后H.霍特林将此方法推广到随机向量的情形。

主成分分析法适用于哪些问题?
提示:

主成分分析法适用于哪些问题?

主成分分析法适用于人口统计学、数量地理学、分子动力学模拟、数学建模、数理分析等问题,是一种常用的多变量分析方法。主成分分析作为基础的数学分析方法,其实际应用十分广泛。 主成分分析,是一种统计方法。通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。在实际课题中,为了全面分析问题,往往提出很多与此有关的变量或因素,因为每个变量都在不同程度上反映这个课题的某些信息。 主成分分析法原理 在用统计分析方法研究多变量的课题时,变量个数太多就会增加课题的复杂性。人们自然希望变量个数较少而得到的信息较多。在很多情形,变量之间是有一定的相关关系的,当两个变量之间有一定相关关系时,可以解释为这两个变量反映此课题的信息有一定的重叠。 主成分分析是对于原先提出的所有变量,将重复的变量关系紧密的变量删去多余,建立尽可能少的新变量,使得这些新变量是两两不相关的,而且这些新变量在反映课题的信息方面尽可能保持原有的信息。 设法将原来变量重新组合成一组新的互相无关的几个综合变量,同时根据实际需要从中可以取出几个较少的综合变量尽可能多地反映原来变量的信息的统计方法叫做主成分分析或称主分量分析,也是数学上用来降维的一种方法。

主成分分析-PCA
提示:

主成分分析-PCA

最近在 3d face 模型生成研究中,经常使用PCA,所以就把PCA的学习记录了下来。主成分分析(PCA, Principal Component Analysis)为我们提供了一种压缩数据的方式,我们也可以将它看作学习数据表示的无监督学习算法。PCA学习一种比原始维度更低的表示,也学习了一种元素之间没有线性相关的表示。我们知道一个经典的无监督学习任务就是找到数据的最佳表示。最佳表示可以是在比本身表示的信息更简单或者更易访问受到一些惩罚火或限制的情况下,尽可能多地保留原始数据的信息。那么PCA就为我们提供了这样一种方法。 PCA(Principal Component Analysis),即主成分分析方法,是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。PCA的工作就是从原始的空间中顺序地找一组相互正交的坐标轴,新的坐标轴的选择与数据本身是密切相关的。其中,第一个新坐标轴选择是原始数据中方差最大的方向,第二个新坐标轴选取是与第一个坐标轴正交的平面中使得方差最大的,第三个轴是与第1,2个轴正交的平面中方差最大的。依次类推,可以得到n个这样的坐标轴。通过这种方式获得的新的坐标轴,我们发现,大部分方差都包含在前面k个坐标轴中,后面的坐标轴所含的方差几乎为0。于是,我们可以忽略余下的坐标轴,只保留前面k个含有绝大部分方差的坐标轴。事实上,这相当于只保留包含绝大部分方差的维度特征,而忽略包含方差几乎为0的特征维度,实现对数据特征的降维处理。 我们有样本X和样本Y,那么可以得到样本X的均值: 样本X方差: 由以上的基础公式我们可以得出以下的结论: 协方差为正时,说明X和Y是正相关关系;协方差为负时,说明X和Y是负相关关系;协方差为0时,说明X和Y是相互独立,互不相关。Cov(X,X)就是X的方差。当样本是n维数据时,它们的协方差实际上是协方差矩阵(对称方阵)。例如,对于3维数据(x,y,z),计算它的协方差就是: 其实协方差矩阵和散度矩阵关系密切,散度矩阵就是协方差矩阵乘以(总数据量-1)。因此它们的 特征值 和 特征向量 是一样的。这里值得注意的是,散度矩阵是 SVD奇异值分解 的一步,因此PCA和SVD是有很大联系 其中,λ是特征向量v对应的特征值,一个矩阵的一组特征向量是一组正交向量。 其中,Q是矩阵A的特征向量组成的矩阵,而矩阵Σ则是一个对角阵,对角线上的元素就是特征值。 假设A是一个m*n的矩阵,那么得到的U是一个 m*m 的方阵,U里面的正交向量被称为左奇异向量。Σ是一个 m*n 的矩阵,Σ除了对角线其它元素都为0,对角线上的元素称为奇异值。 Vt (t在右上角)是v的转置矩阵,是一个 n*n 的矩阵,它里面的正交向量被称为右奇异值向量。而且一般来讲,我们会将Σ上的值按从大到小的顺序排列。 降到k维 注:这里除或不除样本数量n或n-1,其实对求出的特征向量没有影响。 的特征值与特征向量。 注:为什么使用: 降到k维 ,当样本数多、样本特征数也多的时候,这个计算还是很大的。当我们用到SVD分解协方差矩阵的时候,SVD有两个好处: 对照就会发现,结果是不一样的。sklearn中的PCA是通过svd_flip函数实现的,sklearn对奇异值分解结果进行了一个处理,因为 ui * σi * vi=(-ui) * σi * (-vi) ,也就是u和v同时取反得到的结果是一样的,而这会导致通过PCA降维得到不一样的结果(虽然都是正确的)。具体了解可以自己分析一下sklearn中关于PCA的源码。 对于PCA可以做什么,对应于不同的业务,有不同的使用场景。 例如我最早接触时,用来分析2D人脸的图片矩阵化后里面的主要成分,提取出关键的维度,使用低维度的矩阵来表示人脸的特征。 当然对应于其他的数据,也是可以使用PCA的,例如在一个向量化好的用户信息矩阵中,需要提取出关键的维度来作为特征描写。所以他的使用场景就类似于他的名字,分析矩阵里面的主要成分,但是维度具体取多少,需要按照自己的数据来计算,也许需要多次的验证。

主成分分析(PCA)
提示:

主成分分析(PCA)

        在许多领域的研究与应用中,往往需要对反映事物的多个变量进行大量的观测,收集大量数据以便进行分析寻找规律。多变量大样本无疑会为研究和应用提供了丰富的信息,但也在一定程度上增加了数据采集的工作量,更重要的是在多数情况下,许多变量之间可能存在相关性,从而增加了问题分析的复杂性,同时对分析带来不便。如果分别对每个指标进行分析,分析往往是孤立的,而不是综合的。盲目减少指标会损失很多信息,容易产生错误的结论。

       因此需要找到一个合理的方法,在减少需要分析的指标同时,尽量减少原指标包含信息的损失,以达到对所收集数据进行全面分析的目的。由于各变量间存在一定的相关关系,因此有可能用较少的综合指标分别综合存在于各变量中的各类信息。

       主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一。在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用。

        PCA的思想是将n维特征映射到k维上(k<n),这k维是全新的正交特征。这k维特征称为主元,是重新构造出来的k维特征,而不是简单地从n维特征中去除其余n-k维特征。

        如图。我们希望找到某一个维度方向,它可以代表这两个维度的数据。图中列了两个向量方向,u1和u2,那么哪个向量可以更好的代表原始数据集呢?从直观上也可以看出,u1比u2好。

        为什么u1比u2好呢?可以有两种解释,第一种解释是样本点到这个直线的 距离足够近 ,第二种解释是样本点在这个直线上的 投影能尽可能的分开 。

        假设三维空间中有一系列点,这些点分布在一个过原点的斜面上,如果你用自然坐标系x,y,z这三个轴来表示这组数据的话,需要使用三个维度,而事实上,这些点的分布仅仅是在一个二维的平面上,那么,问题出在哪里?如果你再仔细想想,能不能 把x,y,z坐标系旋转一下 ,使数据所在平面与x,y平面重合?这就对了!如果把旋转后的坐标系记为x',y',z',那么这组数据的表示只用x'和y'两个维度表示即可!认为把数据降维后并没有丢弃任何东西,因为这些数据在平面以外的第三个维度的分量都为0,即z'的坐标为0。假设这些数据在z'轴有一个很小的抖动,那么我们仍然用上述的二维表示这些数据,理由是我们可以认为这两个轴x'和y'的信息是数据的主成分,而这些信息对于我们的分析已经足够了,z'轴上的抖动很有可能是噪声。

内积运算:

内积的几何意义:

        注意这里我们专门区分了矢量长度和标量长度,标量长度总是大于等于0,值就是线段的长度;而矢量长度可能为负,其绝对值是线段长度,而符号取决于其方向与标准方向相同或相反。

        A与B的内积等于A到B的投影长度乘以B的模。再进一步,如果我们假设B的模为1,即让|B|=1|B|=1,那么就变成了:

        则内积几何意义:设向量B的模为1,则A与B的内积值等于A向B所在直线投影的矢量长度!

(1)什么是基?

        如上图,我们经常用线段终点的点坐标表示向量,例如上面的向量可以表示为(3,2)。但是 只有一个(3,2)本身是不能够精确表示一个向量的 。这里的3实际表示的是向量在x轴上的投影值是3,在y轴上的投影值是2,我们隐式把以x轴和y轴上正方向长度为1的向量为标准,即基为(1,0)和(0,1)。因为它们分别是x和y轴正方向上的单位向量,因此就使得二维平面上点坐标和向量一一对应,非常方便。

         所以,要准确描述向量,首先要确定一组基,然后给出基所在的各个直线上的投影值,进而确定坐标值。

(2)什么是基变换?

      实际上任何两个线性无关的二维向量都可以成为一组基,所谓线性无关在二维平面内可以直观认为是两个不在一条直线上的向量。例如:(1,1)和(-1,1)也可以成为一组基。

        一般来说,我们希望基的模是1,因为从内积的意义可以看到,如果基的模是1,那么就可以方便的用向量点乘基而直接获得其在新基上的坐标了!实际上,对应任何一个向量我们总可以找到其同方向上模为1的向量,只要让两个分量分别除以模就好了。则(1,1)和(-1,1)同方向上模为1的新基为:

(3)用矩阵表示基变换

        将(3,2)变换为新基上的坐标,就是用(3,2)与第一个基做内积运算,作为第一个新的坐标分量,然后用(3,2)与第二个基做内积运算,作为第二个新坐标的分量。实际上,我们可以用矩阵相乘的形式简洁的表示这个变换:

        其中矩阵的两行分别为两个基,乘以原向量,其结果刚好为新基的坐标。可以稍微推广一下,如果我们有m个二维向量,只要将二维向量按列排成一个两行m列矩阵,然后用“基矩阵”乘以这个矩阵,就得到了所有这些向量在新基下的值。例如(1,1),(2,2),(3,3),想变换到刚才那组基上,则可以这样表示:

         一般的,如果我们有M个N维向量,想将其变换为由R个N维向量表示的新空间中,那么首先将R个基按行组成矩阵A,然后将向量按列组成矩阵B,那么两矩阵的乘积AB就是变换结果,其中AB的第m列为A中第m列变换后的结果 。

        最后,上述分析同时给矩阵相乘找到了一种物理解释:两个矩阵相乘的意义是将右边矩阵中的每一列列向量变换到左边矩阵中每一行行向量为基所表示的空间中去。更抽象的说,一个矩阵可以表示一种线性变换。

        上面我们讨论了选择不同的基可以对同样一组数据给出不同的表示,而且如果基的数量少于向量本身的维数,则可以达到降维的效果。但是我们还没有回答一个最最关键的问题:如何选择基才是最优的。或者说,如果我们有一组N维向量,现在要将其降到K维(K小于N),那么我们应该如何选择K个基才能最大程度保留原有的信息?看下图:

那么如何选择最优基这个问题被形式化为:寻找一个一维基,使得所有数据变换为这个基上的坐标表示后,方差值最大。




至此我们知道一下几点:

对原始数据进行(线性变换)基变换可以对原始样本给出不同的表示;

基的维度小于数据的维度可以起到降维的效果;

对基变换后的新样本求其方差,选取使其方差最大的基作为最优基。

          对于上面二维降成一维的问题来说,找到那个使得方差最大的方向就可以了。不过对于更高维,还有一个问题需要解决。考虑三维降到二维问题。与之前相同,首先我们希望找到一个方向使得投影后方差最大,这样就完成了第一个方向的选择,继而我们选择第二个投影方向。如果我们还是单纯只选择方差最大的方向,很明显,这个方向与第一个方向应该是“几乎重合在一起”,显然这样的维度是没有用的,因此,应该有其他约束条件。从直观上说,让两个字段尽可能表示更多的原始信息,我们是不希望它们之间存在(线性)相关性的,因为相关性意味着两个字段不是完全独立,必然存在重复表示的信息。

        至此,我们得到了降维问题的优化目标:将一组N维向量降为K维(K大于0,小于N),其目标是选择K个单位(模为1)正交基,使得原始数据变换到这组基上后,各字段两两间协方差为0,而字段的方差则尽可能大(在正交的约束下,取最大的K个方差)。

推广到一般情况:

(1)拉格朗日法

(2) 奇异值分解法(SVD)

        在PCA降维过程中,当进行协方差矩阵上求解特征值时,如果面对维度高达10000*10000 ,可想而知耗费的计算量程平方级增长。面对这样一个难点,从而引出奇异值分解(SVD),利用SVD不仅可以解出PCA的解,而且无需大的计算量。

PCA算法的主要优点有:

        1、仅仅需要以方差衡量信息量,不受数据集以外的因素影响。

        2、各主成分之间正交,可消除原始数据成分间的相互影响的因素。

        3、计算方法简单,主要运算是特征值分解,易于实现。

PCA算法的主要缺点有:

        1、主成分各个特征维度的含义具有一定的模糊性,不如原始样本特征的解释性强。

        2、方差小的非主成分也可能含有对样本差异的重要信息,因降维丢弃可能对后续数据处理有影响。