支持向量机(SVM)用于大型/超大型数据集

时间:2013-10-28 16:30:53

标签: c++ svm bigdata large-data

我想知道对于大型/超大型数据集(5-15M +行)的支持向量机(SVM)的最先进的有效(近似)实现是什么,具有非线性决策边界(例如高斯内核)?

我知道两种特殊的方法: 一方面,这项使用随机梯度下降等的调查: http://cseweb.ucsd.edu/~akmenon/ResearchExam.pdf

另一方面,有这些核心矢量机/球矢量机方法: http://www.c2i.ntu.edu.sg/ivor/cvm.html

在哪个页面上我们可以找到两篇描述核心和球矢量机器的论文。

换句话说,我相信SVM对于手头的问题是非常合理的,但是如果我使用标准的SVM实现(可能高达n ^ 3复杂度),我受样本大小的限制。我正在寻找一种合理准确的“近似”实现,同时时间复杂度低于n ^ 2。这种实现最快的是什么?它们在经验上是否很好,或者在准确度上接近原始SVM?

1 个答案:

答案 0 :(得分:1)

我曾经尝试FaLK-SVM,结果很有希望。 approch类似于核心向量机/球矢量机,但使用k-最近邻居与树(覆盖树)来分离数据。 link上有一个libSVM实现。 corresponding paper描述了核心和球的方法,但是说k-nearest neigbour(仅用于分离!)更好。