首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Weka中用RBFKernel (C和gamma)优化SMO

在Weka中用RBFKernel (C和gamma)优化SMO
EN

Stack Overflow用户
提问于 2011-12-01 23:22:07
回答 2查看 4.4K关注 0票数 0

我正在尝试在Weka中使用带有RBFKernel的SMO分类器来训练一组大约30,000个实例。我使用网格搜索来找到参数C和伽马的最佳值。下面是我的配置:

代码语言:javascript
复制
weka.classifiers.meta.GridSearch -E ACC -y-property classifier.kernel.gamma -y-min -10.0 -y-max 5.0 -y-step 1.0 -y-base 10.0 -y-expression pow(BASE,I) -filter weka.filters.AllFilter -x-property classifier.c -x-min 5.0 -x-max 20.0 -x-step 1.0 -x-base 10.0 -x-expression I -sample-size 100.0 -traversal COLUMN-WISE -num-slots 1 -S 1 -W weka.classifiers.functions.SMO -- -C 1.0 -L 0.0010 -P 1.0E-12 -N 0 -V -1 -W 1 -K "weka.classifiers.functions.supportVector.RBFKernel -C 250007 -G 0.01"

我让它运行了超过9个小时,没有结果,Weka的状态消息仍然是“正在根据训练数据建立模型...”。起初,我认为网格搜索是问题所在,但当我尝试在不执行网格搜索的情况下使用C和gamma的默认值进行训练时,我得到了相同的结果。我尝试使用PolyKernel代替,分类器在几秒钟内就被训练好了(但不是在网格搜索中)。

如何让RBFKernel正常工作(在网格搜索中使用默认值)?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-20 23:50:43

这是对我有效的方法:

  • Using XExpression = pow(BASE,I)XMin = -5XMax = 5XStep = 1XBase = 10的对数阶数(与value.
  • Increasing a filter相同)出于我的目的,我使用了一个DistributionBasedBalance筛选器,并将p设置为一些执行槽数我将numExecutionSlots设置为4(我的机器中的核数)。
票数 1
EN

Stack Overflow用户

发布于 2011-12-06 09:59:27

你会对训练数据进行预处理吗?这对于RBF核来说是非常重要的。您可以尝试将特征归一化为-1,1,然后再次尝试RBF内核。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8343738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档