-1

I study SVM and I will implement svm using python sklearn.svm.SVC.

As i know SVM problem can be represented a QP(Quadratic Programming) So here i was wondering which QP solver is used to solve the SVM QP problem in sklearn svm.

I think it may be SMO or coordinate descent algorithm.

Please let me know what the exact algorithm is used in sklearn svm

1 Answers1

1

Off-the-shelf QP-solvers have been used in the past, but for many years now dedicated code is used (much faster and more robust). Those solvers are not (general) QP-solvers anymore and are just build for this one use-case.

sklearn's SVC is a wrapper for libsvm (proof).

As the link says:

Since version 2.8, it implements an SMO-type algorithm proposed in this paper:

R.-E. Fan, P.-H. Chen, and C.-J. Lin. Working set selection using second order information for training SVM. Journal of Machine Learning Research 6, 1889-1918, 2005.

(link to paper)

Community
  • 1
  • 1
sascha
  • 32,238
  • 6
  • 68
  • 110