支持向量机参数设置详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

程序中SVM 的参数:

TestSVM_Parameter.svm_type=C_SVC;

TestSVM_Parameter.kernel_type= RBF;

TestSVM_Parameter.degree=3.0;

TestSVM_Parameter.coef0=1;

TestSVM_Parameter.gamma=1;

TestSVM_Parameter.cache_size=40;

TestSVM_Parameter.eps=0.01;

TestSVM_Parameter.C=1.0;

TestSVM_Parameter.shrinking=1;

TestSVM_Parameter.nr_weight=0;

TestSVM_Parameter.weight=NULL;

TestSVM_Parameter.weight_label=NULL;

SVM 参数含义:

int svm_type :SVM 问题类型:

0: C_SVC: 多类别识别问题,求解问题 ,,min b w ξ 1

12l t i i C ξ=+∑w w 1: NU_SVC :多类别识别问题,求解问题 ,,,min b ρw ξ 1

112l

t i i l νρξ=-+∑w w 2: ONE_CLASS :两类别识别问题,求解问题 ,,,min b ρw ξ 1

112l

t i i l ρξν=-+∑w w

3: EPSILON_SVR :回归分析,求解问题 *,,,min b w ξξ *1112l l t i i i i C C ξξ==++∑∑w w

4: NU_SVR :回归分析,求解问题 *,,,,min b εw ξξ ()*112l t i i i C νεξξ=⎛⎫+++ ⎪⎝⎭∑w w int kernel_type :核函数类型:

0: LINEAR ,线性,(),t K =x y x y

1: POL Y ,多项式,()(),d t K C γ=+x y x y

2: RBF ,径向基函数,()()2,exp K γ=--x y x y

3: SIGMOID ,Sigmoid 函数,()(

),tanh t K C γ=+x y x y

double degree :多项式核函数参数

double gamma :多项式、径向基函数和Sigmoid 函数的参数 double coef0:多项式和Sigmoid 函数的参数

double cache_size:缓存大小(MB)(标准值40);

double eps:算法终止条件,类似于收敛精度,越小精度越高(标准值0.001);

double C:C_SVC,EPSILON_SVR中的对于误分类样本的惩罚性因子C,越大

惩罚性越强,相当于对数据的信心越大,数据噪声比较小,(可设为1

或1000);

double nu:NU_SVC,ONE_CLASS和NU_SVR中的ν,对误分类样本的另一

种解决方案,ν是支持向量占总样本比例的下界,和样本处在分类界

面两侧一个小邻域内数目占总样本数比例的上界(邻域大小或称管道

半径ρ为隐含参数)。(标准值0.5);

double p:EPSILON_SVR中的ε,回归误差的上限,误差小于此值不惩罚,大

于此值惩罚,实际上相当于期望的回归精度(标准值0.1);

int shrinking:是否使用shrinking策略,0—不使用,1—使用(标准值1);

int nr_weight:C_SVC中需使用不同惩罚性因子的类别数;(一般可不用,设为0,每个类别的惩罚因子均为C)

int *weight_label:需使用特殊惩罚性因子的类别标号,weight_label[nr_weight];

double *weight:各类别惩罚性因子的系数,第i个类别的惩罚因子为weight(i)*C,

没有可设为NULL,weight[nr_weight];

相关文档
最新文档