LFD Book Forum  

Go Back   LFD Book Forum > Course Discussions > Online LFD course > Homework 8

Reply
 
Thread Tools Display Modes
  #1  
Old 09-02-2012, 10:50 AM
Willem Willem is offline
Member
 
Join Date: Jun 2012
Posts: 22
Default Why is CVXOPT slower than LIBSVM?

libsvm runs all problems in a few seconds or less, while cvxopt takes quite a bit longer. I wonder what's the reason for this, since using cvxopt is quite a basic routine and optimized for quadratic programming. The only reason I can think of is that for SVMs many solutions are equal to 0 and somehow this is built into the libsvm solver since it's targeted for SVMs. Does anybody know if this is the case or are there other tricks too? Thanks!
Reply With Quote
  #2  
Old 09-02-2012, 11:12 AM
fgpancorbo fgpancorbo is offline
Senior Member
 
Join Date: Jul 2012
Posts: 104
Default Re: Why is CVXOPT slower than LIBSVM?

I have never used CVXOPT but libsvm implements this algorithm http://en.wikipedia.org/wiki/Sequent...l_optimization which is specific to the type of quadratic programming that is used in SVM.
Reply With Quote
  #3  
Old 09-02-2012, 04:00 PM
htlin's Avatar
htlin htlin is offline
NTU
 
Join Date: Aug 2009
Location: Taipei, Taiwan
Posts: 601
Default Re: Why is CVXOPT slower than LIBSVM?

Quote:
Originally Posted by Willem View Post
libsvm runs all problems in a few seconds or less, while cvxopt takes quite a bit longer. I wonder what's the reason for this, since using cvxopt is quite a basic routine and optimized for quadratic programming. The only reason I can think of is that for SVMs many solutions are equal to 0 and somehow this is built into the libsvm solver since it's targeted for SVMs. Does anybody know if this is the case or are there other tricks too? Thanks!
Designing efficient SVM solvers has been an important and non-trivial research problem after SVM has been proposed. Modern, specific purpose SVM-solvers carefully takes into account the special optimization and machine learning properties of the formulation. For instance, the "sparsity" (not too many support vectors) is one thing often used to shrink the optimization problem, the "simplicity" (only one equality constraint in the dual problem and other constraints are "box" constraints) is another, the fact that the kernel matrix can be computed online when needed instead of offline is yet another. Hope this helps.
__________________
When one teaches, two learn.
Reply With Quote
Reply

Tags
cvxopt, libsvm, quadratic, svm

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 11:47 PM.


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
The contents of this forum are to be used ONLY by readers of the Learning From Data book by Yaser S. Abu-Mostafa, Malik Magdon-Ismail, and Hsuan-Tien Lin, and participants in the Learning From Data MOOC by Yaser S. Abu-Mostafa. No part of these contents is to be communicated or made accessible to ANY other person or entity.