I am trying to classify a data set
X of 2000 examples (rows) and 20 features (Columns) .
The class labels are 0 or 1. Out of 2000 examples, 98 are labelled as 1 and the rest are 0.
I am using MATLAB 2018 version.
I want to apply cross-validation using
HoldOut method and using 60/40 of the data
I am getting all predicted classes as
1 and accuracy of 98.1%. Eventhough the accuracy is so high, the predicted class labels are mostly incorrect.
Where am I going wrong? Is it because out of 2000 examples, only 98 are positive examples (labelled 1) and the remaining 0?
Is SVM not the proper choice for this kind of data?