Concerning sentiment analysis, machine learning techniques makes it more convenient. Naive Bayes is undoubtedly one of the simplest classifiers in supervised machine learning due to the simple mathematics involved and its easy coding feature with programming language.
In our lecture, we already knew that Naive Bayes classifier is a simple probabilistic classifier which is based on Bayes theorem with strong and naive independence assumptions. It is a common word classification technique which is widely applied in filtering spam email or sexual contents, categorizing specific documents or pieces of text, even identifying sentiment of the writer.
Photo from : http://machinelearningmastery.com/naive-bayes-classifier-scratch-python/ (Photo by Matt Buck, some rights reserved )
But Naive Bayes is often criticised for its oversimplified assumption for its calculation that probability of each attribute belonging to a given class value is independent of all other attributes. You can say its independence assumption is its weakness, but without this assumption, it is not possible for us to obtain a fast and effective result. It is also worthy noting that it is often used as a baseline in many researches due to its outstanding performance in some cases.
Again, no single solution can solve all problems. Whether the result is good or not, it depends on whether we use a suitable algorithm to solve the particular problem and how we use the technique involved to solve more problems as every method has its strength and limitations. Especially when we only have limited memory or CPU, efficiency of Bayes Classifier makes itself an excellent choice. In Naive Bayes Classifier only need a short period of time to do the machine training to obtain the result. As a result, it is very handy. Do you have any opinions towards this controversial algorithm? Do you think Naive Bayes Classifier outperform other algorithms?
Reference:
- Prof. Rosanna Y.-Y. Chan(May 2017). Week Seven (1): Social Media Analytics: Sentiment Analysis [Powerpoint Slides]. Retrieved from : https://elearn.cuhk.edu.hk/bbcswebdav/pid-1981443-dt-content-rid-5769767_1/courses/2016R2-IERG3320/IERG3320_2016-17%20Term%202_Week7-1-updated_1March.pdf
- Vasilis Vryniotis(Oct 2013). Machine Learning Tutorial: The Naive Bayes Text Classifier. Retrieved from: http://blog.datumbox.com/machine-learning-tutorial-the-naive-bayes-text-classifier/
- Sebastian Raschka(Oct 2014). Naive Bayes and Text Classification.Retrieved from:
http://sebastianraschka.com/Articles/2014_naive_bayes_1.html - Sunil Ray(Sep 2015). 6 Easy Steps to Learn Naive Bayes Algorithm (with code in Python). Retrieved from: https://www.analyticsvidhya.com/blog/2015/09/naive-bayes-explained/