日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

数据降维工具箱drtoolbox

發(fā)布時(shí)間:2025/3/21 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据降维工具箱drtoolbox 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

drttoolbox :?Matlab Toolbox for Dimensionality Reduction是Laurens van der Maaten數(shù)據(jù)降維的工具箱。

里面囊括了幾乎所有的數(shù)據(jù)降維算法:

?- 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')

這里附上下載地址:http://download.csdn.net/detail/xiaowei_cqu/4258778

在此寫(xiě)下我在使用中遇到的一點(diǎn)點(diǎn)小問(wèn)題。

首先安裝工具箱,一般都把工具箱發(fā)到Matlab默認(rèn)放置工具箱的目錄?matlabroot\toolbox\下面,拷貝過(guò)去之后,記得修改matlabroot\toolbox\local 下的pathdef.m文件,要在里面添加上新的工具箱的路徑:

[plain]?view plaincopy
  • matlabroot,'\toolbox\drtoolbox;',?...??
  • matlabroot,'\toolbox\drtoolbox\techniques;',?...??
  • 注意要把子文件夾techniques也添加進(jìn)入。

    之后在Matlab工作環(huán)境中,只需要運(yùn)行compute_mapping命令即可使用工具箱中的函數(shù),如:

    [plain]?view plaincopy
  • mappedX?=?compute_mapping(X,?'PCA',?1);??

  • 具體參加說(shuō)明文檔。

    在使用‘Isomap’算法時(shí),會(huì)遇到錯(cuò)誤如下: ?

    Invalid MEX-file C:\Program Files\MATLAB\R2010b\toolbox\drtoolbox\techniques\dijkstra.dll 找不到指定模塊

    發(fā)現(xiàn)相應(yīng)路徑中,dijkstra.dll的文件是在的,于是以為是環(huán)境變量或者Progam Files空格的問(wèn)題,嘗試修改均無(wú)效。

    后來(lái)仔細(xì)閱讀了源文件的注釋才發(fā)現(xiàn)是編譯版本問(wèn)題。dijkstra函數(shù)是用C++實(shí)現(xiàn)的,需要用matlab的mex編譯器編譯成dll調(diào)用。雖然工具箱中已經(jīng)有相應(yīng)編譯的dijkstra.dll,但不同版本的Matlab調(diào)用會(huì)遇到問(wèn)題,需要重新編譯。

    在windows命令行cmd中,用cd命令更改路徑到工具箱路徑下,運(yùn)行命令:

    [plain]?view plaincopy
  • mex?-O?dijkstra.cpp??
  • 編譯出現(xiàn)錯(cuò)誤:

    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文件夾下出現(xiàn)dijkstra.mexw32?的文件,即為新編譯的dll。我們可以修改之前的為dijkstra.dll.old,重命名dijkstra.mexw32為dijkstra.dll。

    在matlab環(huán)境中運(yùn)行isomap的程序:


    成功!



    (轉(zhuǎn)載請(qǐng)注明作者和出處:http://blog.csdn.net/xiaowei_cqu?未經(jīng)允許請(qǐng)勿用于商業(yè)用途)

    總結(jié)

    以上是生活随笔為你收集整理的数据降维工具箱drtoolbox的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。