2011-02-25 54 views

回答

3

grid.py是使用RBF (徑向基函數)內核C-SVM分類模型選擇工具。它使用交叉驗證(CV)技術 來估計指定的 範圍內的每個參數組合的準確度,並幫助您爲問題確定最佳參數。

grid.py直接執行libsvm二進制文件(因此不需要python綁定) 用於交叉驗證,然後使用gnuplot繪製CV精度的輪廓。 在使用之前,您必須先安裝libsvm和gnuplot。該包裝 gnuplot的提供的http://www.gnuplot.info/

Usage: grid.py [-log2c begin,end,step] [-log2g begin,end,step] [-v fold] 
     [-svmtrain pathname] [-gnuplot pathname] [-out pathname] [-png pathname] 
     [additional parameters for svm-train] dataset 

該程序進行用參數C(和γ) = 2 ^開始V-倍交叉驗證,2 ^(開始+步驟),...,2 ^結束。

您可以指定libsvm可執行文件和gnuplot使用的參數是 -svmtrain和-gnuplot參數。

For windows users, please use pgnuplot.exe. If you are using gnuplot 
3.7.1, please upgrade to version 3.7.3. The version 3.7.1 has a bug. 

> python grid.py -log2c -5,5,1 -log2g -4,0,1 -v 5 -m 300 heart_scale 

用戶(尤其是MS Windows用戶)可能需要指定的 可執行文件的路徑。您可以更改 grid.py的開頭路徑或在命令行中指定它們。例如,

> grid.py -log2c -5,5,1 -svmtrain c:\libsvm-2.7\windows\svmtrain.exe -gnuplot c:\tmp\gnuplot\bin\pgnuplot.exe -v 10 heart_scale 

輸出:兩個文件 dataset.png:所述CV精度的等高線圖(由gnuplot的生成) dataset.out:在每個精度的對數(C,γ)