当前位置:网站首页>数学基础(三)PCA原理与推导
数学基础(三)PCA原理与推导
2022-08-09 02:46:00 【Billie使劲学】
目录
一、PCA数据压缩原理

二、样本点中心化
u向量的方向已经确定,我们将样本点映射到u向量上,显然右图的误差要比左图大许多,因此我们就需要先对样本进行中心化,使之分布于原点O附近。即计算所有样本点的均值(x的均值,y的均值),然后将每个样本点减去这个均值,就得到了中心化之后的样本。

三、计算误差
(注意:以下字母加粗表示向量)如下图所示,u为单位向量,表示映射的主方向,x为样本,pijx为x在u上的投影,我们要计算x投影在u上产生的误差e。

样本x映射到u上产生的误差e为:

这个式子可以从向量角度理解:我们要计算e,根据向量的加法原则(首尾相连),pijx+e=x。
则得到 e=x-pijx。
pijx即为x在u上的映射,我们表示为:
该公式转化成矩阵的形式如下图所示:

e的模长即为损失的大小:
下面的公式推导不难理解
其中x,u为列向量,故
为一个实数,且
,不需要进行转置,且可以交换。

得到损失为:
是固定的,故想要损失降到最低,则需要使
最大。
则如下图所示,其中

如果只有一个样本,则
,直接求最大值。
但此时有N个样本,那要怎么求最大值呢?
将这N样本进行求和:

我们令
为X。
这样我们的最大化目标就变为:![]()
我们使用拉格朗日条件极值计算最大值(条件为
):
![]()
对u求导等于0得到:
对λ求导等于0得到:
满足这两个条件
,
即可求得最大值,求解n个 λ 和n个u的值,其中λ最大的那个值对应的方向就是最主要的方向,n维降到k维,保留几维就保留几个λ,即λ的个数等于k。
注意:矩阵求偏导相关知识请见:
边栏推荐
- Json之JArray的使用方法
- 1160. 拼写单词
- Recently, I have seen a lot of people who want to study by themselves or enroll in classes but don’t know how to choose. I will tell you about it today.
- <爆>2022中文版-《海外博士申请指南-材料准备、时间线、套磁、面试及录取》免费分享
- 【洛谷】P1456 Monkey King
- Open3D 随机采样
- 1261. 在受污染的二叉树中查找元素
- 【信号去噪】基于Sage-Husa自适应卡尔曼滤波器实现海浪磁场噪声抑制及海浪磁场噪声的产生附matlab代码
- Jenkins配置钉钉通知
- 基于JMF视频聊天
猜你喜欢
随机推荐
[LeetCode84双周赛] [模拟] 6174. 任务调度器 II,[贪心&数学] 6144. 将数组排序的最少替换次数
redis集群详解
【洛谷】P5091 【模板】扩展欧拉定理
图论相关知识
20220530设计问题:常数时间插入、删除和获取随机元素
Postman interface test [official website] latest version installation and use tutorial
C#计算两个时间相差多少天、时、分、秒
Redis - 时间序列数据类型的保存方案和消息队列实现
C#计算SHA1加密和base64编码
【洛谷】P1082 同余方程
基于NLP的智能问答系统核心技术
如何实现canal数据同步
gpio子系统和pinctrl子系统(中)
Likou Brush Question Record 4.1-----209. The sub-array with the smallest length
评估深度学习模型的指标:混淆矩阵、准确率、精确率和召回率
接口的安全性测试,应该从哪些方面入手?
uart_spi练习
[Redis] The core principle of master-slave replication
第一部分:和数组相关的问题
JS 截取数组的最后几个元素









