1. 把LibSVM包解壓到相應的目錄(由於我只須要裏面windows文件夾中的東東,咱們也能夠只把windows文件夾拷到相應的目錄),好比D:/libsvm。web
2. 在電腦「開始」的「運行」中輸入cmd,進入DOS環境。定位到d:/ libsvm下,具體命令以下:windows
d: (回車)函數
cd /libsvm/windows (回車)spa
(上面第一行是先定位到盤符d,第二行cd 是定位到相應盤符下的目錄)orm
3. 進行libsvm訓練,輸入命令:(這裏要注意文件的名字,2.89之前版本都是svmtrain.exe)cmd
svm-train heart_scale train.modelit
heart_scale ——是目錄下的已經存在的樣本文件,要換成本身的文件,只需改爲本身的文件名就能夠了io
train.model ——是建立的結果文件,保存了訓練後的結果class
能夠看到結果:model
*
optimization finished, #iter = 162
nu = 0.431029
obj = -100.877288, rho = 0.424462
nSV = 132, nBSV = 107
Total nSV = 132
其中,#iter爲迭代次數,nu 是你選擇的核函數類型的參數,obj爲SVM文件轉換爲的二次規劃求解獲得的最小值,rho爲判決函數的偏置項b,nSV 爲標準支持向量個數(0<a[i]<c),nBSV爲邊界上的支持向量個數(a[i]=c),Total nSV爲支持向量總個數(對於兩類來講,由於只有一個分類模型Total nSV = nSV,可是對於多類,這個是各個分類模型的nSV之和)。
在目錄下,還能夠看到產生了一個train.model文件,能夠用記事本打開,記錄了訓練後的結果。
svm_type c_svc //所選擇的svm類型,默認爲c_svc
kernel_type rbf //訓練採用的核函數類型,此處爲RBF核
gamma 0.0769231 //RBF核的參數γ
nr_class 2 //類別數,此處爲兩分類問題
total_sv 132 //支持向量總個數
rho 0.424462 //判決函數的偏置項b
label 1 -1 //原始文件中的類別標識
nr_sv 64 68 //每一個類的支持向量機的個數
SV //如下爲各個類的權係數及相應的支持向量
1 1:0.166667 2:1 3:-0.333333 … 10:-0.903226 11:-1 12:-1 13:1
0.5104832128985164 1:0.125 2:1 3:0.333333 … 10:-0.806452 12:-0.333333 13:0.5
………..
-1 1:-0.375 2:1 3:-0.333333…. 10:-1 11:-1 12:-1 13:1
-1 1:0.166667 2:1 3:1 …. 10:-0.870968 12:-1 13:0.5
到如今,第一次體驗libsvm到這就基本結束了,其餘的兩個(svm-predict、svm-scale)的使用過程相似。怎麼樣,挺爽的吧。對於個別參數你還不理解,不要緊,下面咱們會具體講到。