【算法系列】主成分分析的推导过程

简介: 【算法系列】主成分分析的推导过程


主成分的推导

640.png

640.jpg

利用拉格朗日乘子,可得拉格朗日函数为:


640.png


它是a1的二次函数和λ的线性函数,分别对向量a1和λ微分,并令其为0,得:


640.png

由前面第一个方程,可得:

640.png

640.png

因此,λ必须是协差阵∑的一个特征根,而a1则是与此特征根相对应的特征向量。

640.jpg

如果只用第一主成分可能丧失的信息太多,这样往往还需要计算p个原始指标的第二主成分y2。


在计算第二主成分时,除去类似于计算第一主成分的约束条件以外,还必须附上第二主成分与第一主成分不相关这一条件,即还须有约束条件:

640.jpg

640.jpg

640.jpg

640.jpg

640.jpg

640.png


即x1,x2,…,xp的主成分就是以∑的特征向量为系数的线性组合,它们互不相关,其方差为∑特征根。


在实际问题中,不同的变量往往有不同的量纲,为了消除由于量纲的不同可能带来的一些不合理的影响,常采用将变量标准化的办法。

标准化后的变量的协差阵就是原变量的相关阵,所以标准化原始变量的主成分可以根据相关阵来求出。

640.jpg


假设市场上肉类x1、鸡蛋x2、水果x3三种商品价格的月份资料的协方差矩阵为:

640.png

试求三种商品月份价格的所有主成分。

⑴根据上述协方差矩阵,可写出其特征多项式为:


image.png


令此特征多项式等于0,则得特征方程,解此特征方程,从而得∑的特征值为:

λ1=10 λ2=λ3=1


⑵将这些特征根分别代入特征方程,然后求解就可得到相应的各个特征向量,将这些特征向量单位化,就得到相应于上述三个特征根的三个单位特征向量分别为:

image.png

⑶于是,三种商品价格的三个主成分分别为:

image.png

⑷三个主成分的方差分别为:

image.png

第一个主成分的方差占了原始指标的总方差的绝大部分,所以第一主成分综合反映了三种商品价格的绝大部分变动。


PS:在实际问题中,不同的变量往往有不同的量纲,为了消除由于量纲的不同可能带来的一些不合理的影响,常采用将变量标准化的办法。

标准化后的变量的协差阵就是原变量的相关阵,所以标准化原始变量的主成分可以根据相关阵来求出。

相关文章
|
1月前
|
算法 开发者 Python
惊呆了!Python算法设计与分析,分治法、贪心、动态规划...这些你都会了吗?不会?那还不快来学!
【7月更文挑战第10天】探索编程巅峰,算法至关重要。Python以其易读性成为学习算法的首选。分治法,如归并排序,将大问题拆解;贪心算法,如找零问题,每步求局部最优;动态规划,如斐波那契数列,利用子问题解。通过示例代码,理解并掌握这些算法,提升编程技能,面对挑战更加从容。动手实践,体验算法的神奇力量吧!
56 8
|
15天前
|
自然语言处理 算法 数据挖掘
【数据挖掘】十大算法之PageRank连接分析算法
文章介绍了PageRank算法的基本概念和数学模型,包括如何通过一阶马尔科夫链定义随机游走模型以及如何计算网页的重要性评分,并提供了PageRank迭代算法的具体步骤。
30 0
|
5天前
|
算法 Java 测试技术
算法分析(蛮力法与减治算法应用实验报告)
这篇文章是关于算法分析的实验报告,介绍了如何使用蛮力法解决背包问题,并通过伪代码和Java代码实现,同时分析了其时间效率;还介绍了基于减治法思想实现的二叉查找树的插入与查找,同样提供了伪代码、Java源代码实现和时间效率分析,最后展示了测试结果截图。
算法分析(蛮力法与减治算法应用实验报告)
|
12天前
|
机器学习/深度学习 数据采集 算法
【优秀python算法毕设】基于python时间序列模型分析气温变化趋势的设计与实现
本文介绍了一个基于Python的时间序列模型,用于分析和预测2021-2022年重庆地区的气温变化趋势,通过ARIMA和LSTM模型的应用,揭示了气温的季节性和趋势性变化,并提供了对未来气温变化的预测,有助于气象预报和相关决策制定。
【优秀python算法毕设】基于python时间序列模型分析气温变化趋势的设计与实现
|
2天前
|
机器学习/深度学习 人工智能 算法
【人工智能】传统语音识别算法概述,应用场景,项目实践及案例分析,附带代码示例
传统语音识别算法是将语音信号转化为文本形式的技术,它主要基于模式识别理论和数学统计学方法。以下是传统语音识别算法的基本概述
11 2
|
5天前
|
机器学习/深度学习 存储 算法
算法时间复杂度分析
这篇文章讲解了如何分析算法的时间复杂度,包括关注循环执行次数最多的代码段、总复杂度的确定、嵌套代码复杂度的计算方法,并提供了大O阶的推导步骤和常见时间复杂度的列表,同时还介绍了空间复杂度的概念及其重要性。
|
7天前
|
编解码 算法 Linux
Linux平台下RTSP|RTMP播放器如何跟python交互投递RGB数据供视觉算法分析
在对接Linux平台的RTSP播放模块时,需将播放数据同时提供给Python进行视觉算法分析。技术实现上,可在播放时通过回调函数获取视频帧数据,并以RGB32格式输出。利用`SetVideoFrameCallBackV2`接口设定缩放后的视频帧回调,以满足算法所需的分辨率。回调函数中,每收到一帧数据即保存为bitmap文件。Python端只需读取指定文件夹中的bitmap文件,即可进行视频数据的分析处理。此方案简单有效,但应注意控制输出的bitmap文件数量以避免内存占用过高。
|
14天前
|
监控 算法
|
11天前
|
算法
PID算法原理分析及优化
今天为大家介绍一下经典控制算法之一的PID控制方法。PID控制方法从提出至今已有百余年历史,其由于结构简单、易于实现、鲁棒性好、可靠性高等特点,在机电、冶金、机械、化工等行业中应用广泛。 在大学期间,参加的智能汽车竞赛中就使用到了PID经典控制算法,对于智能小车的调试更加的方便。 一、PID原理 PID控制方法将偏差的比例(proportional)、积分(integral)、微分(derivative)通过线性组合构成控制量,对被控对象进行控制。 常规的PID控制系统如图所示: 系统的输入r(t)为控制量的目标输出值,输出y(t)为控制量的实际输出值,e(t)为输出量目标值与实际值
26 1

热门文章

最新文章