Search code examples
matlabmachine-learninglibsvm

Support Vector Machine vs K Nearest Neighbours


I have a data set to classify.By using KNN algo i am getting an accuracy of 90% but whereas by using SVM i just able to get over 70%. Is SVM not better than KNN. I know this might be stupid to ask but, what are the parameters for SVM which will give nearly approximate results as KNN algo. I am using libsvm package on matlab R2008


Solution

  • kNN and SVM represent different approaches to learning. Each approach implies different model for the underlying data.

    SVM assumes there exist a hyper-plane seperating the data points (quite a restrictive assumption), while kNN attempts to approximate the underlying distribution of the data in a non-parametric fashion (crude approximation of parsen-window estimator).

    You'll have to look at the specifics of your scenario to make a better decision as to what algorithm and configuration are best used.