当前位置:网站首页>数学基础(三)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。
注意:矩阵求偏导相关知识请见:
边栏推荐
- 从0开始搭建自动化测试框架之PO分层架构
- 如何实现canal数据同步
- Financial Industry Software Testing Interview Questions (with Answers) | Getting Started Guide
- 数字 01 Vivado2018.2安装及实操
- 科大讯飞笔试题复盘
- Redis中SDS简单动态字符串
- YOLOV1详解——Pytorch版
- 用DFS解决最终幻想13-2时钟谜题
- Likou Brush Question Record 1.5-----367. Valid perfect squares
- 20220530设计问题:常数时间插入、删除和获取随机元素
猜你喜欢
xml引配置文件
DSP28379学习笔记 (一)——GPIO基本操作
从0开始搭建自动化测试框架之PO分层架构
书签收藏难整理?这款书签工具管理超方便
A40i gxl3680 ts_print报错:tslib: Selected device is not a touchscreen (must support ABS and KEY event
Redis - 时间序列数据类型的保存方案和消息队列实现
Financial Industry Software Testing Interview Questions (with Answers) | Getting Started Guide
VS2019编译boost_1_79,生成32位和64位静态库
Programmer's Daily Life | Daily Fun
1261. 在受污染的二叉树中查找元素
随机推荐
Likou Brush Question Record 1.5-----367. Valid perfect squares
数仓第二篇: 数据模型(维度建模)
【图像增强】基于Step和Polynomial 滤波实现图像增强附matlab代码
从0开始搭建自动化测试框架之PO分层架构
LintCode 146. 大小写转换 II
多态 polymorphism
gpio子系统和pinctrl子系统(上)
redis集群详解
Lottie进阶和原理分析
dice和iou
spark RDD转换算子 sample
Doris从理论详解到千万级数据量场景使用
【洛谷】P1456 Monkey King
JavsScript系列-Promise的错误捕获
【物理应用】基于El-centro地震波作用下隔震与非隔震支座下的顶层位移、速度、加速度的对比情况附matlab代码
最新工业界推荐系统数据集-召回排序模型原理、结构及代码实战整理分享
搭建Eureka注册中心集群 ,实现负载均衡
独立机器连接cdh的spark集群,远程提交任务(绝对可以成功,亲测了n遍)
炫酷-轮播图-走马灯
原文翻译:Structure Aware Single-stage 3D Object Detection from Point Cloud