Sentiment or sentimental analysis?

In this blogpost we talk about some tests we did using the sentiment analysis capabilities of the Cortana Intelligence Machine learning module. For more info please visit the link the AzureML Gallery.

Sentiment analytics?

In sentiment analytics you give a machine a sentence and it returns a number back (percent). Close to 0% means this sentence is very negative in nature, close to 100% means the sentence is very positive. This can be interesting in the scenario where you let customers give feedback on your products or services. Instead of manually reading all comments you can feed them into the sentiment analytics algorithm. You can then spot trends and discover relations between products and their feedback.

The test…

We used the public version of the API, it can be found here. We did some tests in different languages, below the results of a rather negative phrase: “We are not happy with the service”, in different languages.

In French:


The same sentence, but rephrased a bit (in French):


In Dutch:


And in English:


We also performed some tests with larger texts to see how the algorithm would react:


Not bad! And what about a negative comment on the same sites and for the same article:


A good score again!


We did some random tests with typical phrases found in comments on a productreview site ( We saw that the sentiments where rather accurate. We can conclude that for bulk analysis this API can be very useful.

Of course the machine is not perfect, for example the sentence “this is not a bad product” receives a poor 14% score, even though the message is positive. Not that sentimental after all…

Part of the data scientist’s job is to optimize the algorithms to take into account these specific language issues.