matlab的SVM簡單的例子

2021-10-04 02:46:51 字數 2233 閱讀 6499

svm簡單的例子,適合初學者**學習,含有精確度的表示

編譯環境為matlab

x=[0

1012

-1];y=[0

0112

-1];z=[-

111-

111]

;%其中,(x,y)代表二維的資料點,z 表示相應點的型別屬性。

data=[1

,0;0

,1;2

,2;-

1,-1

;0,0

;1,1

];%(x,y)構成的資料點

groups=[1

;1;1

;1;-

1;-1

];%各個資料點的標籤

figure;

subplot(2

,2,1

);struct1 =

svmtrain

(data,groups,

'kernel_function'

,'quadratic'

,'showplot'

,true)

;%data資料,標籤,核函式,訓練

classes1=

svmclassify

(struct1,data,

'showplot'

,true)

;%data資料分類,並顯示圖形

title

('二次核函式');

correctrate1=

sum(groups==classes1)

/6

subplot(2

,2,2

);struct2 =

svmtrain

(data,groups,

'kernel_function'

,'rbf'

,'rbf_sigma'

,0.41

,'showplot'

,true)

;classes2=

svmclassify

(struct2,data,

'showplot'

,true)

;title

('高斯徑向基核函式(核寬0.41)');

correctrate2=

sum(groups==classes2)/6

subplot(2

,2,3

);struct3 =

svmtrain

(data,groups,

'kernel_function'

,'polynomial'

,'showplot'

,true)

;classes3=

svmclassify

(struct3,data,

'showplot'

,true)

;title

('多項式核函式');

correctrate3=

sum(groups==classes3)/6

subplot(2

,2,4

);struct4 =

svmtrain

(data,groups,

'kernel_function'

,'mlp'

,'showplot'

,true)

;classes4=

svmclassify

(struct4,data,

'showplot'

,true)

;title

('多層感知機核函式');

correctrate4=

sum(groups==classes4)

/6

fprintf

('1分類精度為:%f\n'

,correctrate1)

;fprintf

('2分類精度為:%f\n'

,correctrate2)

;fprintf

('3分類精度為:%f\n'

,correctrate3)

;fprintf

('4分類精度為:%f\n'

,correctrate4)

;

結果為

1分類精度為:0.666667

2分類精度為:1.000000

3分類精度為:0.666667

4分類精度為:0.000000

DCT 變換(幾個簡單的MATLAB的例子)

example 1 use real image a imread class f.png imshow a a is unit8 0,255 c dct2 a 進行余弦變換 figure b log abs c imshow b colormap jet 64 顯示為64級灰度 colorbar ...

SVM的簡單使用

使用svm資料進行了分類實現,4個標籤,每個標籤下有120組特徵向量,在測試中 要顯示每種類別的屬於概率。先是我主要的matlab warning off clc clear m xlsread data.xls a1 m 1 6 記錄事件1,2,3,4 a2 m 8 13 a3 m 15 20 a...

svm的簡單理解

svm是一種訓練機器學習的演算法,可以用於解決分類和回歸問題,同時還使用了一種稱之為kernel trick的技術進行資料的轉換,然後再根據這些轉換資訊,在可能的輸出之中找到乙個最優的邊界。簡單來說,就是做一些非常複雜的資料轉換工作,然後根據預定義的標籤或者輸出進而計算出如何分離使用者的資料。簡單理...