On 2012-02-16, at 2:03 AM, Mathieu Blondel <[email protected]> wrote:

>> Well, it's a tradeoff: a good reimplementation that would approach the
>> original in terms of performance is a lot of work. For it to be
>> sustainable, the team would have to grow a fair amount.
> 
> It is a lot of work but the bindings have caused us lots of problems
> so far (memory leaks, sign switched etc). I would also like to point
> out that the wrapper for the cross-validation in libsvm probably
> doesn't work.
> 
> In the long term, we should aim for a Cython port of libsvm and
> liblinear. Being able to work directly on the native ndarray is
> invaluable and with the forthcoming fused types in Cython, we would be
> able to use arbitrary dtype. David mentioned that it would make a good
> GSOC. A good programmer should be able to translate the code fairly
> easily, even without much SVM knowledge.
> 
> liblinear and libsvm have been patched in scikit-learn and I believe
> it would be hard to keep the libraries up-to-date.

I would stress that such an implementation would have to be extremely well 
tested and checked against libsvm/liblinear in all of the relevant cases 
(obviously, can't check against a float32 case if liblinear doesn't support 
float32, etc.)

Moving away from wrappers has one social disadvantage: street cred. NumPy and 
SciPy linear algebra routines are trusted because they are, in most cases, 
wrappers around battle-hardened Fortran routines that are as old as the hills. 
libsvm and liblinear have reputations that a hypothetical reimplementation 
effort does not. While SKL is accumulating quite a positive reputation, a flaky 
SVM rewrite would be a quick way to undo that.

David
------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Scikit-learn-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

Reply via email to