关于SVM的基础理论知识,可以google这篇文章《SVM的八股简介》,讲解得生动有趣,是入门的极好教材。作为拿来主义者,我更关心怎么用SVM,因此瞄上了台湾林智仁教授提供的libSVM。我把自己的使用过程记录下来,感觉按照下面的步骤,傻瓜应该也可以用SVM了。

1. 相关程序的下载、安装

总共要下载libsvm,python,gnuplot三个程序。

1.1 libsvm:到http://www.csie.ntu.edu.tw/~cjlin/libsvm/ 下载,我用的是libsvm-3.12.zip,下载后直接解压缩到任意位置,我解压到E:\Codes\libsvm-3.12下。

1.2 python:到http://www.python.org/download/ 下载(该地址可能需要FQ),我下的是python-2.7.3.msi,双击该文件安装到默认位置,我安装到C:\Python27下。将该路径添加到系统环境变量中。添加方法:右键点击 我的电脑 -> 属性 -> 高级系统设置 -> 环境变量,在 系统变量 里找到 path, 点击 编辑,在弹出框最后加上 C:\Python27;(注意用分号与之前的项隔开) 之后重启电脑。

1.3 gunplot:到http://www.gnuplot.info/ 下载,我下的是gp460-win32-setup.exe,双击该文件安装到默认位置,我安装到C:\Program Files\gnuplot下。

2. 生成训练数据和测试数据,分别存为train和test两个文本文件,拷贝到libsvm-3.12\tools下。下一篇博文我会讲怎样结合opencv生成libSVM格式的数据。

3. 进入libsvm-3.12\tools下,用写字板打开easy.py,将里面gnuplot_exe = 后的路径改为gnuplot的安装路径,对于我的情况:

gnuplot_exe = r"C:\Program Files\gnuplot\bin\pgnuplot.exe"。同样,用写字板打开grid.py,修改gnuplot_exe = r"C:\Program Files\gnuplot\bin\pgnuplot.exe"。修改这两个文件时都要注意,要修改else下的gnuplot_exe,而不是if not is_win32下的。另外要注意,如果修改完后easy.py或grid.py默认打开程序变成了写字板,要把它改回成python.exe

4. 在命令行cd到该路径libsvm-3.12\tools下,命令行输入 python easy.py train test,敲回车,程序会自动执行scale,参数寻优,生成svm模型train.model,用该模型对test数据进行预测,并给出准确度。

下面附上我命令行的截图

可以看到,程序自动选择的最优参数 c=32.0, g=0.5,在测试集上准确率为62%

libSVM 简易使用手册的更多相关文章

  1. Git简易参考手册

    如果用过mercury(HG),那么理解Git的运作方式就轻松多了.两者是相同的分布式版本管理工具,只是某些功能有着细微的差别 - Git的管理粒度更加细腻,因此操作上也比HG复杂一点.例如,修改文件 ...

  2. git简易操作手册

    从远程仓库新建 $ git clone https://github.com/xxxr/Repository.git $ cd Repository/ $ git config --global us ...

  3. Docker简易使用手册

    1. Docker介绍 Docker中文社区文档 Docker 是一个开源的软件部署解决方案. Docker 包括三个基本概念: 镜像(Image) Docker的镜像概念类似于虚拟机里的镜像,是一个 ...

  4. ConstraintLayout使用手册

    1. 解决痛点 主要用拖拽 解决嵌套过多 2. 简易使用手册 增加约束 四个角直接拖拽就好了 删除约束 match_constraint 属性 这个属性类似于match_parent,去掉margin ...

  5. libsvm使用说明

    http://www.hankcs.com/ml/libsvm-usage.html libsvm使用说明 码农场 > 机器学习 2016-02-18 阅读(345) 评论(0)  目录   l ...

  6. 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace(转)

    源:分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace Bus Hound官方下载地址:http://perisoft.net/bushound/Bus Hound ...

  7. 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace【转】

    转自:http://bbs.armfly.com/read.php?tid=15377 Bus Hound官方下载地址:http://perisoft.net/bushound/ Bus Hound ...

  8. 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace

    Bus Hound官方下载地址:http://perisoft.net/bushound/Bus Hound 简易使用手册:bus_hound5.0中文使用说明.pdf (246 K) 下载次数:9  ...

  9. PM2 监控 Spring Boot 项目运行

    更多 PM2 的用法介绍请参考: PM2简易使用手册 - 掘金 由于 PM2 通常都用于 node 应用, 所以 exec_mode 应写为 fork, 其中最重要的是 args, -jar 和 ja ...

随机推荐

  1. block 反向传值回调

    /** *  block 反向传值回调 */ //在第二个控制器中 //   (1)声明block,在基类中已写好 //   (2)写好传值方法 //(1) typedef void (^Return ...

  2. Foundation和CoreFoundation之间的转换

    Foundation是OC的东西,CoreFoundation是C语言的东西 eg: NSString\NSArray\NSDictionary 属于Foundation CFStringRef\CF ...

  3. C# serialport

    最近使用C#写串口的程序,实现串口助手的功能,参考文档记录于此. 参考文档 http://blog.csdn.net/geekwangminli/article/details/7851673 htt ...

  4. ucenter 客户端里的自动方法

    <?php /** * UCenter 应用程序开发 Example * * UCenter 简易应用程序,应用程序有自己的用户表 * 使用到的接口函数: * uc_authcode() 可选, ...

  5. 初涉MySQL

    本文要点: MySQL基础 安装MySQL 配置MySQL 使用MYSQL 一.MySQL基础 MySQL 由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一个开源的关系型数据 ...

  6. 【未完待补充】linux 设置So动态库链接路径

    缘起 安装python的包Rtree(Rtree-0.8.2),但需要先安装C语言依赖包spatialindex-src(spatialindex-src-1.8.5).在安装完spatialinde ...

  7. Vue.2.0.5-自定义指令

    简介 除了默认设置的核心指令( v-model 和 v-show ),Vue 也允许注册自定义指令.注意,在 Vue2.0 里面,代码复用的主要形式和抽象是组件--然而,有的情况下,你仍然需要对纯 D ...

  8. js DOM 元素ID就是全局变量

    有人在twitter上提到了:在Chrome的JavaScript终端中,你只需要输入一个元素的ID,就可以访问到这个元素.@johnjbarton给了解释,这是因为所有的元素ID都是全局变量.本文再 ...

  9. Silverlight打印注意事项

    1.Silverlight的打印功能从版本5开始才支持矢量打印,这不但要求打印机支持矢量打印,而且还要安装相应的打印驱动程序. 测试你的打印机是否支持矢量打印,可以参考:如何用C#代码检测打印机和驱动 ...

  10. TOMCAT 关闭报错:Tomcat did not stop in time. PID file was not removed

    关闭tomcat的时候,报出如下错误信息: # ./shutdown.sh Using CATALINA_BASE: /opt/openkm-6.3.1-community/tomcat Using ...