PCA、LPP及两者正交改进的特征提取特征降维算法
正交PCALPP代码实现
文章目录
- 正交PCALPP代码实现
- 0.引言
- 1.原理
- 1.1 PCA目标函数
- 1.2 LPP目标函数
- 1.3 CVPCALPP原理
- 2.方案验证
- 3.结论
0.引言
传统基于主成分分析 (Principal component analysis, PCA) 的数据降维方法在提取有效特征信息时只考虑全局结构保持而未考虑样本间的局部近邻结构保持问题, 本文提出一种改进全局结构保持算法的特征提取与降维方法,改进的特征提取与降维方法将流形学习中局部结构保持 ( Locality preserving projection, LPP) 的思想融入主成 分分析的目标函数中, 使样本投影后的特征空间保持原始样本空间的整体结构, 还保持样本空间相似的局部近邻结构, 包含更丰富的特征信息,并且引入正交约束消除特征冗余。采用UCI数据集进行降维可视化分析。
1.原理
1.1 PCA目标函数
PCA的核心是通过投影矩阵A将高维数据降成低维数据,实现数据沿该坐标系的分布方差最大化,能够实现最大化保持数据的全局结构特性,其目标函数如下:
maxtr(A′XX′A)max tr(A'XX'A) maxtr(A′XX′A)
1.2 LPP目标函数
mintr(A′XLX′A);L=D−W;st.A′XDX′A=Imin tr(A'XLX'A); L=D-W; st.A'XDX'A=I mintr(A′XLX′A);L=D−W;st.A′XDX′A=I
1.3 CVPCALPP原理
maxtr(lA′XX′A−(1−l)A′XLX′A);st.A′XDX′A=I;其中:l是用于平衡PCA与LPP这两个目标函数的权重系数max tr(lA'XX'A-(1-l)A'XLX'A);st.A'XDX'A=I;其中:l是用于平衡PCA与LPP这两个目标函数的权重系数 maxtr(lA′XX′A−(1−l)A′XLX′A);st.A′XDX′A=I;其中:l是用于平衡PCA与LPP这两个目标函数的权重系数
st.ai′∗aj=1(i=j);否则:ai′∗aj=0;(正交约束)st.ai'*aj=1(i=j);否则:ai'*aj=0;(正交约束) st.ai′∗aj=1(i=j);否则:ai′∗aj=0;(正交约束)
2.方案验证
clc;clear;close all
load wine;fea=double(wine);gnd=wine_labels;
options = [];
options.Metric = 'Euclidean';
options.NeighborMode = 'KNN';
options.k = 5;
options.t = 0.1;
options.delta=1000;
options.bSelfConnected = 1;
options.WeightMode = 'HeatKernel';
options.ReducedDim = 6;
[W,~] = constructW3(fea,gnd,options);%监督核欧式距离
%W = constructW(fea);%欧氏距离
%[W,~] = constructW2(fea,options);%非监督核欧式距离% [eigvector1, eigvalue1, meanData, Y]=PCA(fea, options);
%[eigvector2, eigvalue2, Y] = LPP(fea, W, options);
[eigvector,eigvalue, Y] = CVPCALPP(fea,W,options);%%
figure
for i=1:max(gnd)n=find(gnd==i);plot3(fea(n,1),fea(n,2),fea(n,3),'*')%原始数据hold ongrid on
end
mappedX1=Y;
figure
for i=1:max(gnd)n=find(gnd==i);plot3(mappedX1(n,1),mappedX1(n,2),mappedX1(n,3),'*')hold ongrid on
end
legend('1','2','3')
图1 原始数据可视化
图2 本文方法
3.结论
从图上可以,本文方法聚类效果更好。
PCA、LPP及两者正交改进的特征提取特征降维算法相关推荐
- KPCA正交KLPP及两者结合改进的特征提取特征降维算法
正交KPCAKLPP代码实现 文章目录 正交KPCAKLPP代码实现 0.引言 1.原理 1.1 KPCA目标函数 1.2 KLPP目标函数 1.3 CVKPCAKLPP原理 2.方案验证 3.结论 ...
- KPCA、KLPP及两者结合改进的特征提取特征降维算法
KPCA-KLPP代码实现 文章目录 KPCA-KLPP代码实现 0.引言 1.原理 1.1 KPCA目标函数 1.2 KLPP目标函数 1.3 KPCA-KLPP原理 2.方案验证 3.结论 0.引 ...
- PCA-LPP特征提取特征降维
PCA-LPP代码实现 文章目录 PCA-LPP代码实现 0.引言 1.原理 1.1 PCA目标函数 1.2 LPP目标函数 1.3 PCA-LPP原理 2.方案验证 3.结论 0.引言 提出集合 ...
- 基于ORL人脸数据库和PCA特征降维算法的人脸识别matlab仿真
目录 1.算法仿真效果 2.MATLAB核心程序 3.算法涉及理论知识概要 4.完整MATLAB 1.算法仿真效果 matlab2022a仿真结果如下: 2.MATLAB核心程序 .......... ...
- 《菜菜的机器学习sklearn课堂》降维算法PCA和SVD
降维算法PCA和SVD 什么是维度? sklearn中的降维算法 PCA 与 SVD 降维究竟是怎样实现的? PCA重要参数 n_components 迷你案例:高维数据的可视化 附录 PCA参数列表 ...
- 对pca降维后的手写体数字图片数据分类_机器学习:数据的准备和探索——特征提取和降维...
在数据的预处理阶段,特征提取和数据降维是提升模型表示能力的一种重要手段. 特征提取主要是从数据中找到有用的特征,用于提升模型的表示能力,而数据降维主要是在不减少模型准确率的情况下减少数据的特征数量. ...
- 图像算法九:【图像特征提取】特征降维、PCA人脸特征抽取、局部二进制
PCA数学理论: 关于PCA的理论,资料很多,公式也一大把,本人功底有限,理论方面这里就不列出了.下面主要从应用的角度大概来讲讲具体怎么实现数据集的降维. 把原始数据中每个样本用一个向量表示,然后把所 ...
- lpp降维算法matlab,dimension-reduct method 多种降维算法,包括lle,lpp,ltsa matlab 238万源代码下载- www.pudn.com...
文件名称: dimension-reduction-method下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 857 KB 上传时间: 2014-11-05 ...
- 基于正交拉普拉斯脸的人脸识别算法研究
直觉上,自然存在的人脸数据可以由支持的概率分布采样生成或者近似于环绕空间的子流线型分布.据此,我们提出了一种基于外观的人脸识别算法,称为正交拉普拉斯脸(Orthogonal Laplacianface ...
最新文章
- Igraph包绘制network
- android 虚拟按键挡住布局,Android 关于导航栏(虚拟按键)遮挡PopupWindow底部布局的问题...
- numpy数据集练习
- POJ 2263 floyd思想
- 计算机网络——链路层之局域网
- java连接设备连接给参数_如何通过蓝牙连接两个设备按参数发送配对代码? JAVA,Android的...
- erp系统是什么软件
- 【转】opengl的一些小问题
- Javascript特效:tab标签
- 校园网自动登录Python版
- 从EXCEL导入CAD后如何设置表格文字大小?
- 招聘数据采集+数据清洗与分析+数据可视化
- Springboot:JWT
- 把一个godaddy的域名转回国内的注册商
- Opencv4.2 DNN模块 终于支持Nividia GPU了!
- 计算机记账的优点,记账凭证的优缺点
- python连接不上数据库_python连接各种数据库
- git fatal: schannel: next InitializeSecurityContext failed: SEC E CERT EXPIRED (0x80090328)
- 深度学习与神经网络-压缩感知(Compressive Sensing)学习(五)
- linux命令:killall