# Cross validation accuracy is the same as the fraction of negative labels - what does it mean?

I have a dataset for classification (binary - 1/0) that has around 4000 samples that I use to train the model (I'm using an SVM, if that's relevant). To check whether everything is working fine, I cross validate 5 folds. But I'm noticing that the cross validation accuracy that I get is the exact same fraction of the 0 labels in the set.

For instance, when I pick the last 800 samples for testing and train on the first 3200 samples, the accuracy of prediction on the last 800 samples is the exact same number as the fraction of samples having label = 0 in those 800 data points. Does this mean that the classifier is not taking the features into consideration at all? Or is this completely normal behavior and I'm missing something?

• So basically what you're saying is that your SVM classifier is classifying all testing data-set as 0. Is your data-set balanced (#of 1s is approximately equals to #of 0s)? – Roronoa Zoro Sep 2 '12 at 20:28
• @RoronoaZoro I wouldn't call it balanced. Around 70% are 1s and the rest 0s. – Siddhant Sep 3 '12 at 19:40
• That's odd. I would imagine it's the other way around. So you're accuracy (# correctly classified / # all instances) would be really low then... Since you have more 1s... The bad thing about SVM is that there are many parameters to tweak, if you're using Libsvm library, you should play with the parameter -w (the weight)... Basically you increase the weight/penalty of classifying 1s as 0s. – Roronoa Zoro Sep 3 '12 at 20:04