shogun-toolbox/shogun — pull request #991 by hushell (2013-04-19 23:46:49+00:00)
Title: multi-class probabilistic outputs for SVM

Implemented 2 heuristics for multi-class probabilistic outputs described in [1], specifically, Eq.(6) and Eq.(14).

I added a member variable m_prob_output_supported in CMachine, which indicates that if the output values are probabilities. When the trained machine applying to features, e.g. CMulticlassMachine::apply_multiclass(), if probabilities are desired, it calls CBinaryLabels::scores_to_probabilities(), i.e. Platt's rescaling for binary classifiers. The heuristics can be found in CMulticlassStrategy.

[1] Jonathan Milgram et al. "One Against One" or "One Against All": Which One is Better for Handwriting Recognition with SVMs? http://hal.archives-ouvertes.fr/docs/00/10/39/55/PDF/cr102875872670.pdf