- 軟件大小:856KB
- 軟件語言:中文
- 軟件類型:國產軟件(jiàn)
- 軟件類別:免費軟件 / 其他行業
- 更新時(shí)間:2017-05-23 10:48
- 運行環境(jìng):WinAll, WinXP, Win7, Win8
- 軟件等級(jí):
- 軟件廠商:
- 官方網(wǎng)站:暫無
120KB/中文/0.0
304KB/中(zhōng)文/10.0
8.73M/中文/10.0
122.18M/中文(wén)/2.5
101KB/中文/2.5
libsvm工具箱是一款為matlab打造的工具(jù)包,專為計算智能研究和應用(yòng)開發者,學生,課堂實驗室準備。功能更(gèng)足夠強大,一些(xiē)論文已開始利用它(tā),但即使你是Matlab新手,也(yě)很容易學習此(cǐ)工具箱(xiāng)。歡(huān)迎下載。
LIBSVM是台灣(wān)大學林智仁(Lin Chih-Jen)教授等開發設(shè)計的一個簡單、易於使用和快速有效的SVM模式識別與回歸的軟件包,他不但提供了編譯好的可在Windows係列係統的執行文(wén)件,還(hái)提供了源(yuán)代碼,方便改進、修改以及在其它操作係統上應用;該軟件對SVM所(suǒ)涉及的參數調節(jiē)相對比較少,提供了很多(duō)的默認(rèn)參數,利用這些默認參數可以解決很多問題(tí);並提供了交互檢驗(yàn)(Cross Validation)的功(gōng)能。該(gāi)軟件可以解決C-SVM、ν-SVM、ε-SVR和ν-SVR等問題,包括(kuò)基於一對一算法的多類模式識別問題。
一(yī)。下載libsvm
在綠色資源網的網站上下載 libsvm-3.12.zip文(wén)件,解(jiě)壓後放(fàng)在任意目(mù)錄下,最好(hǎo)放在MATLAB工(gōng)具箱中,比如 C:\Program Files\MATLAB\R2011a\toolbox\libsvm-3.12下。
二。配置編譯器
打開 matlab,切換到C:\Program Files\MATLAB\R2011a\toolbox\libsvm-3.12\matlab目錄下,鍵入以下命令:
mex –setup
出現提示語句
Please choose your compiler for building MEX-files:
Would you like mex to locate installed compilers [y]/n?n %這次是選擇編譯器,輸入n,選擇自定義(yì)的編譯器
出現以下選項(因電(diàn)腦(nǎo)而異)
Select a compiler:
[1] Intel C++ 11.1 (with Microsoft Visual C++ 2008 SP1 linker)
[2] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 SP1 linker)
[3] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 Shell linker)
[4] Lcc-win32 C 2.4.1
[5] Microsoft Visual C++ 6.0
[6] Microsoft Visual C++ 2005 SP1
[7] Microsoft Visual C++ 2008 SP1
[8] Microsoft Visual C++ 2010
[9] Microsoft Visual C++ 2010 Express
[10] Open WATCOM C++
[0] None
Compiler: 8%可以用其他的,出現以下(xià)提示語句
Your machine has a Microsoft Visual C++ 2010 compiler located at
C:\Program Files\Microsoft visual studio 10.0. Do you want to use this compiler [y]/n?
編譯(yì)器默認(rèn)路徑,確認正確輸入(rù)y,更(gèng)改路徑,輸入n
輸(shū)入y出現再次確認
Please verify your choices:
Compiler: Microsoft Visual C++ 2010
locations: C:\Program Files\Microsoft Visual Studio 10.0
Are these correct [y]/n? y
編譯器配置完成(chéng)
Trying to update options file: C:\Documents and Settings\zhangduokun\Application Data\MathWorks\MATLAB\R2011a\mexopts.bat
From template: C:\PROGRA~1\MATLAB\R2011a\bin\win32\mexopts\msvc100opts.bat
Done . . .
三。編譯
輸入命令
》 make
》
%編譯完成(chéng)
係統就會生成svmtrain.mexw32,svmpredict.mexw32,libsvmread.mexw32和libsvmwrite.mexw32等文件(對(duì)於 Matlab 7.1以下上版(bǎn)本,生成的對應文件為svmtrain.dll,svmpredict.dll和 read_sparse.dll,沒做測試),然後可以(yǐ)在matlab的菜單 File->Set Path->add with subfolders(可直接用Add Folder)裏,把 C:\Program Files\MATLAB\R2011a\toolbox\libsvm-3.12\matlab目錄添加(jiā)進去,這樣以後在任何目錄下(xià)都可以調用 libsvm的函數(shù)了。
四。測試
為了檢驗 libsvm和 matlab之間的接口是否已經配置完成,可以在 matlab下執行以下命令:
》load heart_scale
完成該步驟後發現Workspace中出(chū)現了heart_scale_inst和 heart_scale_label,說明正確
》model = svmtrain(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07');
》 [predict_label, accuracy, dec_values] = svmpredict(heart_scale_label, heart_scale_inst, model); %
Accuracy = 86.6667% (234/270) (classification)% done
如果運行正(zhèng)常並生成了model這(zhè)個(gè)結構體(其中保存了所有的支持向(xiàng)量及其係數),那麽說明 libsvm和matlab 之(zhī)間的接口已經完全配置(zhì)成功。
LIBSVM 使用的一般步驟是:
1) 按(àn)照LIBSVM軟件包所要求的格式準備數據集;
2) 對數據進行簡單的(de)縮放操作;
3) 考慮(lǜ)選(xuǎn)用RBF 核函數;
4) 采用交叉驗證選擇最佳(jiā)參數(shù)C與g ;
5) 采用最佳參數C與g 對整(zhěng)個訓練集進(jìn)行訓練獲取(qǔ)支持向量機模型;
6) 利用(yòng)獲取的模型進行測(cè)試(shì)與預測。
1. matlab自帶了C編譯器Lcc-win32C,但是libsvm原始版本是C++實現的,因此需要C++的(de)編譯器來編譯,這就是(shì)不適用matlab默認編譯器而選擇其他C++編譯器的原因。
matlab支持的(de)編(biān)譯器也是有限(xiàn)的,可以查看不同版本matlab支持的編譯器列表
2. 如果matlab版本太低,如(rú)matlab 7.0是不能用VS作為編譯器的,隻(zhī)能用VC++ 6.0
3. .mexw32 文件是經過加密的,打開是亂碼,函(hán)數本身(shēn)沒有幫助。
例如輸入(rù) help svmpredict會出現報錯: svmpredict not found
工具箱libsvm-3.12\matlab中README文件才是幫助(zhù)文件。
但是輸入help svmtrain會出現幫助信息,其實(shí)出現的是係統自(zì)帶(dài)的svmtrain函數,沒有libsvm工(gōng)具箱中的好用(yòng)。
4.在新版本(běn)libsvm3.12中,文件夾(jiá)libsvm-3.12\windows中已經有(yǒu)編譯好的程序,可以直接使用,隻(zhī)需要把libsvm-3.12\windows添加到matlab路徑中即可,不(bú)需要編譯的(de)過程。當然最(zuì)好還是(shì)自己編譯一遍,因為編譯環境不同會導致一些不(bú)可預估的(de)小問題,自己(jǐ)編譯的過程是可(kě)控(kòng)的。
請描述您(nín)所遇到的錯誤,我們將盡(jìn)快予以修正,謝謝!
*必填項,請輸(shū)入內容