[pymvpa] C and Nu SVM

Michael Hanke michael.hanke at gmail.com
Fri Feb 27 14:09:26 UTC 2009


Hi Susanne,

On Fri, Feb 27, 2009 at 02:30:00PM +0100, Susanne Greiner wrote:
> At the risk of doing a very obvious question again...
> 
> when using some SVM classifier of the most recent version of pyMVPA, 
> there is this new text displayed which is telling what the code has just 
> done (very comfortable). So one gets some information such as the total 
> number of Support Vectors and some of the main parameters straight away.
Well, that text is not new, but we try to reduce the libSVM output as
much as possible since it can get very annoying and PyMVPA tries to use
proper channels (i.e. verbosity-levels and selections) to make such
output conditional -- it should not have been visible in the first place
;-)


> What I don't get is why it displays a 'nu' value when doing 'C'-SVM and 
> a 'C' value when doing 'Nu'-SVM. As far as I know when doing 'C'-SVM the 
> primal problem does not contain any 'nu' and viceversa.
> So is the 'nu' displayed actually a 'C' or whatever information does it 
> contain? (See some sample output below)
Good catch!

It looks like the output really confuses nu and C, but not the values --
it just prints wrong labels for them. If you look at svm.cpp in the
sources you can see that solve_nu_svc() has "info("C = %f\n",1/r)" and
solve_c_svc() has "info("nu = %f\n" ..."

That bug is still present in the current LIBSVM upstream version 2.88
and I just filed a bug against the corresponding Debian package.


Thanks for reporting,

Michael


-- 
GPG key:  1024D/3144BE0F Michael Hanke
http://apsy.gse.uni-magdeburg.de/hanke
ICQ: 48230050



More information about the Pkg-ExpPsy-PyMVPA mailing list