SVM支持向量机+libsvm用法

来源:互联网 发布:网络暴力 抑郁症 编辑:程序博客网 时间:2024/05/22 23:28
SVM是一种无监督学习算法(其它无监督学习算法有kNN,SOM等),可用于模式识别或回归时。但其用到大量的数学运算,需要一定的数学基础。但是如果使用libsvm,则可以不必关心svm实现细节,直接专注问题与建模。libsvm是台湾大学林智仁(Lin Chih-Jen)副教授等开发设计的一个简单、易于使用和快速有效的SVM模式识别与回归的软件包,提供源代码和可执行文件。使用方法:1.下载软件包 libsvmhttp://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+zip将libsvm解压缩到任意文件夹下,如E:/libsvm2. 使用svm-toy进行测试,双击libsvm/windows/svm-toy.exe点击Change按钮改变颜色,用鼠标点击在画布上画出如左图所示的点集,然后点Run按钮产生如右图的图像。可以看出分类效果相当不错。然后点Save按钮保存为tdata,供下一步使用。SVM支持向量机+libsvm用法 - hankjin - 云水居 SVM支持向量机+libsvm用法 - hankjin - 云水居3. 使用svm-train等进行测试3.1下载gnuplot ftp://ftp.gnuplot.info/pub/gnuplot/gp400win32.zip, 解压缩到C:/tmp目录下3.2安装python3.3将第2步生成的数据3.4将libsvm/tools文件夹下的grid.py复制到libsvm/windows文件夹下。然后在命令行下进入libsvm/windows目录 ,执行python grid.py tdata会看到一堆数据和一个图在迅速变化,运行结束后,最后一行有参数,例如...[local] 13 -3 100.0 (best c=128.0, g=0.5, rate=100.0)128.0 0.5 100.0前两个分别是c和g,用这两个参数进行训练svm-train.exe -c 128.0 -g 0.5 tdata可以得到tdata.model,然后用这个tdata.model对tdata进行预测svmp-redict.exe tdata tdata.model tdata.outAccuracy = 100% (53/53) (classification)这个数据比较规范,所以结果是100%转载于http://hankjin.blog.163.com/blog/static/33731937201082103012777/参考文档http://www.cmlab.csie.ntu.edu.tw/~cyy/learning/tutorials/libsvm.pdfhttp://www.csie.ntu.edu.tw/~piaip/svm/svm_cjlin_dm.pdfhttp://www.csie.ntu.edu.tw/~cjlin/libsvm/
原创粉丝点击