Pegasos: Primal estimated sub-gradient solver for SVM

Shai Shalev-Shwartz, Yoram Singer, Nathan Srebro*, Andrew Cotter

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

792 Scopus citations


We describe and analyze a simple and effective stochastic sub-gradient descent algorithm for solving the optimization problem cast by Support Vector Machines (SVM). We prove that the number of iterations required to obtain a solution of accuracy ε is ̃O(1/ε), where each iteration operates on a single training example. In contrast, previous analyses of stochastic gradient descent methods for SVMs require Ω(1/ε2) iterations. As in previously devised SVM solvers, the number of iterations also scales linearly with 1/λ, where λ is the regularization parameter of SVM. For a linear kernel, the total run-time of our method is ̃O(d/(\λ\ε)), where d is a bound on the number of non-zero features in each example. Since the run-time does not depend directly on the size of the training set, the resulting algorithm is especially suited for learning from large datasets. Our approach also extends to non-linear kernels while working solely on the primal objective function, though in this case the runtime does depend linearly on the training set size. Our algorithm is particularly well suited for large text classification problems, where we demonstrate an order-of-magnitude speedup over previous SVM learning methods.

Original languageAmerican English
Pages (from-to)3-30
Number of pages28
JournalMathematical Programming
Issue number1
StatePublished - Mar 2011


  • SVM
  • Stochastic gradient descent


Dive into the research topics of 'Pegasos: Primal estimated sub-gradient solver for SVM'. Together they form a unique fingerprint.

Cite this