The project was developed with Pouria Faraji and Niloofar Yousefi for the “Human Language Technologies” course at University of Pisa.

Classical sentiment analysis tasks aim to label a sentence as positive or negative. The project goes one step further trying to identify which parts of the sentence (that in our case are tweets) contribute in labeling it as neutral, positive or negative. To perform this job, we used a model composed of three layers. The first layer is a BERT transformer while the third layer is a Neural Network. The second layer has been tested with three possibilities: GRU, CNN and GRU + CNN.

We compared the models pointing out the best one. There is not a model which outperforms the others, however the model composed by BERT, GRU and NN is the one which obtained the best outcomes.

The project idea comes from the kaggle competition “Twitter Sentiment Extraction”.

 


The project was developed for the course “Human Language Technologies” in my Digital Humanities Master at University of Pisa with Pouria Faraji and Niloofar Yousefi.

View paper ENGLISH: pdf

Project: GitHub repository