Good Job. The results look good. Can you share your train and test set size. Also did you consider using a Keras + word embedding based classifier. If yes, why did you chose this over that?
PS: Also, to simply extract terms from a sentence or replace terms inside sentences I have written a simple module called FlashText. https://medium.com/@vi3k6i5/search-millions-of-documents-for-thousands-of-keywords-in-a-flash-b39e5d1e126a