Understanding Naive Bayes for Natural Language Processing (NLP)