I have a dataset consisting of 181 samples(classes are not balanced there are 41 data points with 1 label and rest 140 are with label 0) and 10 features and one target variable. The 10 features are numeric and continuous in nature. I have to perform binary classification. I have done the following work:-
I have performed 3 Fold cross validation and got following accuracy results using various models:- LinearSVC: 0.873 DecisionTreeClassifier: 0.840 Gaussian Naive Bayes: 0.845 Logistic Regression: 0.867 Gradient Boosting Classifier 0.867 Support vector classifier rbf: 0.818 Random forest: 0.867 K-nearest-neighbors: 0.823
Please guide me how could I choose the best model for this size of dataset and make sure my model is not overfitting ? I am thinking of applying random under sampling to handle the unbalanced data.