Python使用libsvm库
环境: win10 python-2.7.11 64位
1. 官网下载安装包https://github.com/cjlin1/libsvm
解压后如图
2. 将LibSVM文件夹的所有内容(上图)放入Python的包目录\Lib\site-packages或者工程目录中。
我的是D:\python-2.7.11\Lib\site-packages\libsvm
3. 在程序列表中的Microsoft VisualStudio 2015/Visual Studio Tools下找到Visual Studio x64本机命令工具提示符(注意一定要是64位的command prompt),双击该Command Prompt将会弹出命令行窗口,如图
输入nmake -f Makefile.win clean all。这时libsvm的windows目录下将生成64位的动态链接库,如下图
将libsvm.dll添加到系统目录, `C:\WINDOWS\system32\‘
5. 将 svm.py 和 svmutil.py(如下图) 放在正在写的python代码工程文件夹内
或者,将其拷贝到系统安装的python包目录下,如(D:\python-2.7.11\Lib\site-packages\svm),然后配置python的环境变量并重启电脑。
6. 在python文件中使用from svmutil import *即可使用
例如:
from svmutil import * if __name__ == '__main__': y, x = [1,-1], [{1:1, 2:1}, {1:-1,2:-1}] prob = svm_problem(y, x) param = svm_parameter('-t 0 -c 4 -b 1') model = svm_train(prob, param) yt = [1] xt = [{1:1, 2:1}] p_label, p_acc, p_val = svm_predict(yt, xt, model) print(p_label)
得到如下输出:
*
optimization finished, #iter = 1
nu = 0.062500
obj = -0.250000, rho = 0.000000
nSV = 2, nBSV = 0
Total nSV = 2
*
optimization finished, #iter = 1
nu = 0.062500
obj = -0.250000, rho = 0.000000
nSV = 2, nBSV = 0
Total nSV = 2
*
optimization finished, #iter = 1
nu = 0.062500
obj = -0.250000, rho = 0.000000
nSV = 2, nBSV = 0
Total nSV = 2
*
optimization finished, #iter = 1
nu = 0.062500
obj = -0.250000, rho = 0.000000
nSV = 2, nBSV = 0
Total nSV = 2
Model supports probability estimates, butdisabled in predicton.
Accuracy = 100% (1/1) (classification)
[1.0]
参考:
http://blog.csdn.net/m624197265/article/details/41894311