Matlab SVM工具箱的使用

2021-06-21 14:29:22 字數 1842 閱讀 3078

2、安裝到matlab資料夾中

2) 開啟matlab->file->set path中新增svm工具箱的資料夾

現在,就成功的新增成功了.

可以測試一下: 在matlab中輸入which svcoutput 回車,如果可以正確顯示路徑,就證明新增成功了,例如:

c:\program files\matlab71\toolbox\svm\svcoutput.m

3、用svm做分類的使用方法

1) 在matlab中輸入必要的引數: x,y,ker,c,p1,p2

我做的測試中取的資料為:

n = 50;

n=2*n;

randn('state',6);

x1 = randn(2,n)

y1 = ones(1,n);

x2 = 5+randn(2,n);

y2 = -ones(1,n);

figure;

plot(x1(1,:),x1(2,:),'bx',x2(1,:),x2(2,:),'k.');

axis([-3 8 -3 8]);

title('c-svc')

hold on;

x1 = [x1,x2];

y1 = [y1,y2];  

x=x1';

y=y1';

%其中,x是100*2的矩陣,y是100*1的矩陣

c=inf;

ker='linear';

global p1 p2

p1=3;

p2=1;

然後,在matlab中輸入:[nsv alpha bias] = svc(x,y,ker,c),回車之後,會顯示:

support vector classification

_____________________________

constructing ...

optimising ...

execution time: 1.9 seconds

status : optimal_solution

|w0|^2    : 0.418414

margin    : 3.091912

sum alpha : 0.418414

support vectors : 3 (3.0%)

nsv =

3alpha =

0.0000

0.0000

0.0000

0.0000

0.0000

......

可能會出現這樣的情況:

qp.dll不是有效的win32應用程式

解決方法

:將matlab的current diretory目錄改為svm下的optimiser目錄,

matlab下輸入

mex -v qp.c pr_loqo.c

將生成的qp.mexw32拷貝到svm目錄下(optimiser的上一級目錄)

2) 輸入**函式,可以得到與預想的分類結果進行比較.

輸入:predictedy = svcoutput(x,y,x,ker,alpha,bias), 回車後得到:

predictedy =11

1111

1113)畫圖

輸入:svcplot(x,y,ker,alpha,bias),回車

libsvm工具箱使用

libsvm工具箱安裝 讀入變數利用svmtrain訓練得模型,利用svmpredict訓練得 結果 model svmtrain x norm 6 x norm 1 5 predicted label,accuracy,decision values svmpredict y norm 6 y n...

matlab calib工具箱的使用

我在使用過程中,出現誤差過大的問題,考慮是不是拍攝的方式不對,然後看了一下原始文件 在檢測角點的時候,如果影象畸變比較大的話,很多都要自己動手選點,wintx和winty一般不用自己設定,這兩個引數是設定搜尋角點的畫素範圍,預設為5,就是在手動選取的點的5個畫素之內找到角點。手工選點時第乙個點是座標...

Matlab map工具箱的使用

看優秀 時發現還有這樣神奇的功能,but 沒有給.shp檔案 這篇部落格給出了具體使用方法 這篇部落格給出了map工具箱的使用 附一段有意思的 用webmap根據經緯度數,繪製路線圖 x 28.5528 28.5628 28.6528 y 118.049511 118.249511 118.3495...