Skip to main content

A python package for sentiment analysis and emotion recognition in italian

Project description

FEEL-IT: Emotion and Sentiment Classification for the Italian Language

https://img.shields.io/pypi/v/feel_it.svg https://github.com/MilaNLProc/feel-it/workflows/Python%20package/badge.svg License Colab Tutorial Medium Blog Post

Abstract

Sentiment analysis is a common task to understand people’s reactions online. Still, we often need more nuanced information: is the post negative because the user is angry or because they are sad?

An abundance of approaches has been introduced for tackling both tasks. However, at least for Italian, they all treat only one of the tasks at a time. We introduce FEEL-IT, a novel benchmark corpus of Italian Twitter posts annotated with four basic emotions: anger, fear, joy, sadness. By collapsing them, we can also do sentiment analysis. We evaluate our corpus on benchmark datasets for both emotion and sentiment classification, obtaining competitive results.

We release an open-source Python library, so researchers can use a model trained on FEEL-IT for inferring both sentiments and emotions from Italian text.

License

Code comes from HuggingFace and thus our License is an MIT license.

For models restrictions may apply on the data (which are derived from existing datasets) or Twitter (main data source). We refer users to the original licenses accompanying each dataset and Twitter regulations.

Data Access

Send us an email :)

Features

  • Emotion Classification (fear, joy, sadness, anger) in Italian

  • Sentiment Classification (positive, negative) in Italian

Installing

pip install -U feel-it

Jump start Tutorials

Name

Link

Sentiment and Emotion Classification (stable v1.0.2)

Colab Tutorial

How To Use

The two classifiers are very easy to use. You can also directly use our colab tutorial!

from feel_it import EmotionClassifier, SentimentClassifier

emotion_classifier = EmotionClassifier()

emotion_classifier.predict(["sono molto felice", "ma che cazzo vuoi", "sono molto triste"])
>> ['joy', 'anger', 'sadness']

sentiment_classifier = SentimentClassifier()

sentiment_classifier.predict(["sono molto felice", "ma che cazzo vuoi", "sono molto triste"])
>> ['positive', 'negative', 'negative']

Citation

Please use the following bibtex entry if you use this model in your project:

@inproceedings{bianchi2021feel,
  title = {{"FEEL-IT: Emotion and Sentiment Classification for the Italian Language"}},
  author = "Bianchi, Federico and Nozza, Debora and Hovy, Dirk",
  booktitle = "Proceedings of the 11th Workshop on Computational Approaches to Subjectivity, Sentiment and Social Media Analysis",
  year = "2021",
  publisher = "Association for Computational Linguistics",
}

HuggingFace Models

You can find our HF Models here:

Name

Link

MilaNLProc/feel-it-italian-emotion

Emotion Model

MilaNLProc/feel-it-italian-sentiment

Sentiment Model

Development Team

Note

Remember that this is a research tool :)

Other Resources

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

1.0.3 (2021-03-18)

  • Release with starting documentation

0.1.0 (2021-03-17)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

feel_it-1.0.5.tar.gz (13.7 kB view hashes)

Uploaded Source

Built Distribution

feel_it-1.0.5-py2.py3-none-any.whl (6.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page