11.07.2015 Views

A Tutorial on Support Vector Machines for Pattern Recognition

A Tutorial on Support Vector Machines for Pattern Recognition

A Tutorial on Support Vector Machines for Pattern Recognition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

25We also use a \sticky faces" algorithm: whenever a given face is hit more than <strong>on</strong>ce,the search directi<strong>on</strong>s are adjusted so that all subsequent searches are d<strong>on</strong>e within thatface. All \sticky faces" are reset (made \n<strong>on</strong>-sticky") when the rate of increase of theobjective functi<strong>on</strong> falls below a threshold.The algorithm stops when the fracti<strong>on</strong>al rate of increase of the objective functi<strong>on</strong> F fallsbelow a tolerance (typically 1e-10, <strong>for</strong> double precisi<strong>on</strong>). Note that <strong>on</strong>e can also useas stopping criteri<strong>on</strong> the c<strong>on</strong>diti<strong>on</strong> that the size of the projected search directi<strong>on</strong> fallsbelow a threshold. However, this criteri<strong>on</strong> does not handle scaling well.In my opini<strong>on</strong> the hardest thing to get right is handling precisi<strong>on</strong> problems correctlyeverywhere. If this is not d<strong>on</strong>e, the algorithm may not c<strong>on</strong>verge, or may bemuch slowerthan it needs to be.Agoodway tocheck thatyour algorithm is working is to check that the soluti<strong>on</strong> satisesall the Karush-Kuhn-Tucker c<strong>on</strong>diti<strong>on</strong>s <strong>for</strong> the primal problem, since these are necessaryand sucient c<strong>on</strong>diti<strong>on</strong>s that the soluti<strong>on</strong> be optimal. The KKT c<strong>on</strong>diti<strong>on</strong>s are Eqs. (48)through (56), with dot products between data vectors replaced by kernels wherever theyappear (note w must be expanded as in Eq. (48) rst, since w is not in general the mappingof a point in L). Thus to check the KKT c<strong>on</strong>diti<strong>on</strong>s, it is sucient to check that the i satisfy 0 i C, that the equality c<strong>on</strong>straint (49)holds, that all points <strong>for</strong> which0 i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!