# Increase F1 score on a text corpus

I'm doing some classification with a text corpus [professional emails], I've already done all the basic pre processing steps (stemming, remove stop words, punctuation, low frequency words, words length ...) which gives me a F1-score = 0.6.

I was wondering what could be the next step(s) to improve my results, I thought of "stacking" (use multiple classifiers) and maybe removing words which are common to the different classes (4 differents types of texts) [ not sure about this solution ]

Edit:

I tried with 15 differents classifier the best one is gradient boosting (gbm )with an F1-score=0.6002159. The features have been extracted through a bag of words ( Document Term Matrix ) with Tf-Idf [I don't think taking into account the length of a text, punctuation or others is relevant] - [It is mainly professional emails]

• Can you provide more details - how do you extract features from the text, what classifier are you using,..? – stmax Jun 28 '16 at 13:51
• F1 score punishes false negatives and false positives equally. So, if your classes are not uniformly distributed, you should train with equalizing weights. In sklearn, this would mean using class_weight=balanced for whatever model you are using. – Ricardo Cruz Jun 30 '16 at 16:53
• I am curious about what are the labels of the classification. More problem specific solution might be proposed if the problem is fully described. – William Jul 1 '16 at 19:46
• The labels are basically two things: "Requests" and "Incident" about some softwares – bouritosse Jul 4 '16 at 8:00