I have training data of 1599 samples of 5 different classes with 20 features. I trained them using KNN, BNB, RF, SVM(different kernels and decission functions) used Randomsearchcv with 5 folds cv.
I get trainng accuracy not more than 60% Even the test accuracy is almost same. I used class_weights as 2 classes has more samples than others . I used PCA which reduced my feature size to 12 with 95% data covering. None helped in increasing accuracy of SVM and RF classifiers.
Can anyone suggest me any other different ways to improve accuracy or Fscore for my training data?