Home Matlab multidimensional feature SVM
Reply: 0

Matlab multidimensional feature SVM

user1560 Published in May 21, 2018, 5:03 pm

I have a little problem with SVM classifier in Matlab. I have a 61200x59 matrix of features in which each row represent a set of features extracted from an image (all double values). All those features are associated with a 61200x1 matrix containing 2 labels: 0 and 1 (as double variables). Now I want to train a linear classifier and I've used the following function:

SVM_Model = fitcsvm(train_features, train_labels, 'KernelFunction', 'linear')

If I take a look to the details of this line I obtain this result:

SVM_Model = 
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: [0 1]
           ScoreTransform: 'none'
          NumObservations: 61200
                    Alpha: [40956×1 double]
                     Bias: 0.9998
         KernelParameters: [1×1 struct]
           BoxConstraints: [61200×1 double]
          ConvergenceInfo: [1×1 struct]
          IsSupportVector: [61200×1 logical]
                   Solver: 'SMO'

But when I call the predict function on test set ([label, score] = predict(SVM_Model, test_features(i, :));) it predicts always the label 1 (on over than 15000 test, so it seems a little bit suspicious) and on all the class 0 object I have a classification error. Can anyone tell me what can be the problem? Is necessary to rescale the features because SVM cannot handle high-dimensional points? Or another problem is present (like misconfiguration is SVM learning)?

You need to login account before you can post.

About| Privacy statement| Terms of Service| Advertising| Contact us| Help| Sitemap|
Processed in 0.372156 second(s) , Gzip On .

© 2016 Powered by mzan.com design MATCHINFO