我有数千个用于训练和测试的样本,我想使用带有RBF核的SVM来对它们进行分类。问题在于,当使用10,000个或更多数据时,Libsvm的RBF核实现非常慢。性能缓慢的主要原因是网格搜索。
我了解了Liblinear和Lasvm。但Liblinear不是我想要的,因为使用线性核的SVM通常比RBF核的准确率低。
我在寻找Lasvm的相关信息,但找不到有用的信息。项目网站关于它的信息非常少。我想知道Lasvm是否可以使用RBF核,或者它是否有特定的核类型,我是否需要对测试和训练数据进行缩放,以及我是否可以对我的核参数进行带有交叉验证的网格搜索。
回答:
LaSVM也有一个RBF核的实现。根据我在大数据上的经验(超过100,000个实例,超过1,000个维度),它的速度并不比LIBSVM快。如果你真的想对庞大的数据使用非线性核,你可以尝试EnsembleSVM。
如果你的数据量确实非常大,并且你对集成学习不熟悉,那么LIBLINEAR是你的选择。如果你的输入维度数量很高,线性核通常不会比RBF核差很多,同时速度要快得多。