目录
一、libsvm的安装
https://www.lfd.uci.edu/~gohlke/pythonlibs/#libsvm
(选择对应的python版本)
pip install libsvm‑3.22‑cp37‑cp37m‑win_amd64.whl
二、构建数据集并获得决策模型
1.解压刚刚下载的压缩包,进入windows文件夹,打开svmtoy.exe文件
2.点击点类似左边的图一般,点击save保存在txt文件里
3.导入包
from libsvm.svmutil import *
from libsvm.svm import *
import scipy.spatial
4.读取数据
#根据文件路径直接返回要使用的数据格式
label,data= svm_read_problem('2.txt')#训练数据
p_label,p_data=svm_read_problem('3.txt')#预测数据
5.设置训练参数
para ='-t 0 -c 4 -b 1'
'''
-t
0为线性核
1为多项式核
2为高斯核(默认)
'''
6.训练并将模型保存在文件里,同时测试准确度
#多项式核
model=svm_train(label,data,para)
svm_save_model('6',model)
acc=svm_predict(p_label,p_data,model)
结果:
7.多项式核
para ='-t 1 -c 4 -b 1'
8.训练并将模型保存在文件里,同时测试准确度
model=svm_train(label,data,para)
svm_save_model('5.txt',model)
acc=svm_predict(p_label,p_data,model)
结果:
9.高斯核
para ='-t 2 -c 4 -b 1'
10.训练并将模型保存在文件里,同时测试准确度
model=svm_train(label,data,para)
svm_save_model('5.txt',model)
acc=svm_predict(p_label,p_data,model)
结果:
svm_type c_svc 指SVM类型
kernel_type rbf 指核函数类型
SV指所有的支持向量
4 1:0.362 2:0.434 第一列的每个支持向量的权值(alpha*y),后面则是样本数据
参考:
(41条消息) libsvm获得决策函数模型(python+手工iris数据集)_junseven164的博客-CSDN博客