24小时热门版块排行榜    

查看: 1891  |  回复: 5

xmcrobbie

银虫 (小有名气)

[求助] libsvm的参数困惑! 已有2人参与

在做测试的时候,对参数进行grid搜索

[bestacc,bestc,bestg] = SVMcgForClass(trainlabels,trainsample,-10,10,-10,10);

cmd = ['-c ',num2str(bestc),' -g ',num2str(bestg)];
disp(cmd);

model = svmtrain(trainlabels, trainsample, cmd);
[predict_label, accuracy] = svmpredict(testlabels,testsample, model);


我观察了一下发现,这时bestc是等于16,bestg等于0.5.
很显然这个参数是根据trainsample训练出来的。svmpredict的精度是98.7。

然后,我修改了代码,没有调用 SVMcgForClass

直接手动指定
bestc=512,bestg=0.015625
cmd = ['-c 512 -g 0.015625' ];
model = svmtrain(trainlabels, trainsample, cmd);
[predict_label, accuracy] = svmpredict(testlabels,testsample, model);

svmpredict的精度更高,精度是98.95%。。
哪个结果更准确????
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

itissogood

新虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
我不知道我说的对不对啊。我的意见供你参考。
据我所知,libsvm里是用训练集,进行交叉检验,从而搜索最优的c和g。也就说,所得的两个参数也是基于训练集的。
根据机器学习的一般性规律,这些对训练集是最优的参数,对预测集未必是最优。
所以可能你自己手工指定的参数的预测结果可能会更好。
2楼2014-03-10 10:54:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

引用回帖:
2楼: Originally posted by itissogood at 2014-03-10 10:54:29
我不知道我说的对不对啊。我的意见供你参考。
据我所知,libsvm里是用训练集,进行交叉检验,从而搜索最优的c和g。也就说,所得的两个参数也是基于训练集的。
根据机器学习的一般性规律,这些对训练集是最优的参数 ...

是的,我的看法也是如此,我跟踪了程序,的确是这样。一般采用哪种做法呢?第一种还是第二种呢?

[ 发自小木虫客户端 ]
3楼2014-03-10 14:02:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

HRL_RS

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
一楼正解。你可以对训练集进行一次分类,第一次参数训练的模型准确率应该会高于第二个参数训练的模型。
4楼2014-03-11 11:52:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

勤奋的小蚂蚁

新虫 (初入文坛)

当然是后者,SVMcgForClass这个算法中c,g的范围设的太小了,所有精度没有后者高
5楼2014-08-19 16:10:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

乐悠可豆

金虫 (小有名气)

引用回帖:
5楼: Originally posted by 勤奋的小蚂蚁 at 2014-08-19 16:10:28
当然是后者,SVMcgForClass这个算法中c,g的范围设的太小了,所有精度没有后者高

后者是指定的,随机性太强,除非知道指定的c和g对应的准确率高,不然很难找到相应的c和g。C值过大时容易发生拟合结果盒实际结果相差很大,不知有没有差选取的c和g的取值范围呀?(谢谢了)
6楼2015-08-19 15:43:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xmcrobbie 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 面上合作单位盖章 +6 ssyjh 2026-08-27 9/450 2026-09-01 20:01 by huagongfeihu
[基金申请] 为什么国自然不能直接公布 +5 bjdxyxy 2026-08-26 5/250 2026-09-01 17:54 by 小伟大博士
[基金申请] 学科评审组评审是指会评吗? +4 瞬息宇宙 2026-08-31 4/200 2026-09-01 14:58 by jiaoxg
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +7 gdd2018 2026-08-28 12/600 2026-09-01 08:32 by 尼古拉斯小虫
[基金申请] 怎么看青基中了没有啊 +6 叶九微 2026-08-26 6/300 2026-08-31 23:54 by yudaoqian88
[基金申请] 基金未中,这种答复是模板吗? +6 zhaosm1982 2026-08-27 7/350 2026-08-31 21:18 by qdxxmc
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +6 yuleib84 2026-08-26 7/350 2026-08-31 19:46 by 鱼翔浅底1
[基金申请] 面上意见出来了 +12 黄鸟于飞Chao 2026-08-29 23/1150 2026-08-31 18:57 by 黄鸟于飞Chao
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 29号明天会评吗 +4 笨笨唐 2026-08-28 4/200 2026-08-31 09:30 by huixian257
[基金申请] 为什么到现在没收到通知? +5 tannykie 2026-08-29 5/250 2026-08-30 21:05 by purplejack
[基金申请] 有没有仍没收到信息的 +7 德尚中行 2026-08-27 8/400 2026-08-30 20:52 by purplejack
[考博] 找导师 +6 yuanjiabao 2026-08-29 7/350 2026-08-30 14:40 by 生科新手
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 牛来!米来!面来! +8 beefly 2026-08-26 8/400 2026-08-26 08:37 by xuzhipiao
信息提示
请填处理意见