【发布时间】:2012-04-03 04:33:52
【问题描述】:
您好,我正在使用 SMO 执行 SVM 分类,其中我的内核是 RBF,现在我想选择 c 和 sigma 值,使用网格搜索和交叉验证,我是内核函数的新手,请帮助,逐步进行
【问题讨论】:
标签: kernel machine-learning svm
您好,我正在使用 SMO 执行 SVM 分类,其中我的内核是 RBF,现在我想选择 c 和 sigma 值,使用网格搜索和交叉验证,我是内核函数的新手,请帮助,逐步进行
【问题讨论】:
标签: kernel machine-learning svm
【讨论】:
阅读 Chih-Wei Hsu、Chih-Chung Chang 和 Chih-Jen 的支持向量分类实用指南。他们解决了这个确切的问题并解释了执行网格搜索以选择参数的方法。 http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf
【讨论】:
我只是对larsmans' answer添加一点解释。
C 参数是一个正则化/松弛参数。其较小的值迫使权重变小。它越大,允许的权重范围就越宽。结果,较大的 C 值会增加错误分类的惩罚,从而降低训练数据的分类错误率(这可能导致过度拟合)。随着 C 值的增加,您的训练时间和支持向量的数量也会增加。
您可能还会发现阅读 K.K. 的 Extending SVM to a Soft Margin Classifier 很有用。下巴。
【讨论】:
您还可以使用统一设计模型选择来减少需要检查的元组数量。 解释它的论文是黄建明的“通过统一设计的支持向量机的模型选择” ssvm 0.2中存在python中的一些实现
【讨论】: