1. SVM参数
SVM 怎样能得到好的结果:
- 对数据做归一化(simple scaling)
- 应用 RBF kernel
- 用cross-validation和grid-search 得到最优的c和g
- 用得到的最优c和g训练训练数据
- 测试
2. 关于svm的C以及核函数参数设置
参数C
C一般可以选择为:10^t , t=[- 4,4]就是0.0001 到10000。选择的越大,表示对错误例惩罚程度越大,可能会导致模型过拟合。
核函数
(1)线性核函数
(无其他参数)
(2)多项式核函数
(重点是阶数的选择,即d,一般选择1-11:1 3 5 7 9 11,也可以选择2,4,6…)
(3)RBF核函数
(径向基RBF内核,exp{-|xi-xj|^2/均方差},其中均方差反映了数据波动的大小。gamma参数通常可选择下面几个数的倒数:0.1 0.2 0.4 0.6 0.8 1.6 3.2 6.4 12.8,默认的是类别数的倒数,即1/k,2分类的话就是0.5)
(4)sigmoid核函数 又叫做S形内核
两个参数g以及r:g一般可选1 2 3 4,r选0.2 0.4 0.6 0.8 1
说明:
(1)对于线性核函数,没有专门需要设置的参数
(2)对于多项式核函数,有三个参数。-d用来设置多项式核函数的最高此项次数,也就是公式中的d,默认值是3。-g用来设置核函数中的gamma参数设置,也就是公式中的第一个r(gamma),默认值是1/k(k是类别数)。-r用来设置核函数中的coef0,也就是公式中的第二个r,默认值是0。
(3)对于RBF核函数,有一个参数。-g用来设置核函数中的gamma参数设置,也就是公式中的第一个r(gamma),默认值是1/k(k是类别数)。
(4)对于sigmoid核函数,有两个参数。-g用来设置核函数中的gamma参数设置,也就是公式中的第一个r(gamma),默认值是1/k(k是类别数)。-r用来设置核函数中的coef0,也就是公式中的第二个r,默认值是0。
Grid Search
使用grid Search虽然比较简单,而且看起来很naïve。但是他确实有两个优点:
- 可以得到全局最优
- (C,gamma)相互独立,便于并行化进行