我正在使用libsvm对具有大量特征/属性的数据集进行多类分类(每个项目大约5,800个)。我想为C和Gamma选择比我目前使用的默认值更好的参数。
我已经尝试过运行easy.py,但对于我正在使用的数据集,估计的时间已经接近(在20,50,100和200个数据样本中运行easy.py并获得超线性回归,它预测我需要的运行时间需要数年)。
有没有办法更快地达到比默认值更好的C和Gamma值?我正在使用Java库,如果这有任何区别的话。
答案 0 :(得分:3)
我可以在没有网格搜索的情况下完成此操作,我相信easy.py
会这样做。
请看Trevor Hastie等人撰写的这篇论文:The Entire Regularization Path for the Support Vector Machine(PDF)。一个“SVM运行”将一次性计算所有“C”值的损失,因此您可以看到它如何影响您的SVM性能。
我认为算法的核心是用fortran编写的,但是包含在R中。