在svm_train中-c和-g是最常用的两个参数,其中-c是设置C-SVC、e-SVR、n-SVR中从罚系数C,默认值为1;-g是核函数中函数设置。那么如何去选取最优的参数c和g呢?libsvm 的 python 子目录下面的 grid.py 可以帮助我们
1.解压gnuplot,如果没有的话,可以在网上下载,网址为http://www.gnuplot.info/download.html
2.在libsvm的tools 目录中找到grid.py,注意不同的libsvm版本grid.py所放的位置可能不同。打开grid.py,在gnuplot_pathname改为你的gunplot所在的目录。例如,我的gnuplot解压到了D:\Program Files,那我就应该改为
self.gnuplot_pathname = r'D:\Program Files\gnuplot\bin\gnuplot.exe'
3.把grid.py和python.exe拷贝到libsvm\windows目录下,当然还有你的数据集
4.在命令行窗口中,进入该目录,输入python grid.py testSet.txt(我的数据集名称是testSet.txt),然后运行
5.结果显示:
这里,c就等于0.03125,g等于0.0078125