I have a classification problem (bioinformatics domain) where I have around 333 features. Currently, I am first selecting features (using importance feature of random forest) and then pushing the same through RBF kernel for SVM. On the results front, I have section of data which gives bad results on the classifier. There is feature rscindex, which separates the data into well classified data and incorrectly classified data,i.e data points with rscindex < 0.8 are performingly badly during classification stage. Please give me ideas on how to improve my results on this badly performing section of data. Will using Fisher kernel help (if so is there a library I can use) or is there a sampling technique that I should be looking into.? Please help. Thanks

  • $\begingroup$ How large is your training dataset in number of samples? The ratio of #samples/#features can help on deciding if a non-linear kernel is needed, and if feature selection makes any sense at all. $\endgroup$ – iliasfl Jun 19 '14 at 11:48
  • $\begingroup$ @iliasfl My positive set is around 2000 and negative set is around 3000. I have reduced the number of features to less than 100 using feature selection. $\endgroup$ – priyanka Jun 19 '14 at 15:28
  • $\begingroup$ Not sure if it matters with the number of data examples that you have, but you may need to use a weight parameter in your SVM to correct for imbalanced classes. How bad is the performance actually and what do you mean with "a section" of your data? $\endgroup$ – Ruthger Righart Jun 6 '15 at 11:10

Two suggestions:

  1. make sure your parameters are properly tuned (in the case of SVM you will probably have $C$ and $\gamma$ for the kernel)
  2. try without feature selection (SVM is fairly robust to useless features anyway).
| cite | improve this answer | |
  • $\begingroup$ I tried using SVM without feature selection. the performance degrades without it. $\endgroup$ – priyanka Jun 15 '14 at 16:24
  • 2
    $\begingroup$ To use SVM without feature selection, it is vital to tune the kernel and regularisation parameters very carefully (I use leave-one-out cross-validation and LS-SVMs and have generally found feature selection makes things worse for almost all of the problems I have looked at). Also try a linear SVM first, rather than an RBF SVM, many problems with many features are best classified by a linear classifier (even if the underlying problem is non-linear, because of the difficulty in tuning the kernel) $\endgroup$ – Dikran Marsupial Jun 17 '14 at 17:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.