[scikit-learn] Fwd: inconsistency between libsvm and scikit-learn.svc results

olologin olologin at gmail.com
Sat Aug 27 05:49:26 EDT 2016


On 08/27/2016 12:33 PM, elgesto at gmail.com wrote:
>
> I have a project that is based on SVM algorithm implemented by libsvm 
> <https://www.csie.ntu.edu.tw/%7Ecjlin/libsvm/>. Recently I decided to 
> try several other classification algorithm, this is where scikit-learn 
> <http://scikit-learn.org/> comes to the picture.
>
> The connection to the scikit was pretty straightforward, it supports 
> libsvm format by |load_svmlight_file| routine. Ans it's svm 
> implementation is based on the same libsvm.
>
> When everything was done, I decided to the check the consistence of 
> the results by directly running libsvm and via scikit-learn, and the 
> results were different. Among 18 measures in learning curves, 7 were 
> different, and the difference is located at the small steps of the 
> learning curve. The libsvm results seems much more stable, but 
> scikit-learn results have some drastic fluctuation.
>
> The classifiers have exactly the same parameters of course. I tried to 
> check the version of libsvm in scikit-learn implementation, but I 
> din't find it, the only thing I found was libsvm.so file.
>
> Currently I am using libsvm 3.21 version, and scikit-learn 0.17.1 version.
>
> I wound appreciate any help in addressing this issue.
>
>
> |size libsvm scikit-learn 1 0.1336239435355727 0.1336239435355727 2 
> 0.08699516468193455 0.08699516468193455 3 0.32928301642777424 
> 0.2117238289550198 #different 4 0.2835688734876902 0.2835688734876902 
> 5 0.27846766962743097 0.26651875338163966 #different 6 
> 0.2853854654662907 0.18898048915599963 #different 7 
> 0.28196058132165136 0.28196058132165136 8 0.31473956032575623 
> 0.1958710201604552 #different 9 0.33588303670653136 0.2101641630182972 
> #different 10 0.4075242509025311 0.2997807499800962 #different 15 
> 0.4391771087975972 0.4391771087975972 20 0.3837789445609818 
> 0.2713167833345173 #different 25 0.4252154334940311 0.4252154334940311 
> 30 0.4256407777477492 0.4256407777477492 35 0.45314944605858387 
> 0.45314944605858387 40 0.4278633233755064 0.4278633233755064 45 
> 0.46174762022239796 0.46174762022239796 50 0.45370452524846866 
> 0.45370452524846866|
>
>
>
> _______________________________________________
> scikit-learn mailing list
> scikit-learn at python.org
> https://mail.python.org/mailman/listinfo/scikit-learn

This might be because current version of libsvm used in scikit is 3.10 
from 2011. With some patch imported from upstream.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scikit-learn/attachments/20160827/b9eb71d0/attachment.html>


More information about the scikit-learn mailing list