您的位置:首页 > 其它

libsvm 使用命令

2015-09-28 16:34 232 查看
libsvm下载地址,http://www.csie.ntu.edu.tw/~cjlin/

数据准备成如下格式

label1 1:value1 2:value2,…

label2 1:value1 2:value2,…

特征归一化,使用svm-scale命令,-l,-u 为归一化后特征值范[l,u],输入文件svm_lbp_test_1,输出归一化后的文件lbptestScaled.txt,第一次保存归一化用到的参数文件-s lbp.range,第二次加载参数文件-r lbp.range

svm-scale -l 0 -u 1 -s lbp.range svm_lbp_train_1 >lbptrainScaled.txt

svm-scale -l 0 -u 1 -r lbp.range svm_lbp_test_1 >lbptestScaled.txt

参数寻优,grid.py是对C-SVC的参数c和γ做优选

grid.py lbptrainScaled.txt

输出如下:



训练,使用寻优得到的参数进行训练,保存模型lbp.model

svm-train -c 2.0 -g 0.03125 trainlbpScaled.txt lbp.model

训练结束后,输出如下参数



其中,#iter为迭代次数,nu 是选择的核函数类型的参数,obj为SVM文件转换为的二次规划求解得到的最小值,rho为判决函数的偏置项b,nSV 为标准支持向量个数,nBSV为边界上的支持向量个数(a[i]=c),Total nSV为支持向量总个数(对于两类来说,因为只有一个分类模型Total nSV = nSV,但是对于多类,这个是各个分类模型的nSV之和)。

模型测试,加载模型lbp.model,对测试文件进行测试,输出结果到lbp_output.txt

svm-predict lbptestScaled.txt lbp.model lbp_output.txt

更详细的使用步骤和解释见/article/1906344.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: