1.前言

由于毕业设计需要用到libsvm,所以最近专心于配置libsvm,曾经尝试过在matlab中安装,但是没有成功。最终在Python环境中完成安装。

2.LIBSVM介绍

LIBSVM 是台湾大学林智仁(Lin Chih-Jen)教授等开发设计的一个操作简单、易于使用、快速有效的 SVM 软件包。可以解决分类问题(包括 C-SVC、n-SVC )、回归问题(包括 e-SVR、n-SVR )以及分布估计(one-class-SVM)等问题,提供了线性、多项式、径向基和 S 形函数四种常用的核函数供选择,可以有效地解决多类问题、交叉验证选择参数、对不平衡样本加权、多类问题的概率估计等。LIBSVM 不但提供了编译好的 Windows 系统执行文件,还提供了源代码,方便改进、修改以及在其它操作系统上应用。LIBSVM 最大的特点就是对 SVM 所涉及的参数调节相对比较少,提供了很多的默认参数,因而使用起来非常方便。SVM 用于模式识别或回归时, SVM 方法及其参数、核函数及其参数的选择,目前国际上还没有形成一个统一的模式, 也就是说最优 SVM 算法参数选择还只能是凭借经验、实验对比、大范围的搜寻或者利用软件包提供的交互检验功能进行寻优的功能。
LIBSVM 可以在 http://www.csie.ntu.edu.tw/~cjlin/libsvm/index.html#download 处免费获得。

3.LIBSVM的安装

3.1 下载libsvm安装包

下载地址:http://www.csie.ntu.edu.tw/~cjlin/libsvm/index.html#download
将下载好的libsvm进行解压,解压到适当的文件夹中,本人解压到了:D:\libsvm-3.22中。

3.2 对libsvm.dll进行适配处理

1.本人电脑使用的是win10 64位系统,python使用的是Python3.6.3(anaconda 3 5.0.1 64bit)版本,并且没有安装VS。所以到Python的一些网站上下载对应版本的libsvm。下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-umfpack
2.由于本人python版本是3.6.3,操作系统是64位的,所以下载对应的libsvm为libsvm-3.22-cp36-cp36m-win_amd64.whl。
3.打开anaconda prompt,进入文件所在路径,使用pip安装libsvm-3.22-cp36-cp36m-win_amd64.whl。

pip install libsvm-3.22-cp36-cp36m-win_amd64.whl

4.安装成功后进入python目录下的一个文件夹site-packages下找到新生成的libsvm.dll。将其放置到C:\windows\system32。

3.3 配置path环境变量

将解压的libsvm文件夹下的tools和windows所在的路径D:\libsvm-3.22\tools和D:\libsvm-3.22\windows添加到path的环境变量中。

3.4 安装gnuplot

由于许多步骤需要调用 gnuplot 来绘制图形,所以首先需要安装 gnuplot。
下载地址: https://sourceforge.net/projects/gnuplot/files/gnuplot/
安装默认安装即可。记住安装路径,本人安装路径为D:\Program Files\gnuplot

3.5 修改easy.py和grid.py

在tools文件夹中的两个文件easy.py和grid.py中,有关gnuplot对应的路径需要更改。
在easy.py中设置

gnuplot_exe = r"D:\Program Files\gnuplot\bin\gnuplot.exe"

在grid.py中设置

self.gnuplot_pathname = r'D:\Program Files\gnuplot\bin\gnuplot.exe'

至此,Python版LIBSVM安装成功。

4.LIBSVM的简单使用

>>> import os
>>> os.chdir('D:\libsvm-3.22\python')
>>> from svmutil import *
>>> y,x=svm_read_problem('../heart_scale')
>>>m=svm_train(y[:200],x[:200],'-c 4')
>>> p_label,p_acc,p_val=svm_predict(y[200:],x[200:],m)

参考链接:
http://baijiahao.baidu.com/s?id=1580049402237436090
http://xiaosheng.me/2016/06/06/article15/
http://blog.csdn.net/lqhbupt/article/details/8599295

转载来源:https://www.cnblogs.com/bbn0111/p/8318629.html

学习笔记24—win10环境下python版libsvm的安装的更多相关文章

  1. Go学习笔记(一):Ubuntu 环境下Go的安装

    本文是根据<Go Web 编程>,逐步学习 Ubuntu 环境下go的安装的笔记. <Go Web 编程>的URL地址如下: https://github.com/astaxi ...

  2. Django框架学习笔记(windows环境下安装)

    博主最近开始学习主流框架django 网上大部分的安装环境都linux的 由于博主在windows环境下已经有了 Pycharm编辑器 ,所以决定还是继续在windows环境下学习 首先是下载 链接 ...

  3. Window环境下Python和Django的安装

    转载地址:http://blog.csdn.net/haoni123321/article/details/7593821 1.下载python,本文使用python-2.7.2.msi 2.下载dj ...

  4. Oracle 学习笔记(Windows 环境下安装 + PL/SQL)

    Oracle 安装.PL/SQL 配置使用  前言:因更换机械硬盘为 SSD 固态硬盘装了新 Windows 7 系统,需要重新搭建开发环境,把 Oracle 安装过程和 PL/SQL 配置使用做下笔 ...

  5. 解决win10环境下python Selenuim调用Chrome时提示data 及Chrome正在受自动软件控制的方法

    用python自动访问谷歌浏览器时会出现data界面,很是烦人.在网上搜索,有说是因为webdriver和google版本不匹配导致的,就下过各种版本,结果都一样. 后来明白了,出现data的原因只是 ...

  6. GO语言学习笔记之Linux环境下安装GO语言

    0x00 安装环境和GO版本 本篇是源码安装,非使用包管理工具安装. # Centos 7.4 # GO v1.11.2 0x01 下载GO安装包 # wget https://dl.google.c ...

  7. 学习笔记:[算法分析]数据结构与算法Python版[基本的数据结构-上]

    线性结构Linear Structure ❖线性结构是一种有序数据项的集合,其中 每个数据项都有唯一的前驱和后继 除了第一个没有前驱,最后一个没有后继 新的数据项加入到数据集中时,只会加入到原有 某个 ...

  8. 学习笔记:[算法分析]数据结构与算法Python版

    什么是算法分析 对比程序,还是算法? ❖如何对比两个程序? 看起来不同,但解决同一个问题的程序,哪个" 更好"? ❖程序和算法的区别 算法是对问题解决的分步描述 程序则是采用某种编 ...

  9. Window环境下Python和Django的安装,以及项目的创建

    1.首先我们要下载python和Django,他们的下载地址如下 python地址:https://www.python.org/ Django地址:  https://www.djangoproje ...

随机推荐

  1. 注册登录二合一之bootstrap

    来源 https://bootsnipp.com/snippets/featured/login-and-register-tabbed-form jquery插件 需导入bootstrap插件 这个 ...

  2. TCP 之 RST 原因分析

    5. 往一个对端已经关闭的套接字上写入数据会收到一个RST信号 1.发送端的 发送缓冲区还有数据,但接收端tcp的接收通道已关闭 2. SYN到达某端口但此端口上没有正在监听的服务器.对于UDP,当一 ...

  3. maven单元测试报java.lang.IllegalStateException: Failed to load ApplicationContext

    报这个异常java.lang.IllegalStateException: Failed to load ApplicationContext的时候,通常是因为applicationContent.x ...

  4. http状态码204/206/200/302/303/307

    HTTP的状态码有很多种,主要有1xx(临时响应).2xx(成功).3xx(已重定向).4xx(请求错误)以及5xx(服务器错误)五个大类,每个大类还对应一些具体的分类.平时我们接触比较多的是200. ...

  5. Excel vba map/dictionary

    今天在调整一生成java代码的工具时,要用到在不同语言间互转数据类型的逻辑,原来的代码中根据excel记录的行号来计算,再到另外一个collection中获取,个人想着这也太土鳖了,于是搜了下,在vb ...

  6. 新手安装Ubuntu操作系统

    新手安装 Ubuntu 操作系统 版权声明:未经博主授权,内容严禁转载分享! 最近学习linux编程,需要安装一个 Ubuntu 操作系统,由于虚拟机的体验不是很好,所以便在电脑上试下装双系统.嘿嘿. ...

  7. Codeforces Round #479 (Div. 3)题解

    CF首次推出div3给我这种辣鸡做,当然得写份博客纪念下 A. Wrong Subtraction time limit per test 1 second memory limit per test ...

  8. Android灯光系统--通知灯深入分析【转】

    本文转自:https://www.cnblogs.com/lkq1220/p/6406261.html Android灯光系统--通知灯深入分析 通知的类别 声音 振动 闪灯 APP如何发出通知灯请求 ...

  9. POJ 2387 Til the Cows Come Home 【最短路SPFA】

    Til the Cows Come Home Description Bessie is out in the field and wants to get back to the barn to g ...

  10. tp框架中的一些疑点知识-6

    vim自带一个目录浏览器,使用命令:E就可以调出来,实际上就是浏览器的名字就是"网络读写"netrw vim也自带了 补全功能, 启动键是 "ctrl_N" 或 ...