python参数寻优_Libsvm网格参数寻优教程

  • Post author:
  • Post category:python


首先下载Libsvm、Python和Gnuplot:

l         libsvm的主页http://www.csie.ntu.edu.tw/~cjlin/libsvm/上下载libsvm (我自己用2.86版本)

l         python的主页http://www.python.org下载 python (我自己用2.5版本)

l         gnuplot的主页http://www.gnuplot.info/下载gnuplot  (我用4.0版本)

LIBSVM 使用的一般步骤是:

1)按照LIBSVM软件包所要求的格式准备数据集;

2)对数据进行简单的缩放操作;

3)首要考虑选用RBF 核函数;

4)采用交叉验证选择最佳参数C与g ;

5)采用最佳参数C与g 对整个训练集进行训练获取支持向量机模型;

6)利用获取的模型进行测试与预测。

1)LIBSVM使用的数据格式

该软件使用的训练数据和检验数据文件格式如下:

[label] [index1]:[value1] [index2]:[value2] …

[label] [index1]:[value1] [index2]:[value2] …

一行一条记录数据,如:

+1 1:0.708 2:1 3:1 4:-0.320 5:-0.105 6:-1

这里(x,y)à((0.708,1,1, -0.320, -0.105, -1), +1)

label 或说是class, 就是你要分类的种类,通常是一些整数。

index 是有順序的索引,通常是连续的整数。

value 就是用来 train 的数据,通常是一堆实数。

2)对数据进行简单的缩放操作

扫描数据. 因为原始数据可能范围过大或过小, svmscale可以先将数据重新scale (縮放) 到适当范围使训练与预测速度更快。

svmscale.exe的用法:svmscale.exe feature.txt feature.scaled

默认的归一化范围是[-1,1],可以用参数-l和-u分别调整上界和下届,feature.txt是输入特征文件名 输出的归一化特征名为feature.scaled

3) 考虑选用RBF 核函数

训练数据形成模型(model),实质是算出了wx+b=0中的w,b.

Svmtrain的用法:svmtrain [options] training_set_file [model_file]

其中options涵义如下:

-s svm类型:设置SVM



版权声明:本文为weixin_28717939原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。