码迷,mamicode.com
首页 > 其他好文 > 详细

matlab 工具之各种降维方法工具包,下载及使用教程,有PCA, LDA, 等等。。。

时间:2016-01-09 22:58:31      阅读:330      评论:0      收藏:0      [点我收藏+]

标签:

最近跑深度学习,提出的feature是4096维的,放到我们的程序里,跑得很慢,很慢。。。。

于是,一怒之下,就给他降维处理了,但是matlab 自带的什么pca( ), princomp( )函数,搞不清楚怎么用的,表示不大明白,下了一个软件包:

名字:Matlab Toolbox for Dimensionality Reduction

链接:http://lvdmaaten.github.io/drtoolbox/      

Currently, the Matlab Toolbox for Dimensionality Reduction contains the following techniques:

  1. Principal Component Analysis (PCA)
  2. Probabilistic PCA
  3. Factor Analysis (FA)
  4. Classical multidimensional scaling (MDS)
  5. Sammon mapping
  6. Linear Discriminant Analysis (LDA) 等34种降维方法。。。。

 

废话少说,上干货。。。。

先下载该软件包,解压到自己的matlab文件中,然后添加该软件包的路径:

     addpath(genpath(‘你的路径/drtoolbox’));

 

 

然后就是上自己的数据了,我的数据为: test_feature,想把它降维到 1000维,执行:

test_feature为要降维处理的数据, pca 为我选择的降维方法, 1000 是我想要的最终数据维数,生成的mapped_data即为降维处理后的数据。

[mapped_data, mapping] = compute_mapping(test_feature, PCA‘, 1000 );

 1 net_feature_path = [path, net feature/];
 2 
 3 %%
 4 test_feature = importdata([net_feature_path, HAT_test_features.txt]);
 5 [mapped_data, mapping] = compute_mapping(test_feature, PCA, 1000 );
 6 
 7 for i = 1:size(mapped_data, 1)
 8     line = mapped_data(i, :);
 9     file = fopen([net_feature_path, PCA_HAT_test_features.txt], a);
10     fprintf(file, %s , mapped_data);
11     fprintf(file, \n );
12     fclose(file);
13 end
14 
15 % [coef, score, latent, t2] = princomp(test_fea);
16 % COEFF = pca(test_fea) ;



技术分享

 

 

接下来,就是漫长的等待了,数据实在太大了。。。笔记本在咆哮。。。。。

技术分享

 

matlab 工具之各种降维方法工具包,下载及使用教程,有PCA, LDA, 等等。。。

标签:

原文地址:http://www.cnblogs.com/wangxiaocvpr/p/5117360.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!