I have a classification task that I'm currently getting really low accuracy metrics on (my highest accuracy score is about 20%). So far I've run 5 models: quadratic disc analysis, logistic regression, knn, random forest, and naive bayes (Gaussian but will try categorical soon). I've used GridSearchCV (10-folds) for all. My dataset has ~1500 data points with no more than 9 features.
My only dummy variable covered gender, and I've already left one option out to avoid the dummy trap. My other explanatory variable is age group, which I've encoded to preserve order. Finally, my dependent variable is actually a vector (using multioutput from sklearn) of binary target variables.
For more color on the dependent variable: the original feature was a question that allowed for 6 response choices but respondents could elect for multiple of them. I've essentially turned them into dummy variables (did not drop one of them) and turned them into a vector to predict using sklearn's multioutput tools.
Any idea where I can improve the model?