Multilingual sentiment analysis of English, German, French and Italian texts. The machine learning model tries to predict whether the sentiment of a text is positive or negative.

The download includes the software and support via our ticket system.


The machine learning model was implemented with Keras and trained with 50’000 english, 30’000 german, 50’000 french and 30’000 italian film reviews. The models are tested with TensorFlow as backend.


The measured accuracy of the predictions is 88.6% for English, 81.3% for German, 84.4% for French and 81.6% for Italian.

The model consists of an embedding layer as input, a hidden layer with 8 LSTM units and an output layer with 1 unit. The maximum length of an input text is 400 words. For the word embedding the pre-trained word vectors of FacebookResearch were used.


The model was trained with film reviews in English, German, French and Italian. We also tested the model at random with product reviews and reader comments in those languages. The results were generally good. However, we recommend testing when using the models in new domains.

Several texts can be posted to the REST service at once for analysis. You can start the sentiment analysis service to access a Language Detection service. The service then first determines the language of the texts and then passes them on to the corresponding sentiment analysis model

Installation and Usage

For installation and usage of the software refer to the documentation on GitHub.


ipublia/sentiment-analysis is licensed under the

Apache License 2.0

A permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications, and larger works may be distributed under different terms and without source code.

The software is available free of charge and without premium support on Github.