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
