Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Errata in SMO paper

There are some unclear ideas and errors in the “Fast Training” paper that I would like to clarify on this web page:

  • Equations (12.9) and (12.10) in the paper are for when the decision function (1.7) subtracts b, not adds it.
  • Equation (12.18) has a sign error: the plus should be a minus.
  • The sentence after (12.24) should read “is negative” not “is positive”
  • In the pseudo-code, after the “if (eta < 0)” statement, right before the “if (|a2-alph2| < …)” statement, a2 should be checked to see if it is within 1e-8 of 0 or C. If so, then a2 should be set to the nearest bound. This prevents round-off error from mistakenly forcing a point to be a support vector. Richard Lippmann points out that this value of 1e-8 is appropriate when inputs have approximately unit variance. Therefore, it is a good idea to scale your inputs (or kernel outputs) so that they are on the order of unity.

--- John Platt