2、解压缩:解压缩到任一目录下,这里我解压到/home/xxxxxx/libsvm-2.91。/home/xxxxxx/是我的用户目录,xxxxxx是用户名。
3、编译:进入到/home/xxxxxx/libsvm-2.91,输入命令make(即可完成安装,但有时候会出现下列错误)
g++ -Wall -Wconversion -O3 -fPIC -c svm.cpp
make: g++: Command not found
make: *** [svm.o] Error 127
4、错误解决:此错误为没有对应编译器,需要安装。
5、安装g++编译器:在终端输入命令 apt-get install g++
6、再编译:安装g++成功后,即可再编译,编译成功即可用libsvm
7、Libsvm使用
A.使用svm-train训练:在终端中输入./svm-train heart_scale
B.使用svm-predict预测:在终端输入./svm-predict heart_scale heart_scale.model out
heart_scale为test file, heart_scale.model是由svm-train训练出来对模型文件,out为预测输出文件。
8、如果想使用easy.py和grid.py更快的执行以上第7步骤的工作。因为Ubuntu中已经安装了python和gunplot,所以这两个软件对安装工作可以省略。进入/home/xxxxxx/libsvm-2.91/tools到目录后,只需要在终端中输入:
python easy.py /home/xxxxxx/libsvm-2.91/SYN /home/xxxxxx/libsvm-2.91/SYN2NMF
这里SYN为用来构建模型对训练文件;SYN2NMF为需要预测对文件
运行结果:
Best c=2.0, g=0.0078125 CV rate=77.45
Training...
Output model: SYN.model
Scaling testing data...
Testing...
Accuracy = 83.35% (1667/2000) (classification)
Output prediction: SYN2NMF.predict
关于Linux命令的介绍,看看《linux就该这么学》,具体关于这一章地址3w(dot)linuxprobe/chapter-02(dot)html
PS:在安装过程中,最好首先在终端中输入 sudo -i 切换为root用户模式,避免权限错误。
一般使用weka进行数据挖掘的时候会碰到两个问题,一是内存不够,二是libsvm使用不了,先把libsvm.jar下载后放到weka的安装目录下,然后这样解决比较方便:Windows:修改RunWeka.ini 文件里的 maxheap 到合适的大小,例如maxheap=1000m, 修改cp参数使libsvm可以使用,例如cp=%CLASSPATH%D:/Program Files/Weka-3-6/libsvm.jar(即加上libsvm存放的路径)。这样再启动weka上述的两个问题就解决了,不用去修改CLASSPATH环境变量,网上有些人就是说的罗嗦。Linux:先把weka.jar文件解压,然后可以新建一个脚本startWeka.sh到weka的安装目录下,然后加入如下命令:java -Xmx3000m -classpath weka.jar:libsvm.jar weka.gui.Main保存退出,然后在终端当前目录下使用./startWeka.sh即可。疑惑应该主要在第1点,我的理解是这样的:第1步的编译,依赖于Vlfeat, Cplex, GSL Cblas(可能用到了里面的文件,假设是a.h),因此直接编译的话是编译不过的,需要你给出这几个文件的路径,
然后编译器才能知道要去哪里找a.h,需要在makefile中加类似如下的信息:
MYINC=-I../../../util/ -I../../include/ -I../../../include/ \//这里面是Vlfeat, Cplex, GSL Cblas的路径
-I../test/ -I../../util/
而Vlfeat, Cplex, GSL Cblas是什么东西我就不清楚了,因为第1中要求modify,建议你把makefile给出来,有助于大家解答
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)