函数型数据主成分分析(FPCA)

更新时间:2023-06-08 22:48:57 阅读: 评论:0

函数型数据主成分分析(FPCA)
本⽂主要介绍了以下⼏个⽅⾯的内容:简单介绍了经典的主成分分析⽅法,包括其数学推导,算法步骤,和⼏个实际算例;简单介绍了其它的数据降维⽅法,譬如局部线性嵌⼊以及它的简单算例;更近⼀步,我们介绍了函数型主成分分析⽅法(FPCA),包括其基本思想、数学推导、算法描述等,最为重要的是,我们将该⽅法和本领域进⾏结合,有了⼀些新的思考。
⽂章⽬录
前⾔
“维数灾难"带来的直接结果就是很多低维空间⾏之有效的算法在⾼维空间中变得不可计算,为此,我们需要进⾏降维。在另⼀个⽅⾯,数据偏平化的情况下,降维有助于我们抓住数据的主要结构,过滤可能的误差带来的影响,使模型更加真实。另外,在某些情况下,降维可⽤于可视化。数据降维的⽅法有很多,⽐如说基于"最⼩化投影误差”(最⼤化类内⽅法)的主成分分析⽅法(PCA),以及基于保持拓扑结构不变(⾼维空间中是邻居,到了地位空间中还是邻居)的局部线性嵌⼊(LLE)等⽅法。
在多元统计分析中,主成分分析(Principal Components Analysis,PCA)是⼀种统计分析、简化数据集的⽅法。它利⽤正交变换来对⼀系列可能相关的变量的观测值进⾏线性变换,从⽽投影为⼀系列线性
不相关变量的值,这些不相关变量称为主成分(Principal Components)。具体地,主成分可以看做⼀个线性⽅程,其包含⼀系列线性系数来指⽰投影⽅向。PCA对原始数据的正则化或预处理敏感(相对缩放)。PCA本质上寻求的是数据点在低秩空间中的⼀个表⽰。
牛肉馅饺子⾼维数据,意味着数据需要多于两个或三个维度来表⽰,⼀般很难被解释。⼀种简化的⽅法是假设数据嵌在⾼维空间的⼀个⾮线性流形上。如果这个流形维数⾜够低,那么数据可以在低维空间中被可视化。局部线性嵌⼊(Locally Linear Embedding,LLE)关注于降维时保持样本局部的线性特征,由于LLE在降维时保持了样本的局部特征,它⼴泛的⽤于图像图像识别,⾼维数据可视化等领域。
R n
有了降维和主成分分析,我们做PDE的就会思考,既然可以对空间中的数据做降维,那么函数作为⼀组基函数的线性组合,如果将基函数看作⼀些坐标系中的⼀个个坐标轴,是否也可以对函数空间中的"数据"做降维呢?答案是肯定的。函数型(数据)主成分分析(Functional Principal Components analysis)可以视为是传统的主成分分析的⼀种推⼴。类⽐于PCA,它希望能将⾼维函数空间中的函数放到低维空间中去表⽰,⽽使得被表⽰的数据集损失最⼩。更通俗地说,就是希望⽤更少的基函数来表⽰某个已知基函数的函数空间的⼀堆函数,新空间的基函数⽤旧空间的基函数来线性表出。那么,我们就需要定义函数之间的距离,函数空间的內积等等。
主成分分析(PCA)
数据降维简介
在机器学习和统计学领域,降维是指在某些限定条件下,降低随机变量个数,得到⼀组"不相关"主变量的过程。
降维可进⼀步细分为变量选择和特征提取两⼤⽅法。除了考虑"维数灾难"的问题,降维还有⼀些本质的原因。⽬前⼤部分降维算法处理向量表达的数据,也有⼀些降维算法处理⾼阶张量表达的数据。之所以使⽤降维后的数据表⽰是因为在原始的⾼维空间中,包含有冗余信息以及噪⾳信息,在实际应⽤例如图像识别中造成了误差,降低了准确率,通过降维,我们希望减少冗余信息所造成的误差,提⾼识别(或其他应⽤)的精度,⼜或者希望通过降维算法来寻找数据内部的本质结构特征。⽬前⽐较流⾏的降维算法有主成分分析、线性判别分析、局部线性嵌⼊和拉普拉斯特征映射等等。
PCA算法的原理解释
所谓的主成分分析,不过是在⾼维的空间中寻找⼀个低维的正交坐标系,⽐如说在三维空间中寻找⼀个⼆维的直⾓坐标系。那么这个⼆维的直⾓坐标系就会构成⼀个平⾯,将三维空间中的各个点在这个⼆维平⾯上做投影,就得到了各个点在⼆维空间中的⼀个表⽰,由此数据点就从三维降成了⼆维。
这个过程的关键在于,我们如何选取这个低维的坐标系,即坐标系原点在哪?各个轴朝哪个⽅向?⼀个原则就是使得各个点到到这个平⾯的距离平⽅和达到最⼩。由此,通过简单地数学推导,就能得到原点的表达公式和坐标系的各个基向量的表达公式。
PCA算法的数学推导
我们假设输⼊为p维的N个对象,
表⽰如下图所⽰的⼀个矩阵:
通过PCA降维,将其降为d维的N个对象,假设为
,同前,每列表⽰⼀个对象,每⾏表⽰⼀个特征:
我们要将所有点投影到新的坐标系中去,⽆⾮是寻找新坐标系的坐标原点和各个坐标轴。
我们假设的每⼀列为新的坐标系中单位正交的坐标轴表⽰,为新坐标系的原点(相对于原坐标系)。那么,我们要做的就是找到⼀个合适的和,使其极⼩化所有点到新的坐标平⾯的距离平⽅和。容易知道,每⼀个点到新坐标系的距离平⽅为(其中表⽰的是位置参数):
对其进⾏化简,可得:
进⽽有,
让所有点到投影点距离平⽅和最⼩,即求解约束优化问题:
X Y W x 0W x 0=X (x ,W )0Ds (x ,)=X X x −x −
w x
−x w x −x −
w x −x w (0i =1∑
d
i T
(0)i )T
(0i =1
d
i T
(0)i )
Ds (x ,)=x −x −w x −x w x −x −w x −x w X X (0∑i =1d
i T
(0)i )T
(0∑i =1d
i T
(0)i )
=x −x x −x −w x −x w x −x (0)T
(0)(∑i =1d
i T
(0)i )T
(0)−x −x w x
−x w +
w x
−x w w x
−x w (0)
T
∑i =1d i T (0)i (∑i =1d i T (0)i )
T
∑i =1d i T (0)i
Ds (x ,)=X X x −x x −x −
(0)T
(0)w x −x x −x w i =1
d
i T
(0)(0)T
i
min Ds x ,=x −x x −x X ∑k X (k X )∑k (k 0)T
(k 0)
−w x −x x −x w
∑d T ∑()()T
我们借助拉格朗⽇乘⼦法来求解此约束优化问题:
由两个偏导为0,可以得到:
因为半正定矩阵的特征值⾮负,所以,原最⼩化损失函数可进⾏转化:
我们利⽤矩阵的性质,要想最⼩化距离平⽅和,有:
令为的矩阵。有性质:
则有,
−w x −x x −x w ∑i =1d
i T
∑k (k 0)(k 0)T
i w w =δδ=1,i =j i T
j ij ij δ=0,i =j
ij  L =
x −x x −x −
k
(k 0)T
(k 0)w x −x x −x w −
i =1∑
萝卜牛杂做法d
i T
k
(k 0)(k 0)T
i λw w −1i =1
d
i (i T
i )
=−2I −w w x −x ∂x 0∂L (p ∑i =1d
i i T
)∑k (k 0)
=2x −x x −x w −2λw ∂w i
∂L ∑k (k 0)(k 0)T
i i i
x =0∑k N
x k
x −x x −x w =λw ∑k (k 0)(k 0)T
龙的守护神是什么菩萨i i i
min Ds x ,X ∑k X (k X )莲子的作用与功效
=x −x x −x −w x −x x −x w ∑k (k 0)T (k 0)∑i =1d i T ∑k (k 0)(k 0)T
i
=x −x x −x −λw w ∑k (k 0)T
(k 0)∑i =1d i i T i
=x −x x −x −λ∑k (k 0)T
(k 0)∑i =1d i
Ds x ,=
X
min k
X (k X )x −x x −x −
k
(k 0)T
(k 0)λi =1
d
毛泽东七律长征
i
Σ=X x −x x −x ∑k (k 0)(k 0)T
p ×p tr Σ=
(X )x −x x −x =
k
(k 0)T
(k 0)λi =1
p
i
Ds x ,=
X
min k
X (k X )λ−
i =1
p
i λ=i =1
d
i λi =d +1∑
p
i
由此我们可以看到,要得到极⼩值,我们只要计算矩阵的前d个最⼤特征值,是投影后样本具有最⼩损失的特点。那么此时的就是
最好的路由器矩阵前d个最⼤特征值对应的特征向量。不难知道,对于的特征分解:
这⾥的U就是前天提到的奇异值分解的U。同理,虽然我们这⾥没有⽤到,但其实奇异值分解的正式的特征值分解的特征矩阵。为了⽐较特征分解和
进⾏奇异值分解的消耗,写了⼀段⼩程序,并使⽤matlab探查功能进⾏⽐较如下:
这个⽐较事实上没有太⼤的意义。所⽤的代码如附录。
PCA 算法简单描述
假设是⼀个m*n矩阵,表⽰n个对象的m个特征表⽰数据,即每⼀列表⽰⼀个对象,每⼀⾏表⽰⼀个特征。我们希望将特征降为d维,d远⼩于m。输出结果为,⼀个d*n的矩阵。
记,计算每个对象点的平均值。
对做奇异值分解:。
则即为新坐标系的原点,的前d列即为去中⼼化后的新的坐标系,不妨记为。那么,所有点在新坐标系下的表⽰为:。同样地,要将新的投影点还原到原坐标系中,可以写为:。
下⾯以基于矩阵的视⾓写出PCA算法的算法流程,输⼊为矩阵p*N矩阵X,输出为d*N矩阵Y。矩阵的每⼀列都表⽰⼀个对象,每⼀⾏都表⽰对象的⼀个特征表⽰。
XX T W XX T XX T XX =T U ΛU T
孝作文
V V X X T XX T X X Y X =[x ,x ...x ]12n x =0x n 1
i =1∑
n
i X −x :0=[x −1x ,x −02x ...x −0n x ]0X −x =0U ΛV T x 0U W Y =W ∗
T (X −x )0y x +0W ∗y
PCA 算例⼀
假设⼩明和⼩红有⾝⾼和体重两个特征(实际操作数据要进⾏预处理,这⾥不做),如下表:
那么此时
,现在试图通过PCA降维,将⾝⾼和体重合并为⼀个特征。⾛⼀遍上⾯的过程,可得:
其中,
那么,有气吞斗牛
那就是说,最后数据可降维为:
这个问题MATLAB计算的⼩程序在附录。
PCA 算例⼆
X =[178 165;70 65]X −x =0U ΛV T

本文发布于:2023-06-08 22:48:57,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1027146.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   降维   函数   坐标系   算法
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图