drttoolbox :Matlab Toolbox for Dimensionality Reduction是Laurens van der Maaten数据降维的工具箱。
里面囊括了几乎所有的数据降维算法:
- Principal Component Analysis ('PCA')
- Linear Discriminant Analysis ('LDA')
- Independent Component Analysis ('ICA')
- Multidimensional scaling ('MDS')
- Isomap ('Isomap')
- Landmark Isomap ('LandmarkIsomap')
- Locally Linear Embedding ('LLE')
- Locally Linear Coordination ('LLC')
- Laplacian Eigenmaps ('Laplacian')
- Hessian LLE ('HessianLLE')
- Local Tangent Space Alignment ('LTSA')
- Diffusion maps ('DiffusionMaps')
- Kernel PCA ('KernelPCA')
- Generalized Discriminant Analysis ('KernelLDA')
- Stochastic Neighbor Embedding ('SNE')
- Neighborhood Preserving Embedding ('NPE')
- Linearity Preserving Projection ('LPP')
- Stochastic Proximity Embedding ('SPE')
- Linear Local Tangent Space Alignment ('LLTSA')
- Simple PCA ('SPCA')
- Conformal Eigenmaps ('CCA', implemented as an extension of LLE)
- Maximum Variance Unfolding ('MVU', implemented as an extension of LLE)
- Fast Maximum Variance Unfolding ('FastMVU')
- Autoencoders using RBM pretraining ('AutoEncoder')
- Autoencoders using evolutionary optimization ('AutoEncoderEA')
在此写下我在使用中遇到的一点点小问题。
首先安装工具箱,一般都把工具箱发到Matlab默认放置工具箱的目录matlabroot\toolbox\下面,拷贝过去之后,记得修改matlabroot\toolbox\local 下的pathdef.m文件,要在里面添加上新的工具箱的路径:
matlabroot,'\toolbox\drtoolbox;', ...
matlabroot,'\toolbox\drtoolbox\techniques;', ...
注意要把子文件夹techniques也添加进入。
之后在Matlab工作环境中,只需要运行compute_mapping命令即可使用工具箱中的函数,如:
mappedX = compute_mapping(X, 'PDA', 1);
具体参加说明文档。
在使用‘Isomap’算法时,会遇到错误如下:
Invalid MEX-file C:\Program Files\MATLAB\R2010b\toolbox\drtoolbox\techniques\dijkstra.dll 找不到指定模块
发现相应路径中,dijkstra.dll的文件是在的,于是以为是环境变量或者Progam Files空格的问题,尝试修改均无效。
后来仔细阅读了源文件的注释才发现是编译版本问题。dijkstra函数是用C++实现的,需要用matlab的mex编译器编译成dll调用。虽然工具箱中已经有相应编译的dijkstra.dll,但不同版本的Matlab调用会遇到问题,需要重新编译。
在windows命令行cmd中,用cd命令更改路径到工具箱路径下,运行命令:
mex -O dijkstra.cpp
编译出现错误:
1) Cannot open include file 'iostream.h' : No such file or directory
修改dijkstra.cpp中 include<iosteam.h>为<iosteam>
2) ‘cout’ : undeclared identifier ‘cin’ : undeclared identifier
在dijsktra.cpp中加入一行 using namespace std;
编译成功之后,在techniques文件夹下出现dijkstra.mexw32的文件,即为新编译的dll。我们可以修改之前的为dijkstra.dll.old,重命名dijkstra.mexw32为dijkstra.dll。
在matlab环境中运行isomap的程序:
成功!
*上面那个下载链接里,doc文件夹有工具箱的说明文档,貌似有童鞋找不到,再附一个单独的文档下载地址吧~
说明文档下载地址:http://download.csdn.net/detail/xiaowei_cqu/4850455
分享到:
相关推荐
囊括了几乎所有的数据降维算法,Matlab数据降维drtoolbox工具箱
drttoolbox : Matlab Toolbox for Dimensionality Reduction是Laurens van der Maaten数据降维的工具箱。 里面囊括了几乎所有的数据降维算法 从...
drtoolbox: Matlab Toolbox for Dimensionality Reduction是Laurens van der Maaten开发的用来数据降维的工具箱,其中包含了著名的PCA,LDA算法,流行学习算法MLE,LLE,LPP,SNE,Isomap等,和度量学习算法LMNN,MCML,...
将drtoolbox/文件夹复制到$MATLAB_DIR/toolbox目录中(其中$MATLAB_DIR表示您的MATLAB安装目录)。启动Matlab,从“文件”菜单中选择“设置路径…”。单击“添加子文件夹…”按钮,在“文件”对话框中选择文件夹$...
matlab drtoolbox数据降维包,包括多种降维算法
PCA LLE LDA等降维matlab工具箱
国外的牛人写的软件,数据降维工具箱,包含了几十种常用的流形学习方法的源码,自带图形界面。
lle matlab代码
模式识别领域常用的经典数据降维工具箱,可以查看源代码并且附带GUI,方便二次开发
matlab代码Matlab工具箱用于降维 用于降维的Matlab工具箱 用于降维的Matlab工具箱(v0.8.1b) 信息 作者:Laurens van der Maaten所属机构:代尔夫特理工大学联系人:发布日期:2013年3月21日版本:0.8.1b 安装 将...
查到了个降维的工具箱.感觉还不错..先分享一下~ 这个工具箱里把常见的降维方法几乎都涵盖了.. drtoolbox.rar ================================= Currently, the Matlab Toolbox for ...
从github上转来的matlab降维工具箱,直接调用函数compute_mapping就可以运用各种降维方法。该函数包使用方法请自行百度。 由于是转的函数包,所以这里就设置2积分。。。(`・ω・´)