linux下安装libsvm

最近要用到支持向量机,就找了些资料试着在linux平台下安装。这里python是3.3.2版,libsvm3.17.

先把没成功的方法写下来:

  1. 下载对应的libsvm包,tar.gz

  2. 解压对应的压缩包

  3. 打开终端,进入解压后的目录,用‘make’命令进行安装

之后试了一下libsvm自带的例子(./svm-train heart_scale)可以正确运行,以为安装成功,但用readme中的例子写一个py文件:

import os,sys

sys.path = [os.path.dirname(os.path.abspath(__file__))] + sys.path

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)

print("p_label:"+p_label+"  p_acc:"+p_acc+"  p_val:"+p_val)

却得到这样的报错:

Traceback (most recent call last):

  File "test.py", line 5, in <module>

    from svmutil import *

  File "/home/hadoop/libsvm3.17/libsvm-3.17/python/svmutil.py", line 5, in <module>

    from svm import *

  File "/home/hadoop/libsvm3.17/libsvm-3.17/python/svm.py", line 22, in <module>

    raise Exception('LIBSVM library not found.')

说明libsvm并没有安装成功。

之后又尝试了另一个方法,转自http://blog.csdn.net/rav009/article/details/12995095

  1. 安装gnuplot:sudo apt-get install libx11-dev

                        wget http://nchc.dl.sourceforge.net/project/gnuplot/gnuplot/4.6.rc1/gnuplot-4.6.rc1.tar.gz  (下载gnuplot) 

                        tar xzvf gnuplot-4.6.rc1.tar.gz  (解压)

                       cd gnuplot-4.6.rc1            (进入目录)

                       ./configure  

                       make  

                       sudo make install

  2. 安装libsvm:wget http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+tar.gz  (下载libsvm)

                         然后解压

                          在libsvm的tools文件夹下找到 easy.py 和 grid.py 两个文件。把其中 gnuplot 的路径设置好。注意gnuplot的pathname不是解压的那个目录,而是要用 which gnuplot 命令来找出。最后执行在libsvm的文件夹下执行make命令,在子目录python下执行make命令。

用这种方法安装之后,又用之前测试的py文件编译运行了一下,这次没有错误,可以得到结果。但还有一个问题,就是直接在python shell中使用libsvm的时候还是会有错误:

>>> from svmutil import *

Traceback (most recent call last):

  File "<pyshell#10>", line 1, in <module>

    from svmutil import *

ImportError: No module named svmutil

还是找不到对应模块,我对python shell使用的不多,平时都是将py文件在终端编译运行python程序,不知道这个错误是怎么引起的。如果有大神不小心看见了,还望多多指教



转载于:https://my.oschina.net/u/1461744/blog/206982

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值