libsvm(一) 基本使用


主要流程

  • 转化数据格式
  • 训练和测试数据进行scale
    训练和测试数据需要使用同样的归一化文件
svm-scale -l -1 -u 1 -s range train > train.scale
svm-scale -r range eval > eval.scale
  • 选择核函数
    特征维度>>训练数据:linear kernel
    特征维度和训练数据都很大:使用LIBLINEAR库更快
    训练数据>>特征维度:RBF kernel
  • 选择参数c和g
    使用v-fold交叉验证,把训练数据分成v个同样大小的子集。其中一个子集作为测试集,另外v-1个子集作为训练集,最后总的准确率作为测试结果。
    采用grid-search方法查找最好的参数,参数序列使用指数递增的方式进行遍历:
    c=25,23...,215

    g=215,213...,23

    这种方法称为coarse grid search,接下来在参数值附近进行finer grid search,进行更细粒度的查找。
python grid.py train.scale
  • 使用最好的参数c和g进行训练和测试
    “` powershell
    svm-train -s 0 -c 32 -t 2 -g 0.5 -e 0.1 train.scale
    svm-predict eval.scale train.scale.model eval.res
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值