Dear all, Thanks to Mathieu Fauvel, we have identified an issue with the SVM implementation provided by OpenCV.
As a reminder, OTB offers access to OpenCV's machine learning module which provides, among other classifiers, SVM. OTB also provides an SVM machine learning model which uses libSVM. OpenCV and libSVM yield different classification results. In the case of the RBF kernel, the results are statistically equivalent (differences in Overal Accuracy are not significant). However, in the case of the linear kernel, OpenCV's implementation has lower performances which can be up to 20% lower in terms of Overall Accuracy with respect to libSVM's implementation. We have not checked what happens with other kernels. Example using hyperspectral data provided by Mathieu using 500 training samples and 5000 validation samples and 18 random repetitions : | version | OA avg | OA std | |---------------+---------+---------| | libsvm RBF | 0.94584 | 0.00149 | | OpenCV RBF | 0.94342 | 0.00219 | | libsvm linear | 0.89899 | 0.00197 | | OpenCV linear | 0.66548 | 0.07612 | Having discussed informally with Julien, I think that the following actions should be taken (just a proposal, of course) : 1. Document this issue in the otbSVMMachineLearningModel. 2. Remove the linear kernel option for the TrainImagesClassifier in the OpenCV case (-classifier.svm.k) so that only classifier.libsvm.k can be used for linear kernels. What do you think? Jordi -- -- Check the OTB FAQ at http://www.orfeo-toolbox.org/FAQ.html You received this message because you are subscribed to the Google Groups "otb-users" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/otb-users?hl=en --- You received this message because you are subscribed to the Google Groups "otb-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
