SVM学习阶段的实际计算复杂度(比如说,在LibSVM中实现)?
谢谢
答案 0 :(得分:9)
非线性 SVM的训练复杂度通常在O(n ^ 2)和O(n ^ 3)之间,n训练实例的数量。以下论文是很好的参考文献:
PS:如果要使用线性内核,请不要使用LIBSVM。 LIBSVM是一种通用(非线性)SVM求解器。它不是线性SVM的理想实现。相反,您应该考虑诸如LIBLINEAR(与LIBSVM相同的作者),Pegasos或SVM^perf之类的内容。对于线性SVM,这些具有很多更好的训练复杂性。训练速度可以比使用LIBSVM好几个数量级。
答案 1 :(得分:1)
这将严重依赖于svm类型和内核。有一个相当技术性的讨论http://www.csie.ntu.edu.tw/~cjlin/papers/libsvm.pdf。 要快速回答http://www.csie.ntu.edu.tw/~cjlin/papers/libsvm.pdf,请说它是n ^ 2.