I am working on binary text classification using sklearn:
- The length of each sample is not high (~ 200-500 characters)
- I use TF-IDF to get important words as TfidfVectorizer(sublinear_tf=False, max_df=0.5, stop_words='english', max_features = 5000)
- SGDClassifier is used as: SGDClassifier(loss='hinge', alpha=.0001, n_iter=50, penalty="l2", shuffle=False , class_weight='auto')
The classifier shows good recall for both binary classes (~80%) but poor precision for class-1 (~40%). as in my application, precision is more important than recall I am wondering how can I improve precision even by slightly reducing recall? I don't obsess with SGDClassifier. Other classifiers are ok.