python scikits 学习 - SVM 选项
Posted
技术标签:
【中文标题】python scikits 学习 - SVM 选项【英文标题】:python scikits learn - SVM options 【发布时间】:2012-03-27 08:56:48 【问题描述】:只是对 scikits 学习 SVM 课程中的两个选项感到好奇。 Scale_C 和收缩有什么作用?文档中没有太多内容。 Scale C 似乎能够针对训练数据适当地缩放 C 参数。
谢谢
【问题讨论】:
【参考方案1】:scale_C=True
(在开发版本中已弃用并计划在 0.12 中删除)导致正则化参数 C
在传递给底层 LibSVM 实现之前除以样本数。
shrinking
启用或禁用由Joachims 1999 描述的“缩小启发式”,这应该可以加快 SVM 训练。
【讨论】:
嗯,好的,谢谢。 C 除以样本数对 SVM 训练有何帮助? @tomas:将其设置为True
使得正则化与样本数量无关。当设置为False
时,当样本数加倍等时,你必须加倍。我建议你总是设置为True
;我相信这将是未来的行为。
在任何情况下,C 的值都应该通过开发集上的交叉验证网格搜索来选择。两者本质上都不比另一个更好。您只需要知道 C 不再按 scikit-learn 开发版本中的样本数量进行缩放,以防您对它的绝对值以及它在目标函数中的使用方式(例如,用于出版科学期刊)感兴趣。 以上是关于python scikits 学习 - SVM 选项的主要内容,如果未能解决你的问题,请参考以下文章
将经过训练的 SVM 从 scikit-learn 导入到 OpenCV
在 python scikit-learn 中,RBF 内核的性能比 SVM 中的线性差得多
在 python 中使用 scikit 包在 SVM 中获取负 alpha 值