spss主成分分析的两个背景是:数据相关性的背景和变量之间协方差/相关系数的背景。
1、数据相关性的背景:主成分分析通过计算各个变量的协方差/相关系数,找到可以解释大量数据变化的几个主成分,从而减少数据的复杂性和冗余性。
2、变量之间协方差/相关系数的背景:主成分分析基于一些假设,即假设变量之间有相同的方差,这就需要在运行主成分分析之前对变量进行标准化的处理,消除量纲和标准化单位差异的影响。
SPSS主成分分析的背景涉及到数据相关性和变量之间协方差/相关系数,这为进行数据降维和简化多元变量提供了理论基础。
在前面我们学习了一种有监督的降维方法——线性判别分析(Linear Dscriminant Analysis,LDA)。LDA不仅是一种数据压缩方法还是一种分类算法,LDA将一个高维空间中的数据投影到一个低维空间中去,通过最小化投影后各个类别的类内方差和类间均值差来寻找最佳的投影空间。
本文介绍的主成分分析(Principe Component Analysis,PCA)也是一种降维技术,与LDA不同的是,PCA是一种无监督降维技术,因此PCA的主要思想也与LDA不同。LDA是一种有监督的分类兼降维技术,因此其最大化均值差最小化类内差的思想够保证在降维后各个类别依然能够很好地分开。但PCA只用来降维而无需分类,因此PCA需要考虑的是如何在降维压缩数据后尽可能的减少数据信息的损失。在PCA中使用协方差来表示信息量的多少,至于为什么能这么表示后面再进行介绍。下面我们从一些基本的线代知识开始。
在进行数据分析时我们的数据样本经常被抽象为矩阵中的一组向量,了解一些线代基础知识理解PCA非常重要,但在这里我们并不准备也不可能将所有的线代知识都罗列以便,因此这里我们仅会复习一些对理解PCA较为重要的东西。更多线代的内容可参考下面几个链接:
为了方便,我们这里以一个二维平面为例。
在前面我们说了,在数据处理时我们经常讲一个样本数据当作一个向量。在二维平面中,一个向量从不同的角度有不同的理解方式,例如对于向量 (-2, 3) T :
在我们描述任何东西的时候其实都是选择了一个参照系的,也即事物都是相对的,最简单的运动与静止(以静止的事物为参照),说一个有点意思的——人,人其实也是放在一个参考系中的,我们可以将其理解为生物种类系统,抛开这个大的系统去独立的定义人是很难让人理解的。向量也是这样的,虽然我们前面没有指明,但是上面的向量其实是在一个默认坐标系(或称为空间)中的,也即x,y轴,但是在线性代数中我们称其为基。在线代中任何空间都是由一组线性无关的(一维空间由一个基组成)基向量组成。这些基向量可以组成空间中的任何向量。
现在假设我们有如下一个矩阵相乘的式子:
因此,上面的例子可以有两种理解方式:
(1)如果我们将值全为1对角方阵视为标准坐标系,则它表示在 i=(1, -2) T 和 j=(3, 0) T 这组基底下的坐标 (-1, 2) T 在基底 (1, 0) T 、(0, 1) T 下的坐标,如下:
当我们讨论向量 (-1, 2) T 时,都隐含了一个默认的基向量假设:沿着x轴方向长度为1的 i,沿着y轴长度为1的j。
但是,(-1, 2) T 可以是任何一组基底下的向量。例如,他可能是i'=(2,1) T , j'=(-1, 1) T 这组基下的一个向量。此时他在我们默认坐标系 i=(1, 0) T ,j=(0, 1) T 下的计算过程如下:
我们可以从另一个角度理解基地变换的过程:我们先 误认为 (-1, 2) T 是坐标系i=(1, 0) T ,j=(0, 1) T 下的坐标,此时我们通过线性变换[[2, -1], [1, 1]](每个嵌套列表看做一行)把坐标轴i,j(基坐标)分别变换到了新的位置 i1=(2, 1) T , j1=(-1, 1) T (他们也是用默认坐标系表示的),即[2, -1], [1, 1]]。此时我们把“误解”转换成了真正的向量。如下:
在上面我们说了矩阵是一种变换,现在我们继续从这个角度来理解特征值和特征向量。为了方便理解,我们在这里做一个类比——将变换看作物理中的作用力。我们知道一个力必须有速度和方向,而矩阵对一个向量施加的变换也是一样的。考虑一下特征向量的定义:
上面介绍了一些基本的线性代数相关的知识,下面开始介绍PCA的原理。
上面我们讨论了选择不同的基可以对同样一组数据给出不同的表示,而且如果基的数量少于向量本身的维数,则可以达到降维的效果。但是我们还没有回答一个最最关键的问题:如何选择基才是最优的。或者说,如果我们有一组N维向量,现在要将其降到K维(K小于N),那么我们应该如何选择K个基才能最大程度保留原有的信息?
要完全数学化这个问题非常繁杂,这里我们用一种非形式化的直观方法来看这个问题。
为了避免过于抽象的讨论,我们仍以一个具体的例子展开。假设我们的数据由五条记录组成,将它们表示成矩阵形式:
其中每一列为一条数据记录,而一行为一个字段。为了后续处理方便,我们首先将每个字段内所有值都减去字段均值,其结果是将每个字段都变为均值为0(这样做的道理和好处后面会看到)。中心化的数据为:
通过上一节对基变换的讨论我们知道,这个问题实际上是要在二维平面中选择一个方向,将所有数据都投影到这个方向所在直线上,用投影值表示原始记录。这是一个实际的二维降到一维的问题。
那么如何选择这个方向(或者说基)才能尽量保留最多的原始信息呢?一种直观的看法是:希望投影后的投影值尽可能分散。
以上图为例,可以看出如果向x轴投影,那么最左边的两个点会重叠在一起,中间的两个点也会重叠在一起,于是本身四个各不相同的二维点投影后只剩下两个不同的值了,这是一种严重的信息丢失,同理,如果向y轴投影最上面的两个点和分布在x轴上的两个点也会重叠。所以看来x和y轴都不是最好的投影选择。我们直观目测,如果向通过第一象限和第三象限的斜线投影,则五个点在投影后还是可以区分的。
下面,我们用数学方法表述这个问题。
对于上面二维降成一维的问题来说,找到那个使得方差最大的方向就可以了。不过对于更高维,还有一个问题需要解决。考虑三维降到二维问题。与之前相同,首先我们希望找到一个方向使得投影后方差最大,这样就完成了第一个方向的选择,继而我们选择第二个投影方向。
如果我们还是单纯只选择方差最大的方向,很明显,这个方向与第一个方向应该是“几乎重合在一起”,显然这样的维度是没有用的,因此,应该有其他约束条件。 从直观上说,让两个字段尽可能表示更多的原始信息,我们是不希望它们之间存在(线性)相关性的,因为相关性意味着两个字段不是完全独立,必然存在重复表示的信息。
可以看到,在字段均值为0的情况下,两个字段的协方差简洁的表示为其内积除以元素数m。
当协方差为0时,表示两个字段完全独立。为了让协方差为0,我们选择第二个基时只能在与第一个基正交的方向上选择。因此最终选择的两个方向一定是正交的。
至此,我们得到了降维问题的优化目标: 将一组N维向量降为K维(K大于0,小于N),其目标是选择K个单位(模为1)正交基,使得原始数据变换到这组基上后,各字段两两间协方差为0,而字段的方差则尽可能大(在正交的约束下,取最大的K个方差)。
上面我们导出了优化目标,但是这个目标似乎不能直接作为操作指南(或者说算法),因为它只说要什么,但根本没有说怎么做。所以我们要继续在数学上研究计算方案。
我们看到,最终要达到的目的与字段内方差及字段间协方差有密切关系。因此我们希望能将两者统一表示,仔细观察发现,两者均可以表示为内积的形式,而内积又与矩阵相乘密切相关。于是我们来了灵感:
假设我们只有a和b两个字段,那么我们将它们按行组成矩阵X:
然后我们用X乘以X的转置,并乘上系数1/m:
根据矩阵相乘的运算法则,这个结论很容易被推广到一般情况:
设我们有m个n维数据记录,将其按列排成n乘m的矩阵X,设C=1/m(XX T ),则C是一个对称矩阵,其对角线分别个各个字段的方差,而第i行j列和j行i列元素相同,表示i和j两个字段的协方差。
根据上述推导,我们发现要达到优化目前,等价于将协方差矩阵对角化:即除对角线外的其它元素化为0,并且在对角线上将元素按大小从上到下排列,这样我们就达到了优化目的 。这样说可能还不是很明晰,我们进一步看下原矩阵与基变换后矩阵协方差矩阵的关系:
设原始数据矩阵X对应的协方差矩阵为C,而P是一组基按行组成的矩阵,设Y=PX,则Y为P对X做基变换后的数据。设Y的协方差矩阵为D,我们推导一下D与C的关系:
现在所有焦点都聚焦在了协方差矩阵对角化问题上,有时,我们真应该感谢数学家的先行,因为矩阵对角化在线性代数领域已经属于被玩烂了的东西,所以这在数学上根本不是问题。
由上文知道,协方差矩阵C是一个是对称矩阵,在线性代数上,实对称矩阵有一系列非常好的性质:
1)实对称矩阵不同特征值对应的特征向量必然正交。
2)设特征向量λ重数为r,则必然存在r个线性无关的特征向量对应于λ,因此可以将这r个特征向量单位正交化。
则对协方差矩阵C有如下结论:
以上结论不再给出严格的数学证明,对证明感兴趣的朋友可以参考线性代数书籍关于“实对称矩阵对角化”的内容。
到这里,我们发现我们已经找到了需要的矩阵P:P = E T
P是协方差矩阵的特征向量单位化后按行排列出的矩阵,其中每一行都是C的一个特征向量。如果设P按照Λ中特征值的从大到小,将特征向量从上到下排列,则用P的前K行组成的矩阵乘以原始数据矩阵X,就得到了我们需要的降维后的数据矩阵Y。
PCA的特征向量的求解除了使用上述最大化方差的矩阵分解方法,还可以使用最小化损失法,具体可参见: 机器学习中的数学(4)-线性判别分析(LDA), 主成分分析(PCA) 。
总结一下PCA的算法步骤:
设有m条n维数据。
LDA和PCA都用于降维,两者有很多相同,也有很多不同的地方,因此值得好好的比较一下两者的降维异同点。
首先我们看看相同点:
我们接着看看不同点:
参考:
PCA的数学原理
线性代数的直觉
线性判别分析LDA原理总结
主成分分析方法是一种将多个指标化为少数几个不相关的综合指标(即主成分)的多元统计分析方法。由于其具有消除各指标不同量纲的影响,以及消除指标间相关性所带来的信息重叠等优点,近几年,该方法在社会经济、管理、自然科学等众多领域得到了广泛的应用,尤其是被用于系统综合评价。 在使用主成分分析方法做综合评价的过程中,由于部分学者对主成分分析的原理及主成分的定义理解不深,出现了不少错误。 本文通过分析主成分分析的原理及综合评价的特点,从理论和实际例子上证实了有关文献作者在用主成分做综合评价过程中某些做法的不合理性。给出了主成分做综合评价的充要条件,阐明了主成分所含信息量的大小与综合水平之间的差异,为充分利用形状因子(反映指标间结构性差异的主成分)提供的有效信息,提出了一种定性与定量相结合的评价体系。并通过一个实例讲解了评价过程。
本文重点讨论对降维中常用的统计分析方法之一:主成分分析法。对影响31个城市综合评价的8个指标,用主成分分析法确定8个指标的权重,并使用SPASS和Python两种实战方式进行操作。
主成分分析(Principal components analysis)的思路主要是将原始多个变量通过线性组合的(矩阵旋转)方式转化为几个线无关的变量,且新生成的变量包含了原始变量的绝大部分信息,从而达到降维的目的。但因为新生成成分中所有原变量都占有一定比例,不同比例之间没有一个统一衡量的标准,所以这种方式在解释性方面相对较差。
实际使用的时候,如果变量间的数据波动量比较大,需要进行数据的归一化处理。但在标准化的过程中会抹杀一部分原本刻画变量之间离散程度差异的信息。所以标准化是视实际使用场景而定。
主成分分析不要求数据呈正态分布,主要是使用了线性变换的技术,因为其应用范围较广,通过对原始变量进行综合与简化,可以客观地确定各个指标的权重,避免主观判断的随意性。但是从主成分的思路出发,其主要适用于变量间相关性较强的数据,如果原始数据相关性弱,则起不到很好的降维作用,且降维后存在一定的数据丢失。
从食品,衣着,居住,家庭设备,交通通讯,文教娱乐,医疗保健,其他8个指标对全国31个主要城市统计
注:数据不具实际含义,仅用于分析过程学习。
注Bartlett球形度检验:检验是否适合主成分析。其原假设是变量间两两相互独立。KMO判断适合主成分析的程度。
查看各个主成分的特征根,方差,方差占比。
主要查看各个维度在成分上的载荷
根据上一步的计算的权重计算主每个城市得分:
Indicator = ∑DiWi (D表示原始指标数值,W表示当前维度的权重)
我们采用机器学习库Scikit-learn进行PCA操作,基于协方差进行矩阵变换。
从31和32结果中可以看到排名中有些城市在两种方式上的结果略微有些差异,这个是SPASS和Scikit-learn实现上存在一定的差异,本文的重点在于讨论主成分分析在两种方式上的实现。
如果问题,欢迎回复交流。如有需要源数据的,可以回复获取。
特别声明,本文的数据来自于随机制造,不构成任何效力,仅用于技术学习使用。
一、性质不同
1、主成分分析法性质:通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量。
2、因子分析法性质:研究从变量群中提取共性因子的统计技术。
二、应用不同
1、主成分分析法应用:比如人口统计学、数量地理学、分子动力学模拟、数学建模、数理分析等学科中均有应用,是一种常用的多变量分析方法。
2、因子分析法应用:
(1)消费者习惯和态度研究(U&A)
(2) 品牌形象和特性研究
(3)服务质量调查
(4) 个性测试
(5)形象调查
(6) 市场划分识别
(7)顾客、产品和行为分类
扩展资料:
主成分分析的原理是设法将原来变量重新组合成一组新的相互无关的几个综合变量,同时,根据实际需要,尽量少取几个求和变量,以反映原始变量的信息。
这种统计方法被称为主成分分析或主成分分析,这也是一种处理降维的数学方法。主成分分析(PCA)是试图用一组新的不相关的综合指标来代替原来的指标。
因子分析为社会研究的一种有力工具,但不能确定一项研究中有几个因子。当研究中选择的变量发生变化时,因素的数量也会发生变化。此外,对每个因素的实际含义的解释也不是绝对的。
-主成分分析
-因子分析
来自: 带呀带尾呀 (数据小生、数字营销、新媒体)
主成分分析与因子分析的区别
1 目的不同: 因子分析把诸多变量看成由对每一个变量都有作用的一些公共因子和仅对某一个变量有作用的特殊因子线性组合而成,因此就是要从数据中控查出对变量起解释作用的公共因子和特殊因子以及其组合系数;主成分分析只是从空间生成的角度寻找能解释诸多变量变异的绝大部分的几组彼此不相关的新变量(主成分)。
2 线性表示方向不同: 因子分析是把变量表示成各公因子的线性组合;而主成分分析中则是把主成分表示成各变量的线性组合。
3 假设条件不同:主成分分析中不需要有假设;因子分析的假设包括:各个公共因子之间不相关,特殊因子之间不相关,公共因子和特殊因子之间不相关。
4 提取主因子的方法不同:因子分析抽取主因子不仅有主成分法,还有极大似然法,主轴因子法,基于这些方法得到的结果也不同;主成分只能用主成分法抽取。
5 主成分与因子的变化:当给定的协方差矩阵或者相关矩阵的特征值唯一时,主成分一般是固定的;而因子分析中因子不是固定的,可以旋转得到不同的因子。
6 因子数量与主成分的数量:在因子分析中,因子个数需要分析者指定(SPSS根据一定的条件自动设定,只要是特征值大于1的因子主可进入分析),指定的因子数量不同而结果也不同;在主成分分析中,成分的数量是一定的,一般有几个变量就有几个主成分(只是主成分所解释的信息量不等)。
7 功能:和主成分分析相比,由于因子分析可以使用旋转技术帮助解释因子,在解释方面更加有优势;而如果想把现有的变量变成少数几个新的变量(新的变量几乎带有原来所有变量的信息)来进入后续的分析,则可以使用主成分分析。当然,这种情况也可以使用因子得分做到,所以这种区分不是绝对的。
1 、聚类分析
基本原理:将个体(样品)或者对象(变量)按相似程度(距离远近)划分类别,使得同一类中的元素之间的相似性比其他类的元素的相似性更强。目的在于使类间元素的同质性最大化和类与类间元素的异质性最大化。
常用聚类方法:系统聚类法,K-均值法,模糊聚类法,有序样品的聚类,分解法,加入法。
注意事项:1 系统聚类法可对变量或者记录进行分类,K-均值法只能对记录进行分类;
2 K-均值法要求分析人员事先知道样品分为多少类;
3 对变量的多元正态性,方差齐性等要求较高。
应用领域:细分市场,消费行为划分,设计抽样方案等
2、判别分析
基本原理:从已知的各种分类情况中总结规律(训练出判别函数),当新样品进入时,判断其与判别函数之间的相似程度(概率最大,距离最近,离差最小等判别准则)。
常用判别方法:最大似然法,距离判别法,Fisher判别法,Bayes判别法,逐步判别法等。
注意事项:1 判别分析的基本条件:分组类型在两组以上,解释变量必须是可测的;
2 每个解释变量不能是其它解释变量的线性组合(比如出现多重共线性情况时,判别权重会出现问题);
3 各解释变量之间服从多元正态分布(不符合时,可使用Logistic回归替代),且各组解释变量的协方差矩阵相等(各组协方方差矩阵有显著差异时,判别函数不相同)。
相对而言,即使判别函数违反上述适用条件,也很稳健,对结果影响不大。
应用领域:对客户进行信用预测,寻找潜在客户(是否为消费者,公司是否成功,学生是否被录用等等),临床上用于鉴别诊断。
3、 主成分分析/ 因子分析
主成分分析基本原理:利用降维(线性变换)的思想,在损失很少信息的前提下把多个指标转化为几个综合指标(主成分),即每个主成分都是原始变量的线性组合,且各个主成分之间互不相关,使得主成分比原始变量具有某些更优越的性能(主成分必须保留原始变量90%以上的信息),从而达到简化系统结构,抓住问题实质的目的。
因子分析基本原理:利用降维的思想,由研究原始变量相关矩阵内部的依赖关系出发,把一些具有错综复杂关系的变量归结为少数几个综合因子。(因子分析是主成分的推广,相对于主成分分析,更倾向于描述原始变量之间的相关关系)
求解主成分的方法:从协方差阵出发(协方差阵已知),从相关阵出发(相关阵R已知)。
(实际研究中,总体协方差阵与相关阵是未知的,必须通过样本数据来估计)
求解因子载荷的方法:主成分法,主轴因子法,极大似然法,最小二乘法,a因子提取法。
注意事项:1 由协方差阵出发与由相关阵出发求解主成分所得结果不一致时,要恰当的选取某一种方法;
2 对于度量单位或是取值范围在同量级的数据,可直接求协方差阵;对于度量单位不同的指标或是取值范围彼此差异非常大的指标,应考虑将数据标准化,再由协方差阵求主成分;
3主成分分析不要求数据来源于正态分布;
4 在选取初始变量进入分析时应该特别注意原始变量是否存在多重共线性的问题(最小特征根接近于零,说明存在多重共线性问题)。
5 因子分析中各个公共因子之间不相关,特殊因子之间不相关,公共因子和特殊因子之间不相关。
应用领域:解决共线性问题,评价问卷的结构效度,寻找变量间潜在的结构,内在结构证实。
4、对应分析/最优尺度分析
基本原理:利用降维的思想以达到简化数据结构的目的,同时对数据表中的行与列进行处理,寻求以低维图形表示数据表中行与列之间的关系。
对应分析:用于展示变量(两个/多个分类)间的关系(变量的分类数较多时较佳);
最优尺度分析:可同时分析多个变量间的关系,变量的类型可以是无序多分类,有序多分类或连续性变量,并 对多选题的分析提供了支持。
5、典型相关分析
基本原理:借用主成分分析降维的思想,分别对两组变量提取主成分,且使从两组变量提取的主成分之间的相关程度达到最大,而从同一组内部提取的各主成分之间互不相关。
欢迎分享,转载请注明来源:品搜搜测评网