Skip to content

Sentiment Analysis Italian Knowledge Model

The Sentiment Analysis Italian Knowledge Model (display name: Sentiment Analysis Italian v#) aims at categorizing documents written in Italian based on sentiment and emotion analysis. The model also also extracts potentially positive or negative terms.

Categorization

The category tree has a negative and a positive cluster (Emozioni negative and Emozioni positive).

1 Emozioni negative
    0100 Rabbia
        0101 Ira
        0102 Irritazione
        0103 Esasperazione
    0200 Apprensione
        0202 Ansia
        0203 Paura
        0204 Stress
        0205 Preoccupazione
    0300 Disagio
        0301 Disgusto
        0302 Insoddisfazione
        0303 Senso di colpa
        0304 Vergogna
        0305 Imbarazzo
        0306 Rimpianto 
        0307 Noia
    0400 Risentimento
        0401 Odio
        0402 Offesa
        0403 Gelosia
        0404 Invidia
    0500 Sconforto
        0501 Tristezza 
        0502 Tormento
        0503 Sofferenza
        0504 Delusione
        0505 Disillusione
        0506 Rassegnazione
    0600 Sorpresa
1.1 Emozioni positive
    0700 Appagamento
        0701 Felicità
        0702 Entusiasmo
        0703 Gioia
        0704 Divertimento
        0705 Benessere
        0706 Soddisfazione
        0707 Sollievo
    0800 Benevolenza
        0801 Interesse
        0802 Fiducia
        0803 Affetto
        0804 Amore
        0805 Passione
        0806 Empatia
        0807 Compassione
    0900 Sorpresa

A surprise (category Sorpresa) can be positive or negative, that's why the corresponding category is included in both clusters.

Extraction groups and classes

SENTIMENT_SCORE

The SENTIMENT_SCORE group includes sentiment polarity and score.

Class Description
polarità Sentiment polarity, possible values are positiva, negativa and neutra.
score Sentiment score.

Polarity and score are derived from categorization scores: the cumulative score of categories under the Emozioni negative cluster is subtracted from the cumulative score of categories under the Emozioni positive cluster. Polarity is neutral (polarità equal to neutra) when the score is between 0 and 2.

SENTIMENT_POS_INFO

The SENTIMENT_POS_INFO group extracts information about the elements of the text that contributed to positive sentiment.

Class Description
elemento_semantico_pos Term with positive connotation.
elemento_scatenante_pos Cause or object positive terms refer to.

SENTIMENT_NEG_INFO

The SENTIMENT_NEG_INFO group extracts information about the elements of the text that contributed to negative sentiment.

Class Description
elemento_semantico_neg Term with negative connotation.
elemento_scatenante_neg Cause or object negative terms refer to.

Output structure

The model output has the same structure as any other model and is affected by the functional properties of the workflow block.
The peculiar parts of the output are the result of categorization, that is the categories array, and the result of information extraction, that is the extractions array.

Example

Considering the input text:

Un evento eccezionale, eccelso, la mostra d'arte tenutasi al Museo Archeologico di Napoli ha attirato centinaia di turisti entusiasti che hanno contribuito a creare un'accesa giornata all'insegna della diffusione della cultura in un'alternanza di divertenti giochi a quiz a tema artistico.
Il direttore del Museo ha rilasciato in un'intervista esclusiva commenti inerenti alla sua soddisfazione in merito alla splendida organizzazione della giornata.
Un notevole interesse è stato mostrato da critici d'arte provenienti da tutto il Bel Paese, dichiarando in articoli di svariati quotidiani come questa splendira mostra sia da considerarsi un esempio d'amore assoluto per l'arte contemporanea.

the categorization output is like the following:

"categories": [
    {
        "frequency": 15.38,
        "hierarchy": [
            "Emozioni Positive",
            "Appagamento"
        ],
        "id": "0700",
        "label": "Appagamento",
        "namespace": "emotional_traits_italian",
        "positions": [],
        "score": 16,
        "winner": true
    },
    {
        "frequency": 5.76,
        "hierarchy": [
            "Emozioni Positive",
            "Appagamento",
            "Entusiasmo"
        ],
        "id": "0702",
        "label": "Entusiasmo",
        "namespace": "emotional_traits_italian",
        "positions": [
            {
                "end": 133,
                "start": 123
            }
        ],
        "score": 6,
        "winner": true
    },
    {
        "frequency": 5.76,
        "hierarchy": [
            "Emozioni Positive",
            "Appagamento",
            "Divertimento"
        ],
        "id": "0704",
        "label": "Divertimento",
        "namespace": "emotional_traits_italian",
        "positions": [
            {
                "end": 257,
                "start": 247
            },
            {
                "end": 273,
                "start": 272
            },
            {
                "end": 278,
                "start": 274
            }
        ],
        "score": 6,
        "winner": true
    },
    {
        "frequency": 3.83,
        "hierarchy": [
            "Emozioni Positive",
            "Appagamento",
            "Soddisfazione"
        ],
        "id": "0706",
        "label": "Soddisfazione",
        "namespace": "emotional_traits_italian",
        "positions": [
            {
                "end": 394,
                "start": 381
            }
        ],
        "score": 4,
        "winner": true
    },
    {
        "frequency": 9.6,
        "hierarchy": [
            "Emozioni Positive",
            "Benevolenza"
        ],
        "id": "0800",
        "label": "Benevolenza",
        "namespace": "emotional_traits_italian",
        "positions": [],
        "score": 10,
        "winner": true
    },
    {
        "frequency": 3.83,
        "hierarchy": [
            "Emozioni Positive",
            "Benevolenza",
            "Interesse"
        ],
        "id": "0801",
        "label": "Interesse",
        "namespace": "emotional_traits_italian",
        "positions": [
            {
                "end": 472,
                "start": 463
            }
        ],
        "score": 4,
        "winner": true
    },
    {
        "frequency": 5.76,
        "hierarchy": [
            "Emozioni Positive",
            "Benevolenza",
            "Passione"
        ],
        "id": "0805",
        "label": "Passione",
        "namespace": "emotional_traits_italian",
        "positions": [
            {
                "end": 657,
                "start": 652
            },
            {
                "end": 670,
                "start": 667
            },
            {
                "end": 691,
                "start": 673
            }
        ],
        "score": 6,
        "winner": true
    },
    {
        "frequency": 0,
        "hierarchy": [
            "Emozioni Positive"
        ],
        "id": "1.1",
        "label": "Emozioni Positive",
        "namespace": "emotional_traits_italian",
        "positions": [],
        "score": 26,
        "winner": true
    }
]

and the extraction output is like this:

"extractions": [
    {
        "fields": [
            {
                "name": "elemento_scatenante_pos",
                "positions": [
                    {
                        "end": 691,
                        "score": 1,
                        "start": 673
                    }
                ],
                "score": 1,
                "value": "arte contemporanea"
            },
            {
                "name": "elemento_scatenante_pos",
                "positions": [
                    {
                        "end": 278,
                        "score": 1,
                        "start": 274
                    }
                ],
                "score": 1,
                "value": "tema"
            },
            {
                "name": "elemento_semantico_pos",
                "positions": [
                    {
                        "end": 657,
                        "score": 1,
                        "start": 652
                    },
                    {
                        "end": 670,
                        "score": 1,
                        "start": 667
                    }
                ],
                "score": 1,
                "value": "amore per"
            },
            {
                "name": "elemento_semantico_pos",
                "positions": [
                    {
                        "end": 257,
                        "score": 1,
                        "start": 247
                    }
                ],
                "score": 1,
                "value": "divertente"
            },
            {
                "name": "elemento_semantico_pos",
                "positions": [
                    {
                        "end": 133,
                        "score": 1,
                        "start": 123
                    }
                ],
                "score": 1,
                "value": "entusiasta"
            },
            {
                "name": "elemento_semantico_pos",
                "positions": [
                    {
                        "end": 394,
                        "score": 1,
                        "start": 381
                    }
                ],
                "score": 1,
                "value": "soddisfazione"
            },
            {
                "name": "elemento_semantico_pos",
                "positions": [
                    {
                        "end": 472,
                        "score": 1,
                        "start": 463
                    }
                ],
                "score": 1,
                "value": "interesse"
            }
        ],
        "namespace": "emotional_traits_italian",
        "template": "SENTIMENT_POS_INFO"
    },
    {
        "fields": [
            {
                "name": "score",
                "positions": [],
                "score": 1,
                "value": "26"
            }
        ],
        "namespace": "emotional_traits_italian",
        "template": "SENTIMENT_SCORE"
    },
    {
        "fields": [
            {
                "name": "polarita",
                "positions": [],
                "score": 1,
                "value": "positiva"
            }
        ],
        "namespace": "emotional_traits_italian",
        "template": "SENTIMENT_SCORE"
    }
]

The categorization score is equal to 26. Broader categories obtain the scores of narrower categories, obtained as follows:

  • Category Appagamento gets 16 points given by:
    • Entusiasmo (6)
    • Divertimento (6)
    • Soddisfazione (4)
  • Category Benevolenza gets 10 points given by:
    • Interesse (4)
    • Passione (6)

Both Benevolenza and Appagamento are children categories of Emozioni positive.