• Non ci sono risultati.

Alcune considerazioni vanno fatte a proposito del task Irony Detection, che ha dimostrato di essere di notevole difficoltà. Persino il sistema migliore, presentato dal team Tweet2Check (F-score pari a 0.5412), ha ottenuto una recall molto bassa (0.1710); per quanto riguarda il secondo miglior sistema (a regole) presentato dal team CoMoDi si può fare un discorso analogo, in quanto le due performance sono molto simili.

La difficoltà del task potrebbe essere dovuta, oltre che alla sua complessità intrinseca, al fatto che la distribuzione delle classi nel development set era nettamente sbilanciata: solo un record su sette era classificato come ironico. Inoltre, va notato che, in confronto con SENTIPOLC 2014, le performance nel task relativo all’ironia hanno avuto un calo significativo. Ciò potrebbe essere spiegato dal fatto che, differentemente rispetto all’edizione 2014, in SENTIPOLC 2016 il topic del test-set era diverso da quello del training-set, e che probabilmente i sistemi, più che modellare l’ironia, hanno modellato il topic. È quindi probabile che il numero di esempi presenti nel training set non sia sufficiente per avere una buona generalizzazione sulla struttura dei tweet ironici.

Capitolo 5

Risorse linguistiche, feature e

metodologie sperimentali

In questo capitolo verranno descritti:

1. la preparazione delle risorse linguistiche;

2. la selezione delle caratteristiche linguistiche (di parola, delle emoticon, lessicali e semantico-distribuzionali) utilizzate per creare i modelli di classificazione;

3. la metodologia sperimentale.

5.1

Preparazione delle risorse linguistiche

Nella fase di preprocessing sono state svolte le seguenti operazioni: • raccolta dei dati da Twitter;

• pulizia del corpus Paisà e tokenizzazione dei due corpora; • creazione degli embedding delle parole.

5.1.1

Raccolta dei dati da Twitter

Il corpus di testi di Twitter è stato costruito nell’arco di alcuni mesi mediante l’uso dell’API di streaming fornita dal sito social, mediante la quale è possi- bile scaricare i tweet in tempo reale, quando vengono pubblicati sul sito. In particolare, si è scelto di scaricare i tweet relativi ai primi 10 trend del mo- mento su Twitter; la lista dei trend era fornita dall’API e veniva aggiornata una volta ogni ora.

Il risultato di tale processo è un corpus di grandi dimensioni, composto da quasi 70 milioni di tweet e più di un miliardo e 200 milioni di token, il quale è stato sottoposto a un processo di normalizzazione: gli hashtag sono stati sostituiti dalla stringa "_TAG_", le url dalla stringa "_URL_" e le mention dalla stringa "_USER_" seguendo l’approccio descritto da Basile et al. (2014). Il corpus così ottenuto è stato battezzato con il nome Tweets.

5.1.2

Pulizia del corpus Paisà e tokenizzazione dei due

corpora

Dal corpus Paisà – in formato xml – sono stati rimossi i tag ed i commenti, e si è proceduto quindi con la tokenizzazione dei due corpora. A questo scopo è stato usato il tokenizzatore TweetTokenizer fornito dalla suite NLTK, che è stato integrato con alcune regole per la gestione di alcune caratteristiche morfologiche dell’italiano, non riconosciute dal tokenizzatore essendo esso disponibile solo per la lingua inglese.

5.1.2.1 Descrizione del corpus Paisà

Paisà è un corpus costituito da una raccolta di testi in lingua italiana rac- colti sul web, che è stato sviluppato all’interno del progetto omonimo, con lo scopo di creare una risorsa esaustiva e di facile accesso per la didattica della lingua e della cultura italiana. Il corpus è stato costruito in modo da soddisfare alcuni requisiti: essere liberamente accessibile e riutilizzabile, ave-

re una copertura ampia che andasse dal linguaggio quotidiano a contenuti culturali ed essere arricchito da informazione linguistica aggiunta mediante annotazione automatica.

Il corpus contiene circa 388000 documenti (tutti pubblicati con licenza Creative Commons e risalenti ai mesi di settembre e ottobre 2010) prove- nienti da 1067 siti web, per un totale di 250 milioni di token. La parte più consistente (circa 269000 testi) è stata ricavata da testi facenti parte dei progetti di Wikimedia Foundation; la rimanente parte (119000 documenti) è stata raccolta mediante l’API di ricerca di Yahoo! da altre fonti, tra cui le pagine web guide.supereva.it e italy.indymedia.org e vari blog. Il corpus è stato arricchito di informazioni linguistiche mediante:

• lemmatizzazione;

• annotazione morfosintattica, effettuata con il Part-Of-Speech tagger descritto da Dell’Orletta (2009);

• annotazione sintattica, effettuata con il parser DeSR descritto da At- tardi et al. (2009).

Inoltre, esso è stato annotato con informazioni sulla complessità e sulla leggi- bilità del testo in questione. Per ogni documento vengono indicati i seguenti metadati:

• il numero di token contenuti; • il numero di frasi contenute; • la type-token ratio;

• il numero di parole contenute non facenti parte del vocabolario di base dell’italiano;

5.1.3

Creazione dei modelli distribuzionali

Per l’addestramento sono stati usati, come input, i due corpora tokenizzati nel modo che si è descritto sopra. Tra i due corpora c’è una grossa spropor- zione per quanto riguarda il numero di token contenuti: quasi 270 milioni nel caso di Paisà, più di 1200 milioni nel caso del corpus Tweets; pertan- to abbiamo creato 14 corpora di dimensioni minori, ognuno contenente una porzione dei quest’ultimo corpus, in modo da creare altrettanti modelli distribuzionali, e poter così verificare in che misura la dimensione del corpus a partire da cui si creano gli embedding influisca sull’accuratezza ottenuta poi dal classificatore. Il corpus più piccolo è composto da circa 10 milio- ni di token (corrispondenti approssimativamente ai primi 580000 documenti dell’intero corpus); aggiungendo a tale prima porzione dieci milioni di token per volta, sono stati ottenuti ulteriori nove corpora (da 20 a 100 milioni di token). Abbiamo poi creato quattro corpora di dimensioni maggiori, conte- nenti rispettivamente i primi 14, 28, 42 e 56 milioni di documenti contenuti nel corpus originale, in modo che ciascuno di essi fosse grosso modo, rispet- tivamente, 1/5, 2/5, 3/5 e 4/5 dell’intero corpus (rispettivamente circa 240, 480, 720 e 960 milioni di token); in questo modo abbiamo ottenuto una por- zione del corpus, quella corrispondente a 1/5 (240 milioni di token), che fosse paragonabile alle dimensioni di Paisà (quasi 270 milioni).

Effettuate queste operazioni, si è proceduto all’addestramento dei modelli distribuzionali. Per ciascuna delle due metodologie utilizzate (Word2Vec e FastText) sono stati addestrati 16 modelli: 14 usando come input le parti- zioni in cui è stato diviso il corpus Tweets e due usando entrambi i corpora nella loro interezza.