We do three things to analyze the reviews. But before I expand on those three things, I want to let you know that this area of natural language processing is an actively researched topic and we are constantly expanding our understanding and algorithms based on what we learn both externally and internally from our eco-system.
  1. We extensively use a framework called http://www.nltk.org/ which has lot of research and built very sophisticated algorithms that does Natural Language Processing. Since it has been developed over a period of multiple years, its difficult to pin-point one algorithm. There are multiple algorithms in play here.
  2. Apart from using http://www.nltk.org/, we apply some restaurants reviews specific context to the reviews. We have built a huge database of restaurant reviews and applied our algorithms to classify sentiments. Post that we use https://www.mturk.com/mturk/welcome to test those sentiments. Based on that we identify the wrongly identified sentiments and understand what has gone wrong. Post that we tweak/ adjust our algorithms. And we continue to repeat this process over and over again to make tweaks to the algorithm.
  3. We also actively contribute to the above organization and so we are constantly improving on their algorithms. We benefit from it and the others who use them benefit from us. The biggest value add we we provide is the restaurants specific context to http://www.nltk.org/
The other way of putting it is that… there is no single algorithm we are using. We will never be able to. So, there are more than a few algorithms working together to classify the reviews into different sentiments – and its evolving.