Algoritmo semantico NLP per riconoscere il sarcasmo e l'ironia

Uno dei principali problemi del processo NLP ( Natural Language Processing ) è il riconoscimento semantico di una frase sarcastica o ironica.

Il sarcasmo e l'ironia sono forme di comunicazione retoriche molto sottili e complesse da riconoscere. A volte nemmeno gli esseri umani ci riescono, figuriamoci per un algoritmo informatico che interpreta il linguaggio naturale.

Qual è la differenza tra sarcasmo e ironia?

Nel linguaggio comune i due termini sono usati come sinonimi, in realtà si tratta di cose diverse.

Nell'ironia viene stravolto il significato letterale delle parole ( es. "ma che bravo!" ) e può essere anche bonaria. Una persona trasmette all'altra un messaggio con un significato completamente opposto rispetto a quello che si avrebbe tramite una lettura letterale della frase.

esempio di frase ironica

Nel sarcasmo, invece, si usa il significato esatto dei termini per fare un'affermazione beffarda e crudele ( es. dire a una persona palesemente brutta "sei più bella che intelligente" ). Si utilizza un presupposto noto a tutti ( "sei brutta" ) per far assumere al messaggio un significato sottinteso, pungente, umiliante o offensivo ( "sei stupida" ).

esempio di frase sarcastica

In entrambi i casi, comunque, il significato letterale della frase diverge dal significato semantico. Quest'ultimo aspetto accomuna sia l'ironia che il sarcasmo.

Come riconoscere l'ironia e il sarcasmo?

Secondo alcune tecniche la frase sarcastica o ironica potrebbe essere riconosciuta dalla presenza di alcuni elementi linguistici. In particolar modo gli elementi rafforzativi ( es. moltissimo, tantissimo, punto interrogativo, ecc. ) Tuttavia, non è una strada efficace.

Esempio. L'affermazione "ma che bravo!" potrebbe essere ironica. D'altra parte, potrebbe anche non esserlo.

Secondo un'altra tecnica, invece, il sarcasmo e l'ironia possono essere riconosciute tramite la contestualizzazione della frase nel processo di comunicazione.

esempio di analisi del contesto

In altri termini, per capirlo è necessario analizzare il contesto, la situazione in cui si trovano gli interlocutori e i messaggi scambiati precedentemente. Soltanto così si può capire il senso logico di un'affermazione e riconoscere il sarcasmo e l'ironia tramite la contraddizione.

Esempio. Se X sta parcheggiando e urta l'automobile di Y, Y afferma "ma che bravo!". E' una contraddizione logica poiché X ha danneggiato Y. E' quindi evidente che il messaggio di Y è ironico.

La contestualizzazione del messaggio conduce a un'interpretazione migliore, più sensata e vicina al significato semantico del messaggio.

In conclusione, per riconoscere l'ironia e il sarcasmo un algoritmo dovrebbe raccogliere più informazioni possibili sul contesto ed effettuare deduzioni logiche su ciò che è vero o falso, su ciò che è utile o dannoso, per gli interlocutori coinvolti nel processo di comunicazione.

Nota. La contestualizzazione è utile anche per comprendere le forme di comunicazioni gestuali e corporali, il cui messaggio potrebbe divergere da quello letterale delle parole.

I limiti della contestualizzazione

Un limite del proceso di contestualizzazione sono i messaggi one-shot. Ad esempio, un commento scritto sotto un articolo. Non essendoci una storia, non si può analizzare il processo di comunicazione.

In questi casi, è più efficace l'utilizzo di una tecnica empirica basata su un calcolo statistico-probabilistico che associa le varie espressioni idiomatiche a un intento positivo o negativo.

Esempio. Se nella lingua comune l'espressione "ma che bravo!" è utilizzata nel 80% dei casi studiati in forma ironica, l'algoritmo associa automaticamente questo segmento lessicale all'ironia, ossia al significato letterale "non sei bravo".

Essendo un campo ad elevato rischio e incertezza di analisi, è preferbile ricorrere alle variabili fuzzy.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base