DIPARTIMENTO DI
FILOLOGIA, LETTERATURA E LINGUISTICA
CORSO DI LAUREA IN
INFORMATICA UMANISTICA
TESI DI LAUREA
Complesso per l'uomo e per la macchina? Uno studio comparativo dei
fenomeni di complessità sintattica nei giudizi umani e nell'analisi
linguistica automatica.
CANDIDATO
RELATORE
Lorenzo De Mattei
Felice Dell'Orletta
CONTRORELATORE
Mirko Tavosanis
1 Introduzione 1 1.1 Articolazione dello studio . . . 2
2 La complessit`a linguistica 5 2.1 La complessit`a in linguistica . . . 6 2.1.1 Complessit`a nel sistema e complessit`a per l’utente . . . 7 2.1.2 Complessit`a nei vari livelli di descrizione della lingua . 9 2.1.3 Complessit`a sintattica . . . 12 2.2 Linguistica e analisi atuomatica . . . 18
2.2.1 Misurare l’affidabilit`a degli strumenti di analisi lingui-stica automatici . . . 19 2.2.2 Caratteristiche linguistiche ed errori nell’analisi
auto-matica . . . 21
3 Monitoraggio linguistico 25 3.1 Le tecnologie linguistico computazionali . . . 26 3.2 Monitoraggio linguistico: principi e metodi . . . 28 3.2.1 Parametri del monitoraggio linguistico . . . 30
3.3 Monitor-IT . . . 34
3.3.1 Universal Dependencies . . . 36
3.3.2 Caratteristiche linguistiche considerate . . . 38
4 Esperimenti 43 4.1 Preparazione degli esperimenti . . . 44
4.1.1 Misure statistiche adottate . . . 47
4.2 Esperimenti per l’uomo . . . 49
4.2.1 Esperimenti preliminari per definire la configurazione del sistema . . . 51
4.2.2 Esperimento sull’intero corpus . . . 56
4.3 Esperimenti per la macchina . . . 58
5 Analisi dei risultati 61 5.1 Risultati per l’uomo . . . 61
5.2 Risultati per la macchina . . . 67
5.3 Confronto uomo-macchina . . . 74
6 Conclusioni 83 A Documentazione codice 89 A.1 sentence sorting . . . 90
A.1.1 clean gold . . . 90
A.1.2 conll to raw . . . 91
A.1.3 corpus stats . . . 91
A.1.4 create dict . . . 92
A.1.6 sort sentences . . . 93
A.2 stats analysis . . . 95
A.2.1 compute las . . . 95
A.2.2 pearson correlation . . . 96
A.2.3 spearman correlation . . . 96
A.2.4 wilcoxon correlation . . . 96
A.2.5 krippendorff alpha . . . 96
A.2.6 compute krip . . . 98
A.2.7 filter outliers . . . 98
A.2.8 k-cross-split-corpus . . . 99
A.3 monitor it . . . 99
A.3.1 monitor it . . . 99
A.3.2 compute features . . . 103
B Dati 105 B.1 Lista delle abbrevviazioni delle caratteristiche linguisiche . . . 105
B.2 Correlazioni complessit`a - cartteristiche . . . 108
B.3 Correlazioni LAS DeSR Pos Gold - cartteristiche . . . 116
B.4 Correlazioni LAS DeSR Pos Auto - cartteristiche . . . 123
B.5 Correlazioni LAS MATE Pos Gold - cartteristiche . . . 131
Introduzione
Non prima di una settimana dalla consegna della presente tesi `e uscito un articolo sul Washington Post (Guo, 2016) dal titolo “Google’s new artificial intelligence can’t understand these sentences. Can you?”. In questo articolo ci si domanda se i sistemi di analisi sintattica automatici, in particolare il parser McParseface rilasciato da Google, abbiano di fatto raggiunto capacit`a comparabili a quelle degli umani. In effetti, dall’articolo pubblicato sul blog di Google (Petrov, 2016) in occasione del recentissimo rilascio in open source di McParseface, si si legge che questo strumento raggiunge un’accuratezza di analisi sintattica del 94% quando analizza testi giornalistici in lingua inglese. Questo dato `e stato confrontato con i risultati ottenuti da un gruppo di linguisti ai quali `e stato chiesto di svolgere lo stesso compito, i quali hanno raggiunto un livello di accordo del 96-97%. Questo fatto suggerisce che gli strumenti automatici sono vicini a raggiungere le performance umane, almeno nell’analisi di testi linguisticamente corretti.
In questo contesto pare sensato domandarsi se le difficolt`a di analisi
guistica per gli umani siano simili a quelle per le macchine. L’obbiettivo della presente trattazione `e quello di indagare il problema della complessit`a linguistica attraverso un’ottica comparativa: la domanda cruciale di questo studio `e “Cosa `e complesso per gli uomini e per la macchina?”. Si `e cer-cato pertanto di comprendere quali caratteristiche linguistiche, soprattutto sintattiche, rendano difficile o semplice il processamento del testo, studiando eventuali correlazioni tra l’analisi umana e quella automatica.
In letteratura esiste infatti una notevole quantit`a di studi sulla comples-sit`a linguistica per l’uomo e pi`u recentemente sono stati pubblicati studi sulla complessit`a linguistica per le macchine (es McDonald e Nivre, 2007; Dell’Orletta, Venturi e Montemagni, 2011; Gulordava e Merlo, 2015); tut-tavia solo nelle ultime settimane `e stato aperto un dibattito nella comunit`a scientifica che focalizza l’attenzione sul confronto uomo-macchina rispetto alla complessit`a di analisi linguistica.
1.1
Articolazione dello studio
A fronte di un approfondito studio della letteratura scientifica sulla comples-sit`a linguistica, presentato nel capitolo 2, `e stato deciso di sviluppare degli esperimenti per comprendere quali caratteristiche del testo rendano difficile o semplice la comprensione di una frase per gli umani e per le macchine.
Nel capitolo 3 verranno descritte le tecnologie di monitoraggio linguistico tramite le quali sono state estratte le caratteristiche linguistiche del testo prese in considerazione durante gli esperimenti svolti. Verr`a anche discussa la reimplementazione di Monitor-IT, lo strumento di monitoraggio
linguisti-co dell’ItaliaNLP Lab dell’Istituto di Linguistica Computazionale Antonio Zampolli (ILC-CNR), svolta nell’ambito di questo progetto.
Nel capitolo 4 verranno descritti tali esperimenti divisi per tre tipologie di obbiettivi:
• Analisi delle caratteristiche linguistiche che generano com-plessit`a per gli umani: per verificare quali sono le caratteristiche linguistiche che generano complessit`a per gli umani `e stata utilizzato una piattaforma di crowdsourcing1: CrowdFlower2. Utilizzando que-sto strumento `e stato chiesto a 20 annotatori umani di valutare quanto fossero complesse per loro le frasi selezionate in una scala da 1 a 7; ogni frase `e stata valutata da 20 annotatori. Una volta ottenute queste informazioni `e stato possibile stilare una classifica di complessit`a delle frasi prese in considerazione calcolando per ogni frase il livello medio di complessit`a per gli annotatori. Le stesse frasi sono state analizzate automaticamente con la nuova versione di Monitor-IT che ha permesso di estrarre un insieme di caratteristiche linguistiche rispetto alle quali `
e stata calcolata la correlazione con i punteggi umani.
• Analisi delle caratteristiche linguistiche che generano comples-sit`a per la macchina: per stabilire il grado di complessit`a di una frase per le macchine `e stato preso in considerazione l’accuratezza rispetto ad una metrica descritta nel capitolo 4 di due strumenti di analisi
linguisti-1Il crowdsourcing (da crowd, “folla”, e sourcing, da outsourcing, e cio`e esternalizzazione
aziendale) `e lo sviluppo collettivo di un progetto da parte di numerose persone esterne all’entit`a che ha ideato il progetto stesso.
ca automatica rispetto al gold standard. Per condurre gli esperimenti `e stato preso in considerazione un corpus di frasi annotate a mano a li-vello morfosintattico e sintattico (treebank). La treebank `e stata divisa in 10 parti, ogni parte `e stata usata come test-set eseguendo il training sulle 9 rimanenti. In tal modo `e stato possibile ottenere un’annotazio-ne automatica e un grado di precisioun’annotazio-ne per ogni frase. Le stesse frasi annotate dagli umani sono state quindi estratte ed `e stato possibile mi-surare la correlazione tra la precisione dell’analisi linguistica e le varie caratteristiche linguistiche.
• Confronto tra la complessit`a linguistica per gli umani e per la macchina: i risultati ottenuti dalle analisi svolte sono stati compa-rati e sono stati confrontati per cercare quali caratteristiche generano complessit`a sia per gli umani che per le macchine e quali sono peculiari per l’uno o per l’altro. Inoltre abbiamo ricercato se esiste una corre-lazione tra l’accuratezza dei sistemi di analisi automatica e il livello di complessit`a per gli umani. Con questo ultimo esperimento abbiamo tentato di rispondere alla domanda centrale di questo studio: “Ci`o che `e complesso per gli umani lo `e anche per le macchine?”.
Nel capitolo 5 saranno analizzati nel dettaglio i risultati degli esperimenti compiuti.
Tali esperimenti sono stati effettuati per la lingua italiana utilizzando frasi selezionate da una treebank gold standard annotata secondo il formato Universal Dependencies3.
La complessit`
a linguistica
Il concetto di complessit`a del linguaggio, da un punto di vista non lingui-stico, pu`o apparire come ben definito: spesso le persone tendono a valutare la chiarezza del proprio linguaggio sulla base delle regole della grammatica scolastica. Inoltre, si tende frequentemente a classificare le lingue straniere secondo gradi di complessit`a, generalmente basandosi su una certa idea di distanza dalla propria lingua madre.
All’interno della comunit`a scientifica, la definizione del concetto di com-plessit`a linguistica `e ancora oggi oggetto di discussione; risulta particolarmen-te difficile definire una nozione generale di complessit`a e per questo risulta pi`u efficace esaminare questo concetto sulla base dei diversi livelli della lingua.
In questo capitolo verr`a presentato questo argomento. Inoltre nella secon-da sezione verr`a introdotto il concetto di complessit`a linguistica in riferimento all’analisi automatica dei testi.
2.1
La complessit`
a in linguistica
Il dibattito riguardo alla definizione del concetto di complessit`a linguistica `e tuttora acceso, ma le prime riflessioni sul tema risalgono al XIX secolo, quando alcuni studiosi, ispirandosi alle categorizzazioni razziali dell’epoca, tentarono di stabilire una classificazione delle lingue, al fine di dimostrare che gli idiomi delle popolazioni sottomesse durante il colonialismo fossero meno evolute rispetto a quelli dei paesi dominanti. Intendendo la lingua come un organismo in costante evoluzione, si arriv`o a distinguere due classi linguistiche principali (Gallissot e altri, 2001):
• le lingue indoeuropee, corrispondenti alle lingue flessive, considerate superiori e pi`u evolute;
• le lingue non indoeuropee, tipiche dei paesi dominati, considerate dun-que primitive e meno evolute rispetto alle prime.
Fiorentino (2009) ci ricorda come all’idea di complessit`a linguistica ve-nisse correlata la complessit`a di pensiero: le lingue complesse, come quelle flessive, erano ritenute pi`u adatte all’elaborazione di un pensiero complesso, rispetto alle lingue non indoeuropee (in genere, isolanti o agglutinanti). Si suppone dunque che il concetto di complessit`a possa essere associato anche a tratti linguistici determinati.
Questa sorta di razzismo linguistico lascia il posto, durante il XX secolo, all’idea che tutte le lingue siano ugualmente complesse e che gli uomini siano tutti biologicamente dotati delle stesse capacit`a cognitive. Anche questa teoria, incentrata sulla pari complessit`a delle lingue, `e oramai superata, in quanto a ogni livello della lingua corrisponde un diverso grado di complessit`a.
Tra i vari studiosi che negli ultimi anni hanno affrontato l’argomento, ri-cordiamo McWhorter (2001), il quale sostiene che un linguaggio pu`o definirsi complesso se, in comparazione a uno pi`u semplice, ha in s´e maggiori distin-zioni fonetiche, morfologiche, sintattiche e semantiche, indipendentemente dalla necessit`a comunicativa; invece, secondo Ferguson (1982), il grado di complessit`a o di semplicit`a di una lingua `e basato su ci`o che `e pi`u diffuso nelle lingue naturali e che viene immagazzinato prima durante l’acquisizione del linguaggio. Infine, Hawkins (2009), negando la teoria secondo cui la com-plessit`a del linguaggio sia basata sul numero di unit`a strutturali e norme, porta avanti l’idea che la semplificazione di un livello linguistico pu`o com-portare maggiore complessit`a ad altri livelli. Tutto ci`o rende la definizione di una metrica universale della complessit`a molto pi`u difficile: viene proposto dunque di inserire il concetto nell’ambito pi`u ampio della teoria dell’efficienza comunicativa.
2.1.1
Complessit`
a nel sistema e complessit`
a per
l’uten-te
In linguistica il tema della complessit`a viene analizzato principalmente se-condo due prospettive: la complessit`a nel sistema e la complessit`a per l’utente.
Complessit`a nel sistema. Secondo questo punto di vista, si definisce ci`o che `e complesso comparando sistemi e strutture linguistiche sulla base di criteri interni alle lingue.
Per Cangelosi e Turner (2002), il sistema linguistico `e caratterizzato da una serie di elementi che interagiscono tra loro in maniera distribuita, au-tonoma, e non lineare. Il processo di interazione e auto-organizzazione di queste componenti porta all’emergenza di strutture linguistiche e comporta-menti complessi, come la sintassi e la comunicazione linguistica tra gruppi di individui.
Il linguista valuter`a tale complessit`a sulla base di criteri come il numero di regole necessarie a produrre un determinato output, il numero di eccezioni alle regole e la mancata trasparenza nella relazione forma-significato, ecc.
Inoltre, possiamo studiare questo tipo di complessit`a a livello sociale ed evoluzionistico, in quanto si pensa che le trasformazioni della complessit`a di un sistema linguistico afferiscano a schemi evolutivi universali.
Complessit`a per l’utente. Componente fondamentale per misurare questo tipo di complessit`a `e l’efficienza comunicativa tra i parlanti: vengo-no cos`ı chiamate in causa le strategie cognitive messe in atto dall’individuo per produrre o ricevere un messaggio. Sar`a dunque definito complesso ci`o che `e pi`u difficile da produrre o comprendere e che richiede una maggio-re elaborazione, un maggiomaggio-re carico per la memoria e un pi`u elevato costo cognitivo.
Secondo Hawkins (2009), si pu`o parlare di comunicazione efficiente quan-do il parlante riesce a trasmettere un messaggio all’ascoltatore rapidamente e con il minimo sforzo di rielaborazione. Affinch´e la comunicazione risulti efficiente, Hawkins individua tre principi:
sin-tatticamente e semanticamente, rendendo i domini pi`u brevi possibili, alleggerisce la memoria necessaria a processare l’informazione;
• massimizzazione del processamento on-line: l’elaboratore umano processa pi`u velocemente quando le propriet`a di un elemento X si trova-no tutte insieme e possotrova-no essere assegnate all’elemento matrova-no a matrova-no che X viene processato; un’assegnazione successiva, oltre a richiedere un maggiore sforzo, pu`o aumentare il margine di errore;
• minimizzazione delle forme: l’elaborazione delle forme linguistiche e le propriet`a di cui esse sono portatrici richiede uno sforzo che pu`o essere ridotto minimizzando l’utilizzo di queste forme e sfruttando in-formazioni extra-linguistiche gi`a attive nella comunicazione, fra cui la frequenza delle parole e le inferenze.
Generalmente, possiamo dunque definire una comunicazione efficiente se implica semplicit`a strutturale e grammaticale; tuttavia, nel caso in cui fatto-ri addizionali determinano le scelte strutturali del parlante, l’efficienza pu`o risolversi in una maggiore complessit`a.
2.1.2
Complessit`
a nei vari livelli di descrizione della
lingua
Premettendo che individuare una metrica convenzionalmente concordata, al fine di misurare la complessit`a di una lingua, `e un compito arduo, McWhorter (2001) propone una metrica che si pu`o ritenere universalmente valida, focaliz-zando l’attenzione sui fenomeni fonologici e morfologici, in quanto potenziali
indicatori di un sistema linguistico complesso. La metrica di McWorther si basa sull’idea che un’area della grammatica `e pi`u complessa della stessa area in un’altra grammatica nella misura in cui essa comprende maggiori distinzioni e/o regole.
Passiamo a descrivere la complessit`a nei vari livelli della lingua.
Complessit`a fonologica Sono due i parametri individuati da McWhor-ter per definire il grado di complessit`a fonologica di una lingua: Il primo principio riguarda la presenza di fonemi marcati1 nell’inventario fonemico di una lingua. Questo sar`a pi`u complesso se, oltre ai pi`u comuni fonemi non marcati, contiene anche membri marcati.
Analogamente, un sistema tonale sar`a pi`u complesso di un altro se mag-giore `e il numero di toni al suo interno; in tal caso, la padronanza e la capa-cit`a d’elaborazione di un insieme pi`u ampio di contrasti e il mantenimento di distinzioni intertonali pi`u sottili saranno fondamentali.
Complessit`a morfologica Per quanto riguarda la morfologia, Mc-Whorter individua nella flessione un importante elemento di complessit`a: questo fenomeno comporta la nascita e lo sviluppo di processi morfofonolo-gici, che possono avere a loro volta ripercussioni a livello fonetico. Inoltre, la flessione rende pi`u complessa la grammatica di una lingua, in quanto alcuni suoi prodotti non trovano corrispondenti in tutte le grammatiche; dunque, la flessibilit`a, essendo un fattore di complessit`a, esercita un carico maggiore sulla processabilit`a.
1Il termine marcato `e qui usato in senso strettamente cross-linguistico: i fonemi marcati
A sostegno dell’idea della flessione come indice di complessit`a, Kusters (2003) compara morfologia flessionale e derivazionale: a fronte di quanto appena constatato riguardo la prima, la maggiore semplicit`a della seconda `
e dovuta al fatto che le regole derivazionali di una lingua corrispondono generalmente a quelle di un’altra, regolarizzano il lessico e semplificano la formazione delle parole.
Complessit`a semantica Berruto (1990) sostiene che complessit`a se-mantica e sintassi possono essere strettamente correlate: la semplificazione di tratti sintattici pu`o portare a maggiore complessit`a semantica, quindi a fenomeni come la polisemia.
Secondo Voghera (2001), possiamo allora considerare i tratti sintattici assieme ad alcuni dei tratti semantici pi`u evidentemente ad essi connessi:
• il significato concreto `e pi`u semplice del significato astratto, in quanto il secondo non `e percepibile fisicamente;
• la monosemia `e pi`u semplice della polisemia2;
• il lessico referenziale `e pi`u semplice del lessico funzionale.
Complessit`a pragmatica Le conoscenze relative ai vari livelli della lingua possono non essere sufficienti a far funzionare efficacemente la comu-nicazione tra gli individui: a questo scopo sono fondamentali tutte le infor-mazioni desunte dal contesto all’interno di cui viene collocato il discorso. Tali
2Non si tratta di un immutabile assioma: come sottolinea Voghera (2001), la monosemia
pu`o essere fattore di semplificazione per il produttore, ma fattore di complessit`a per il ricevente.
conoscenze possono essere utili a decifrare e a gestire fenomeni linguistici che risulterebbero incomprensibili se analizzati dal punto di vista meramente lin-guistico, come nel caso dell’ironia e del sarcasmo. Questi fenomeni generano un ulteriore livello di complessit`a.
2.1.3
Complessit`
a sintattica
Passiamo ora ad analizzare pi`u nel dettaglio la complessit`a sintattica, l’ar-gomento centrale di questa trattazione.
Generalmente, possiamo definire come indici della complessit`a sintattica (Berruto e Cerruti, 2011):
• l’ordine lineare degli elementi di una frase, che permette di evitare le possibili ambiguit`a di significato;
• le relazioni e le dipendenze vigenti fra gli elementi non contigui;
• il grado di incassatura fra gli elementi;
• la ricorsivit`a, intesa come possibilit`a di applicare lo stesso procedimen-to un numero illimitaprocedimen-to di volte per ottenere segni sempre nuovi, che accresce il grado di complessit`a;
• le parti del discorso, che danno informazioni sulla sua struttura interna (per esempio, le congiunzioni coordinanti e subordinanti);
• la discontinuit`a, ossia la possibilit`a che elementi collegati semantica-mente o sintatticasemantica-mente non siano linearsemantica-mente adiacenti.
Origine dell’ordine dei costituenti Soggetto-Verbo-Oggetto (SVO) Recenti studi (Gell-Mann e Ruhlen, 2011) hanno dimostrato che all’origine di tutti (o quasi) i linguaggi umani sia identificabile l’ordine Soggetto-Oggetto-Verbo (SOV).
Analisi diacroniche dimostrano che un sempre maggiore numero di lingue Soggetto-Verbo-Oggetto (SVO) ha iniziato a diffondersi, fino a diventare la tipologia pi`u frequente; numerosi studiosi hanno indagato le motivazioni che stanno alla base di questo cambiamento e il concetto di “rumore” della teo-ria dell’informazione di Shannon pu`o esserci d’aiuto: secondo il matematico statunitense, un’efficace comunicazione pu`o essere compromessa da rumori, a causa dei quali si rischia che il messaggio non arrivi correttamente al de-stinatario. A questo proposito l’ordine SVO `e funzionale nei contesti che descrivono eventi semanticamente reversibili, in cui entrambi i referenti sono animati e potrebbero essere agenti dell’evento (es. “Marco saluta Piero”).
Dunque, si pu`o supporre (Gibson e altri, 2013) che le lingue abbiano elaborato delle regole relative all’ordine delle parole, come l’ordine SVO, affinch´e il rischio di errori nella comunicazione venisse ridotto.
Ordine marcato e non marcato degli elementi Per quanto riguar-da l’ordine dei costituenti in una frase, si possono individuare due principa-li correnti di pensiero: c’`e chi sostiene che l’ordine delle parole nella frase dipenda dalla struttura dell’informazione (vedi Diessel, 2005); altri, invece, affermano che l’ordine degli elementi sia collegato alla capacit`a e alla velocit`a d’elaborazione dell’informazione.
degli elementi tipico: SVO. Al fine di focalizzare l’attenzione su un’informa-zione ben precisa, `e comunque possibile variare l’ordine degli elementi: in questo caso, si parla di ordine marcato.
Corpina (2009) parla di marcatezza su tre livelli di analisi:
• marcatezza fonologica: un enunciato risulta fonologicamente marcato se la melodia intonativa non `e rappresentabile secondo una curva, ma presenta interruzioni, pause o picchi intonativi;
• marcatezza sintattica: si parla di frase marcata sintatticamente quando i costituenti non occupano le posizioni canoniche, ma ne assumono altre al fine di esprimere dei significati particolari; marcatezza sintattica e fonologica sono strettamente correlate, in quanto a un ordine inusuale degli elementi di un enunciato si accompagna spesso un’intonazione particolare;
• marcatezza pragmatica: una frase `e marcata pragmaticamente quan-do non si adatta a un numero molto alto di contesti e di situazioni linguistiche;
La lingua italiana ad esempio `e fortemente marcata sintatticamente: i costituenti maggiori, a dispetto di quelli minori, variano spesso posizione, permettendo diverse forme di focalizzazione; passiamo ad analizzare alcuni casi.
Soggetto Nonostante occupi principalmente una posizione preverbale e, differentemente dagli altri argomenti del verbo, non possa essere sottoposto
a tematizzazione tramite dislocazione a sinistra3 (se non in rarissimi casi), il soggetto ha grande libert`a di spostamento: pu`o essere omesso, oltre che posizionato altrove al fine di evidenziarlo come elemento nuovo o inatteso. Per esempio, ritroviamo il soggetto dopo il verbo in enunciati tetici come Ha chiamato Daniele, in cui solo il rema veicola l’informazione.
Oggetto A seconda dell’intenzione comunicativa, in italiano possiamo trovare l’oggetto prima (come nel caso della dislocazione a sinistra) o dopo il verbo (come nel caso della dislocazione a destra). Nel primo caso, nor-malmente l’oggetto viene preposto al verbo e ripreso con un pronome clitico (ad esempio, la cena, la prepara Giovanna), mentre nel caso della dislocazio-ne a destra l’oggetto viedislocazio-ne collocato dopo il verbo, con un ordidislocazio-ne marcato rema-tema (ad esempio, Giovanna non la prepara, la cena).
Modificatori del nome Gli articoli, i determinanti, i numerali e i quantificatori mostrano invece poca flessibilit`a: l’ordine canonico italiano con testa a sinistra non viene mai variato.
Per meglio comprendere questo fenomeno pu`o essere utile la branching direction theory (Dryer, 1992): Dryer asserisce che in una lingua vi sia una tendenza piuttosto forte a collocare i costrutti di natura sintattica sempre prima o dopo la testa, mentre gli elementi che non ramificano sembrano non seguire questa regola. Da questo punto di vista, l’italiano apparirebbe sia come una lingua con testa a sinistra, sia come una lingua con testa a destra, in quanto solo i modificatori con struttura interna si collocano sempre a destra della loro testa.
Aggettivo Si `e soliti porre l’aggettivo dopo il nome se ha funzione re-strittiva, cos`ı da indicare una qualit`a distintiva del soggetto rispetto ad altri della stessa categoria: in questo caso, generalmente, parliamo di posizione non marcata (per esempio, una ragazza bella). Viceversa, l’aggettivo `e posto prima del nome quando ha funzione descrittiva, indicando cos`ı una qualit`a del nome a cui `e legato; l’aggettivo viene collocato prima del nome al fine di comunicare una maggiore soggettivit`a, di enfatizzare o per ragioni di ricerca-tezza stilistica: in questo caso parliamo di posizione marcata (per esempio, una bella ragazza).
Malgrado ci`o, alcuni aggettivi hanno un ordine fisso; tra questi, i seguenti sono posti sempre dopo il nome:
• aggettivi alterati: per esempio, una casa piccolina;
• aggettivi che reggono un complemento: per esempio, una casa piena di mobili;
• aggettivi derivati da un participio: per esempio una casa ristrutturata;
• aggettivi che indicano il colore: per esempio una casa rossa;
• aggettivi che indicano la forma: per esempio una palla rotonda;
• aggettivi che indicano la nazionalit`a: un ciclista serbo;
Al contrario, sono collocati in posizione pre-nominale gli aggettivi pos-sessivi (tranne nel caso in cui vengano dislocati dopo il nome per motivi di focalizzazione) e gli aggettivi usati in senso figurato (per esempio, un alto magistrato).
Avverbi Nonostante in molti casi possa essere posto liberamente all’in-terno della frase (per esempio, Mangia lentamente o Lentamente mangia), la collocazione dell’avverbio deve sottostare ad alcune regole, legate al tipo di elemento che accompagna: per esempio, se accompagna un verbo composto, va dopo (Il lupo ha ululato ferocemente).
`
E interessante osservare come il posizionamento dell’avverbio nell’enun-ciato possa significare un cambiamento di interpretazione: per esempio, “Ho semplicemente risposto” (solo, avverbio di tipo limitativo) e “Ho risposto semplicemente” (in modo semplice, valore modale). Anche nel caso degli avverbi focalizzatori (per esempio, solo, anche, proprio, soprattutto ecc.), specializzati nel modificare il focus della frase, la posizione del suddetto ele-mento pu`o avere ripercussioni sul significato: per esempio, “Gianni ama anche il cinema” e “Anche Gianni ama il cinema”.
Il caso delle subordinate Per quanto riguarda il posizionamento delle subordinate rispetto alla clausola principale e i criteri alla base delle possibili scelte, possiamo individuare tre linee di pensiero:
• la prima teoria, di natura spiccatamente pragmatica, sostiene che la dislocazione a sinistra della subordinata rispetto alla clausola principale sia utile a rendere note delle informazioni che il ricevente gi`a conosce, necessarie a introdurre l’argomento nuovo;
• opposta alla prima, la seconda teoria afferma che porre la subordi-nata dopo la principale renda l’informazione pi`u facilmente processa-bile. Nella sua Performance theory of order and costituency, Hawkins
(1994) sostiene che l’ordine lineare rende pi`u veloce e meno dispendiosa l’elaborazione di una frase da parte del parser;
• una terza via `e proposta da Diessel (2005), il quale, mostrando come processing, pragmatica e semantica interagiscono nel determinare l’or-dine di una frase, favorisce le priorit`a portate avanti dalle prime due teorie. Ovviamente, ogni lingua segue ordinamenti diversi e, come lo stesso Diessel dimostra, ognuna di esse segue strategie di processamento differenti.
Analizzando i dati raccolti da Fiorentino (2009), relativi a un corpus di italiano scritto elettronico e composto da 2200 clausole avverbiali di modo finito (concessive, finali, temporali, causali e condizionali), in italiano sono ammesse subordinate prima e dopo la principale, nonostante queste ultime siano le pi`u frequenti. Nello specifico, le congiunzioni hanno effetto sul posi-zionamento della subordinata nella frase: per esempio, le subordinate condi-zionali introdotte da “se” tendono a ricorrere prima della reggente, cos`ı come le causali introdotte da siccome e le temporali introdotte da appena; men-tre le proposizioni introdotte da “bench´e”, “qualora”, “sebbene”, “mentre” possono essere generalmente collocate sia prima, che dopo la principale.
2.2
La complessit`
a linguistica nell’analisi
au-tomatica dei testi
La complessit`a linguistica ha una notevole influenza sull’analisi automati-ca del linguaggio e si ripercuote sull’accuratezza degli strumenti di analisi
linguistica automatica.
Nonostante l’accuratezza di questi sistemi sia migliorata notevolmente negli ultimi anni, ma annotazioni ancora pi`u precise sarebbero utili per ap-plicazioni basate sull’analisi automatica del linguaggio. Spesso infatti quando tali sistemi vengono applicati a testi nel mondo reale, come quelli provenien-ti dal web, dai social media o di dominio specifico, l’accuratezza diminuisce sensibilmente. Questo rappresenta un problema reale per applicazioni come l’Information Extraction, il Question Answering o la Traduzione Automatica ed altre ancora che possono trarre beneficio dall’analisi linguistica.
2.2.1
Misurare l’affidabilit`
a degli strumenti di analisi
linguistica automatici
Anche se il problema della complessit`a di analisi linguistica per gli strumenti automatici `e ancora in larga parte inesplorato, negli ultimi anni `e cresciuto l’interesse verso lo studio dell’affidabilit`a degli output prodotti da tali stru-menti. Gli approcci utilizzati nei diversi studi per la determinazione dell’af-fidabilit`a di un output sono molto diversi tra loro ma si possono raggruppare essenzialmente in tre macrocategorie:
• Metodi supervised-based: prevedono la costruzione di un classifica-tore in grado di predire l’affidabilit`a di un parser sulla base di diverse tipologie di features. Yates e altri (2006) hanno esplorato l’utilizzo di features semantiche derivate dal web per creare un modello statisti-co in grado di individuare output inaffidabili prodotti da un parser a costituenti. Kawahara e Uchimoto (2008) si sono basati su features
estratte direttamente dall’output di un dependency parser, ad esempio la lunghezza delle dipendenze, il numero di parole sconosciute, il nume-ro di congiunzioni coordinanti ecc.. Ravi e altri. (2008) hanno studiato l’utilizzo di features text-based (ad esempio la lunghezza della frase, le parole sconosciute), insieme a features sintattiche per sviluppare un predittore supervisionato dell’accuratezza del parser.
• Metodi ensemble-based: selezionano alberi di parsing di alta qua-lit`a calcolando l’accordo tra gli output prodotti da diverse versioni di parser, ognuno addestrato su diverse tipologie di dati, oppure tra gli output prodotti da diversi parser addestrati sugli stessi dati. (Reichart e Rappoport, 2007 e Sagae e Tsujii, 2007);
• Metodi unsupervised-based: I primi due approcci sono tuttavia dram-maticamente influenzati da: (i) la tipologia del training set, (ii) l’accu-ratezza e la tipologia di errori dei parser utilizzati. Per questo `e stato sviluppato l’approccio unsupervised-based, il quale si basa sull’idea che strutture prodotte pi`u frequentemente da un parser probabilmente saranno analizzate in maniera pi`u corretta rispetto a strutture pi`u ra-re. A questo proposito Reichart e Rappoport (2009a) hanno sviluppato il sistema PUPA (POS–based Unsupervised Parse Assessment Algori-thm) che utilizza statistiche sulla sequenza di POS di frasi analizzate da un parser a costituenti non supervisionato. Dell’Orletta, Venturi e Montemagni (2011) hanno sviluppato l’idea di Reichart e Rappo-port (2009a) e hanno sviluppato l’Unsupervised Algorithm for Detec-ting Reliable Dependency Parses (ULISSE) un sistema unsupervised
che (i) `e in grado di superare i problemi legati ai metodi supervised e ensable-based, (ii) opera su rappresentazioni di alberi a dipendenze. Questo strumento sfrutta anch’esso statistiche calcolate internamen-te ma non strettameninternamen-te legainternamen-te ad una rappresentazione a costituenti. Questo studio risulta centrale in questa tesi in quanto ULISSE `e l’unico sistema che `e stato addestrato sull’italiano e su una rappresentazione a dipendenze.
2.2.2
Caratteristiche linguistiche ed errori nell’analisi
automatica
McDonald e Nivre (2007) hanno analizzato le tipologie di errori degli stru-menti di analisi sintattica confrontando i due approcci di parsing a dipen-denze che attualmente rappresentano lo stato dell’arte:
• l’approccio graph-based `e stato definito da Buchholz e Marsi (2006) e prevede che ogni possibile arco sia considerato al fine di costruire l’albero sintattico;
• l’approccio transition-based che prevede la costruzione dell’albero step by step e che il sottoinsieme degli archi considerati dipenda dalle scelte effettuate in precedenza.
Teoricamente questi due approcci sono molto diversi: i parser graph ba-sed sono addestrati globalmente utilizzando inferenze esatte ed utilizzando feature basate su un numero limitato di decisioni di parsing precedenti; i modelli transition based invece sono basati su algoritmi di inferenza greedy e
sfruttano feature basate su una ricca gamma di decisioni di parsing preceden-ti. I sistemi che sfruttano questi due approcci ottengono accuratezze simili in molte lingue. Cambia tuttavia la tipologia di errori commessi. Attardi e Dell’Orletta (2009) hanno mostrato infatti come combinando i due approcci si ottenga un significativo miglioramento delle prestazioni.
Entrambi gli approcci garantiscono maggiore accuratezza su frasi pi`u bre-vi in termini di numero di token. Gli archi che collegano parole bre-vicine linear-mente sono individuati con pi`u precisione sfruttando l’approccio transition-based, di contro l’approccio graph-based garantisce pi`u precisione nell’indivi-duare link tra parole distanti. Teoricamente la distanza lineare per un parser graph-based non dovrebbe influenzare l’accuratezza di analisi ma pratica-mente `e stato evidenziato che anche questa tipologia di parser va incontro ad un leggero degrado delle prestazioni con l’allungarsi della distanza lineare. Questo fatto probabilmente `e dovuto alla minor frequenza nei training set di esempi di archi distanti.
Un’altra caratteristica degli alberi sintattici che differenzia le prestazioni di questi due approcci `e la distanza in numero di archi dalla radice della frase. L’approccio graph-based garantisce migliori prestazioni rispetto all’approccio transition-based per la risoluzione di dipendenze “vicine” alla root e viceversa.
Similarmente le prestazioni dei due approcci sono influenzate diversamen-te dal grado di non-proiettivit`a. Il grado di non-proiettivit`a di un arco di dipendenza a da una parola w ad un’altra parola u viene definito come il numero di parole che occorrono tra w e u, che non sono discendenti di w e sono legate ad una parola che non occorre tra w ed u (Nivre, 2006). I parser graph-based sono pi`u precisi nel caso di alti gradi di non-proiettivit`a
e viceversa.
Oltre alle caratteristiche dell’albero sintattico `e stata studiata anche l’in-fluenza di altre caratteristiche linguistiche: le diverse tipologie di parti del discorso e di dipendenze sintattiche.
Per quanto riguarda le parti del discorso i parser transition-based otten-gono prestazioni migliori per nomi e pronomi mentre i parser grap-based sono pi`u prestanti per tutte le altre categorie. Questi risultati sono consistenti con quelli precedenti in quanto in generale nomi e pronomi sono legati a parole linearmente vicine.
Per quanto riguarda le dipendenze, i parser graph-based sono pi`u preci-si nell’individuazione della root, mentre i parser tranpreci-sition-based sono pi`u precisi nell’individuazione di soggetto e complemento oggetto.
In questa tesi `e stato preso in analisi il comportamento di entrambe le tipologie di parser in quanto tali approcci differiscono fortemente tra loro e definiscono lo stato dell’arte.
Le caratteristiche linguistiche che generano complessit`a nell’analisi auto-matica hanno continuato ad essere oggetto di studio anche recentemente: nel 2015 Gulordava e Merlo hanno mostrato come l’ordine libero dei sintagmi all’interno di una frase influenzi in maniera negativa la qualit`a degli output prodotti dai parser, anche queste caratteristiche sono state prese in analisi in questa tesi.
Monitoraggio linguistico
In questo capitolo saranno presentati i fondamenti teorici del monitorag-gio linguistico utilizzato per l’analisi comparativa descritta nel capito 4. Quindi verr`a introdotto uno strumento che implementa queste metodolo-gie: Monitor-IT, sviluppato presso l’ItaliaNLP Lab. Saranno poi descritti lo schema di annotazione linguistica Universal Dependencies ed il lavoro di reimplementazione di Monitor-IT, svolto per adattarlo a questo schema. In-fine saranno descritte nel dettaglio tutte le caratteristiche linguistiche che lo strumento `e in grado di estrarre.
Montemagni (2013) ha mostrato che mediante il ricorso a tecnologie linguistico-computazionali `e oggi possibile monitorare un ampio spettro di tratti, che spaziano tra i diversi livelli di descrizione linguistica (primaria-mente, lessico, morfo-sintassi e sintassi), in relazione a corpora di sempre pi`u vaste dimensioni.
In particolare l’utilizzo di vasti corpora testuali combinato con il ricorso a tecnologie per il monitoraggio linguistico rende possibili analisi che coprono
aspetti della struttura linguistica rimasti fino a ora inesplorati in quanto difficilmente attingibili mediante un’analisi manuale del testo.
Il potere diagnostico delle analisi generate da questi strumenti ha aperto filoni di studio in diversi ambiti, ad esempio:
• il monitoraggio dello sviluppo della sintassi nel linguaggio infantile (Sagae e altri, 2005; Lu, 2008);
• l’identificazione di deficit cognitivi attraverso misure di complessit`a sintattica (Roarkn e altri, 2007);
• la misurazione della leggibilit`a di testi per studenti di L1 e L2 (Heilman e altri, 2007; Collins-Thompson, 2005);
• il monitoraggio della capacit`a di lettura come componente centrale della competenza linguistica (Schwarm e altri, 2005; Petersen e altri, 2009).
Come vedremo, queste metodologie sono state fondamentali anche nel no-stro lavoro di comparazione tra complessit`a linguistica tra umani e macchine.
3.1
Le tecnologie linguistico computazionali
Le tecnologie linguistico-computazionali permettono di accedere al contenu-to informativo dei testi attraverso l’individuazione della struttura linguisti-ca sottostante. Tale processo avviene tipilinguisti-camente in modo incrementale, attraverso analisi linguistiche a livelli di complessit`a crescente:
Figura 3.1: Esempio di albero sintattico prodotto da LinguA, lo strumento di annotazione linguistica dell’ItaliaNLP Lab dell’ILC-CNR
• Tokenizzazione: la segmentazione in parole ortografiche dette token;
• Analisi morfologica e lemmatizzazione del testo;
• Assegnazione delle parti del discorso;
• Parsing sintattico: ricostruzione dell’albero sintattico delle frasi.
Oggi, nel campo della linguistica computazionale, lo stato dell’arte nei compiti di annotazione linguistica `e rappresentato da sistemi basati su algo-ritmi di apprendimento automatico supervisionato. Il compito di annotazione linguistica viene modellato come un compito di classificazione probabilistica: a ogni passo di computazione il sistema sceglie l’annotazione pi`u probabile dati la parola in input, i suoi tratti descrittivi, il contesto e le annotazio-ni linguistiche gi`a identificate. A partire da un corpus di addestramento, annotato con informazione morfo-sintattica e sintattica, viene costruito un modello probabilistico per l’annotazione linguistica del testo.
Un testo arricchito con informazioni di questo tipo diventa il punto di partenza per ulteriori elaborazioni automatiche di diversa tipologia, tra le
quali l’identificazione di una vasta tipologia di parametri che possono essere utilmente sfruttati in compiti di monitoraggio linguistico.
In questo lavoro sono stati valutati gli errori di questi strumenti di analisi linguistica come indice della complessit`a del testo per la macchina.
3.2
Monitoraggio linguistico: principi e
me-todi
Prima dello sviluppo dei sistemi di monitoraggio basati su strumenti di trat-tamento automatico del linguaggio naturale, gli studi sulle variet`a linguisti-che e sui generi testuali si sono basati essenzialmente su evidenze tratte da lessici di frequenza costruiti su corpora il cui processo di lemmatizzazione e annotazione morfo-sintattica `e stato condotto manualmente. Esempi di que-sto tipo per la lingua scritta sono il Lessico di frequenza della lingua italiana contemporanea (LIF, 1972), il Vocabolario Elettronico della Lingua Italiana (VELI, 1989), il Corpus Lessico di Frequenza dell’Italiano Scritto (CoLFIS, 2005), lessici settoriali come il Lessico Elementare (LE, 1994) o il lessico di frequenza basato su quattro annate del giornale Due Parole (Piemontese, 1996). Esempi invece per il parlato sono il Lessico di Frequenza dell’Italiano Parlato (LIP, 1993), e pi`u recentemente C-ORAL-ROM (Cresti e Moneglia, 2005).
Va considerato che i dati tratti da risorse di questo tipo concernono uni-camente la lista dei lemmi e non illustrano la funzione sintattico-semantica che essi assumono, nella predicazione, nei vari contesti frastici (D’Agosti-no, 1998:19). Per studiare la variazione linguistica tra generi testuali a
li-vello di sintassi `e comunque necessario un livello di annotazione pi`u avan-zato. Uno dei pochi corpus costruiti in quest’ottica `e il Corpus Penelo-pe (www.parlaritaliano.it). Si tratta comunque di un risorsa di dimensioni contenute (poco pi`u di 30.000 parole) che `e stata costruita per lo studio di sistematicit`a sintattiche. Questo corpus per venticinque anni `e stato la campionatura di riferimento per studi e ricerche sulla sintassi, utile a tener traccia di tendenze e trasformazioni della lingua in prospettiva sia sincronica sia diacronica e per l’analisi di specificit`a di linguaggi settoriali. In questa prospettiva si inquadrano gli studi di Policarpi e Rombi sulle tendenze nel-la sintassi dell’italiano contemporaneo (Rombi e Policarpi, 1985; Policarpi e Rombi, 2005).
Una possibile alternativa al corpus Penelope potrebbe essere rappresen-tata da risorse quali le Treebank sintattiche per la lingua italiana (ISST, Montemagni e altri, 2003; TUT, Bosco e altri, 2000; VIT, Delmonte e al-tri, 2007). Tuttavia queste risorse non possono essere utilizzate ai fini dello studio della variazione linguistica tra variet`a di lingua e generi testuali in quanto la composizione interna dei corpora annotati non `e stata definita come rappresentativa di diversi generi testuali.
Per altre lingue, la situazione `e differente. Fino dalla met`a degli anni Ot-tanta, prima per la lingua inglese (Biber, 1988) e poi anche per altre lingue quali il somalo, il coreano, il taiwanese (Biber, 1995) e anche lo spagnolo (Bi-ber e altri, 2006) si annoverano studi su register variation basati su corpora di maggiori dimensioni, dell’ordine di milioni di parole, con l’analisi lingui-stica del testo condotta in modo completamente automatico; tali studi sono condotti ricorrendo a tecniche di statistica multivariata che rendono possibile
l’identificazione dell’insieme dei tratti caratterizzanti di una variet`a di lingua rispetto a un’altra.
I lavori pioneristici di Biber per la lingua inglese, rivestono un ruolo par-ticolarmente importante in quanto mostrano che usando corpora di vaste dimensioni e strumenti di analisi linguistica automatica del testo `e possibile condurre un monitoraggio linguistico ad ampio spettro, che coinvolge una varia ed estesa tipologia di parametri riguardanti i diversi livelli di descrizio-ne linguistica. Questi studi in particolare si basano su annotazioni morfo-sintattiche potenziate con regole operanti sulla sequenza di categorie gram-maticali e sui lemmi per l’identificazione di particolari strutture sintattiche e semantiche.
Le tecnologie moderne cominciano a essere mature per poter assolvere compiti di monitoraggio linguistico, con un’accuratezza accettabile. In questo modo il monitoraggio linguistico pu`o essere quindi effettuato su corpora di vastissime dimensioni basandosi al contempo su annotazioni sintattiche.
In quanto segue, cercheremo di delineare la tipologia di parametri che pos-sono essere monitorati a partire dai diversi livelli di annotazione linguistica, in particolare morfo-sintattica e sintattica a dipendenze.
3.2.1
Parametri del monitoraggio linguistico
Annotazione morfo-sintattica A partire da alcuni casi di studio Montemagni (2013) mostra, attraverso dei casi di studio, come attraverso la -misura delle categorie morfo-sintattiche `e possibile rintracciare differenze e somiglianze tra diversi generi testuali cos`ı come tra scritto e parlato. Ana-lizzando la distribuzione delle singole categorie morfo-sintattiche, `e inoltre
possibile mettere in relazione la frequenza di occorrenza di certe categorie grammaticali rispetto ad altre. Ad esempio `e possibile misurare la den-sit`a lessicale1, oppure il rapporto tra diverse categorie morfo-sintattiche, ad esempio il rapporto tra nomi e verbi.
Annotazione sintattica Esistono tuttavia aspetti della struttura sin-tattica che non possono essere ricavati a partire dalla distribuzione delle cate-gorie morfo-sintattiche nel testo. Al massimo, a partire dalla sequenza delle categorie morfo-sintattiche `e possibile ricostruire la presenza di strutture par-ticolari (Bieber, 1995). Per quanto questo tipo di informazione rappresenti un passo in avanti rispetto all’analisi della distribuzione delle categorie morfo-sintattiche considerate al di fuori del contesto di occorrenza, non `e tuttavia sufficiente a ricavare indicazioni precise in merito alla struttura sintattica complessiva sottostante al testo oggetto dell’analisi. Grazie a strumenti di analisi linguistica automatica `e possibile accedere ad informazioni di tipo sintattico.
Ad esempio `e possibile oltre a rilevare la presenza di una clausola in-finitiva, sapere la categoria morfo-sintattica della testa da cui dipende (ad esempio, verbo vs nome, come in ho deciso di partire vs la decisione di par-tire), oppure il suo livello di incassamento, ovvero se dipenda direttamente dalla radice verbale della frase oppure se rappresenti una reggenza di secondo, terzo o quarto grado (ad esempio, Giovanni ha deciso di partire vs Maria ha sentito che Giovanni avrebbe affermato di avere deciso di partire domani ).
1La proporzione tra parole semanticamente piene (ovvero, nomi, aggettivi, verbi e
Di un complemento preposizionale possiamo sapere ad esempio da chi (verbo, nome o aggettivo) `e governato, oppure se ricorra all’interno di un sintagma leggero o pesante, e nel caso si tratti di un sintagma pesante fornisca una sorta di misura del suo peso.
Questa tipologia di informazioni non `e ricostruibile a partire dal testo an-notato morfo-sintatticamente e neppure dalla distribuzione dei tipi di dipen-denza all’interno del testo annotato, quanto dalle caratteristiche strutturali dell’albero sintattico.
Si consideri, in proposito, la distribuzione delle teste verbali nel corpus, che pu`o essere inquadrata da prospettive diverse. Un dato elementare, ma gi`a significativo, `e costituito dal rapporto tra clausole e periodi, calcolato a partire dal numero di teste verbali rispetto al numero di periodi. Questo dato, per`o, non dice nulla su come le diverse clausole si rapportino l’una con l’altra all’interno del periodo: `e possibile procedere in questa indagine andando a identificare la proporzione di principali e subordinate.
Pu`o essere inoltre interessante integrare questa informazione con altri aspetti della struttura linguistica, quali ad esempio l’ordine relativo tra prin-cipale e subordinata, il grado di incassamento della subordinata, il tipo di subordinata, etc. Parlando di complessit`a ad esempio `e riconosciuto che la maggiore ricorrenza di costruzioni subordinate `e in un certo senso controbi-lanciata in termini di complessit`a se la subordinata nella maggior parte dei casi segue la principale: quest’ordine `e riconosciuto di pi`u facile elaborazione nella letteratura linguistica (Miller e Weinert, 1998).
Un altro aspetto rilevante riguarda i livelli di incassamento gerarchico: in presenza di pi`u di una clausola subordinata all’interno dello stesso
perio-do, diventa cruciale ricostruire quale tipo di rapporto sussista tra di esse, ovvero se siano ricorsivamente incassate l’una all’interno dell’altra. Una pri-ma e approssipri-mativa misura dei livelli di incassamento gerarchico all’interno della struttura sintattica pu`o essere ricostruita a partire dall’altezza massi-ma dell’albero, che misura la massi-massimassi-ma distanza che intercorre tra una foglia (rappresenta da parole del testo senza dipendenti) e la radice dell’albero, espressa come numero di archi (ovvero relazioni di dipendenza) attraversati nel cammino foglia-radice. Questa misura pu`o essere raffinata focalizzandosi su particolari tipi di sotto-alberi: ad esempio, sotto-alberi di clausole subor-dinate ricorsivamente incassate (Dell’Orletta e Montemagni, 2012), oppure sotto-alberi governati da una testa nominale.
Questi esempi non sono certo esaustivi di quanto `e attingibile a partire da una rappresentazione a dipendenze, ma esemplificativi del valore aggiunto rappresentato da un livello di annotazione a dipendenze. Gli studi precedenti sulla sintassi dell’italiano attraverso diversi generi testuali (anche in una pro-spettiva diacronica) hanno riguardato primariamente i rapporti tra clausole e periodi, oppure tra clausole principali e subordinate, e sono stati condotti su un corpus annotato in modo completamente manuale (Policarpi e Maggi, 2005) con inevitabili ripercussioni sia al livello della tipologia delle possibili analisi sia della rappresentativit`a dei risultati.
Per gli scopi di questa trattazione `e importante sottolineare che, come `
e noto dalla letteratura linguistica, linguistico-computazionale e psicolingui-stica, vi sono parametri incentrati sulle caratteristiche strutturali dell’albero sintattico che rivestono un ruolo centrale nella valutazione della complessit`a di un testo. Ad esempio, Yngve (1960), Frazier (1985) e Gibson (1998)
so-stengono che la misura della profondit`a dell’albero sintattico associato a una frase rappresenta un aspetto centrale nella valutazione della sua complessit`a. Un altro fattore di complessit`a ampiamente riconosciuto (Lin, 1996; Gib-son, 1998) riguarda la misura della lunghezza delle relazioni di dipendenza, calcolata come la distanza (in parole) tra la testa e il dipendente.
3.3
Monitor-IT
Monitor-IT `e uno strumento per il monitoraggio linguistico della lingua ita-liana sviluppato dall’ItaliaNLP Lab dell’ILC-CNR. Tale strumento sfrutta l’annotazione linguistica prodotta da LinguA nel formato Italian Syntactic-Semantic Treebank (ISST) (Montemagni e altri 2003a, 2003b), lo strumento di annotazione linguistica dell’ItaliaNLP Lab al fine di estrarre dai testi un vasto numero di caratteristiche linguistiche utili per il monitoraggio.
Come lavoro preliminare allo svolgimento del progetto discusso in questa trattazione si `e proceduto ad una reimplementazione di questo strumento al fine di supportare il tagset di annotazione linguistica Universal Dependen-cies (UD). UD `e un progetto per lo sviluppo di una treebank cross-linguistica omogenea costituita da corpus annotati in molte lingue. L’obbiettivo del pro-getto `e quello di facilitare lo sviluppo di parser multilingua e l’apprendimento cross-linguistico. `E stato deciso di utilizzare questa risorsa in quanto (i) si sta imponendo come standard nella comunit`a scientifica internazionale, (ii) ci consente di estrarre le stesse caratteristiche per lingue diverse, in particolare per i nostri esperimenti per l’italiano e per l’inglese.
dif-Figura 3.2: Rappresentazione grafica dell’albero sintattico di una frase nel formato UD e ISST
ferenze tra etichette e granularit`a presentano sensibili differenze nella strut-tura della rappresentazione sintattica. A titolo esemplificativo possiamo os-servare l’esempio in figura 3.2. Innanzitutto notiamo una differenza nella scelta della radice del predicato nominale: nel caso di ISST il verbo viene selezionato come radice, mentre in UD `e la parte nominale a svolgere il ruolo di radice. Osserviamo inoltre differenze nella struttura del sintagma preposi-zionale: in ISST `e la preposizione a svolgere il ruolo di testa mentre in UDT e il sintagma nominale a svolgere il ruolo di testa, in entrambi i casi i figli del sintagma preposizionale vengono collegati al sintagma nominale.
I moduli di analisi linguistica di LinguA sono stati riaddestrati utilizzando le Universal Dependendencies Treebank (UDT) italiana e inglese.
Passiamo ora a descrivere il progetto UD, per poi esporre nel dettaglio le caratteristiche linguistiche estratte ed utilizzate per le analisi successive.
3.3.1
Universal Dependencies
Lo schema di annotazione UD si basa su un’evoluzione delle (universal) Stan-ford dependencies (SD) (de Marneffe e altri, 2006, 2008, 2014), del Google universal part-of-speech tags (Petrov e altri, 2012), e del Interset interlingua for morphosyntactic tagsets (Zeman, 2008). L’obbiettivo `e quello di fornire un inventario universale di categorie e linee guida per facilitare l’annotazione consistente di categorie simili per diverse lingue, mantenendo comunque la possibilit`a di inserire estensioni specifiche per ogni lingua se necessarie.
Dopo lunghe discussioni `e stato sviluppato un tagset universale esteso per le parti del discorso. Questo tagset contiene alcune distinzioni che non erano presenti nella proposta originale, ma che sono state percepite come importanti da molti e che chiarificano la definizione di alcune categorie. A causa di queste specificit`a la conversione di alcuni treebank che utilizzano tagset specifici di alcune lingue alle UD pu`o richiedere l’utilizzo di regole context-sensitive o di alcune revisioni manuali. Le UD morphological featu-res hanno l’obbiettivo di fornire un set base di featufeatu-res che risultano essere le pi`u cruciali e le pi`u diffuse nelle diverse lingue. La rappresentazione a di-pendenze UD `e un’evoluzione delle SD, che gi`a di per s´e seguiva l’idea di una rappresentazione grammaticale focalizzata sulle relazioni che potesse essere consistente con la maggior parte dei framework concettuali linguistici.
L’obbiettivo dei lavori in corso `e quello di ottenere simultaneamente: (i) l’aggiunta o il raffinamento delle relazioni al fine di garantire una maggiore aderenza alle strutture grammaticali delle diverse lingue, (ii) di eliminare la presenza di feature specifiche della lingua inglese.
Storia delle UD Le SD furono originariamente sviluppate nel 2005 co-me tagset per lo Stanford parser e furono successivaco-mente adattate a diverse lingue(Chang e altri, 2009, Bosco e altri, 2013, Haverinen e altri, 2013, Seraji e altri, 2013, Tsarfaty, 2013, Lipenkova and Souˇcek 2014). Il Google univer-sal tagset fu sviluppato per il CoNLL-X shared task di McDonald and Nivre (2007). Inizialmente fu utilizzato per task di unsupervised part-of-speech tag-ging da Das e Petrov (2011), e successivamente fu adottato come standard per il mapping di tagset diversi. L’Interset (Zeman, 2008) fu pensato inizial-mente come strumento di conversione tra diversi tagset morfo-sintattici. Fu utilizzato la prima volta nel 2006 per il primo esperimento di adattamento cross-linguistico di un parser (Zeman and Resnik, 2008). Successivamente fu utilizzato come layer morfologico in HamleDT (Zeman e altri, 2014), un progetto per la conversione di treebank di diverse lingue su un unico schema di annotazione.
Il primo tentativo di combinare le SD e il Google universal tags in uno schema di annotazione universale fu il progetto Universal Dependencies Tree-bank (McDonald e altri, 2013), grazie al quale furono rilasciate treeTree-bank in 6 lingue nel 2013 e in 11 lingue nel 2014. La prima proposta di inserire la mor-fologia nelle UD si deve a Tsarfaty (2013). La seconda versione di HamleDT (Rosa e altri, 2014) forn`ı annotazione secondo lo schema Stanford/Google per 30 lingue nel 2014. Questo progetto fu seguito dallo sviluppo delle Universal Stanford Dependencies (USD)(de Marneffe e altri, 2014).
Il progetto UD `e il risultato della fusione di queste iniziative in un uni-co framework uni-coerente, basato sul USD, un’estensione del Google universal tagset, un revisionato sottoinsieme dell’Interset feature inventory e su una
versione rivista delle formato CoNLL-X chiamato CoNLL-U.
Organizzazione del progetto Il progetto `e il frutto della collabora-zione di molti membri. La struttura amministrativa `e ridotta al minimo ed `e composta da:
• un coordinatore del progetto: Joakim Nivre;
• un team che si occupa delle release, inclusa la validazione della do-cumentazione, composto da: Filip Ginter, Sampo Pyysalo and Dan Zeman;
• un team che si occupa della gestione delle guidelines universali, com-posto da: Marie de Marneffe, Filip Ginter, Yoav Goldberg, Jan Hajic, Chris Manning, Ryan McDonald, Joakim Nivre, Slav Petrov, Sampo Pyysalo, Natalia Silveira, Reut Tsarfaty and Dan Zeman;
• diversi team che si occupano della gestione delle guidelines specifiche per ogni lingua.
Le issue possono essere presentate su GitHub e vengono risolte tramite discussioni e votazioni.
3.3.2
Caratteristiche linguistiche considerate
Sono state considerate tre tipologie di caratteristiche linguistiche: lessicali, morfo-sintattiche e sintattiche
caratteristiche lessicali Le caratteristiche lessicali di base prese in considerazione sono: il numero di frasi, il numero di token, il numero di to-ken medio per frase, il numero di caratteri per toto-ken, e la type toto-ken ratio2. Inoltre `e stata considerata la presenza percentuale di tipi e di token nel Voca-bolario Fondamentale della lingua Italiana (De Mauro, 1980) e la percentuale di termini classificati in questo dizionario come parole fondamentali (FO), di alto uso (AU), di alta disponibilit`a (AD).
Caratteristiche morfosintattiche Le caratteristiche morfosintattiche prese in considerazione sono:
• la densit`a Lessicale: calcolata come il rapporto tra parole semantica-mente piene (ovvero nomi, verbi, aggettivi e numerali3) e parole non semanticamente piene (tutte le altre categorie);
• la distribuzione delle parti del discorso;
• la distribuzione dei modi verbali;
• la distribuzione dei tempi verbali;
• la distribuzione della persona e del numero nei verbi.
Caratteristiche sintattiche Le caratteristiche sintattiche considerate sono:
• il numero di teste verbali;
2Rapporto tra il numero di tipi (token non ripetuti) e il numero di token 3Lista di UD pos incluse: ’ADJ’, ’NOUN’, ’NUM’, ’PROPN’, ’VERB’
• il numero di teste verbali per frase;
• il numero di radici verbali;
• il numero di radici verbali per frasi;
• il numero di token per clausola;
• l’arit`a totale dei verbi: il numero totale di di dipendenti delle teste verbali;
• l’arit`a media dei verbi;
• la frequenza delle arit`a dei verbi;
• la distribuzione delle arit`a dei verbi;
• la lunghezza media dei link sintattici, ovvero la distanza tra testa e dipendente calcolata in numero di token;
• la lunghezza del link sintattico pi`u lungo;
• la profondit`a media degli alberi sintattici;
• la distribuzione delle etichette delle dipendenze;
• la frequenza delle etichette delle dipendenze;
• la percentuale di soggetti preverbali;
• la percentuale di soggetti postverbali;
• la percentuale di complementi oggetto postverbali;
• il numero di sequenze di complementi preposizionali a testa nominale;
• la lunghezza media delle catene preposizionali;
• la distribuzione delle catene preposizionali per lunghezza;
• la frequenza delle catene preposizionali per lunghezza;
• il numero di proposizioni subordinate;
• la lunghezza totale delle catene di proposizioni subordinate; a distribu-zione delle catene di proposizioni subordinate divise per lunghezza;
• la frequenza delle catene di proposizioni subordinate divise per lun-ghezza;
• il numero di proposizioni subordinate precedenti alla proposizione prin-cipale;
• il numero di proposizioni subordinate successive alla proposizione prin-cipale;
Il corpus inglese utilizzato per gli esperimenti `e annotato con una versione precedente di UD, per questo sono stati necessari alcuni ulteriori adattamenti. In particolare le differenze principali riguardano la struttura dei sintagmi preposizionali, dei predicati nominale e delle frasi subordinate. Inoltre tale corpus `e sprovvisto di annotazione morfologica per cui non `e stato possibile estrarre le caratteristiche morfologiche ad eccezione della densit`a lessicale.
Esperimenti
Le analisi descritte in questo capitolo sono state svolte al fine di verificare qua-li caratteristiche qua-linguistiche generano complessit`a per gli umani e quali per le macchine, incrociando e confrontando i risultati ottenuti. Gli esperimenti sono stati svolti per la lingua italiana.
Per svolgere gli esperimenti sono stati sviluppati degli script in Python1. La riproducibilit`a degli esperimenti `e garantita da un codice pulito, ben com-mentato e docucom-mentato; inoltre `e disponibile un script bash tramite il quale possono essere eseguiti tutti gli script. Per risolvere le dipendenze degli script `
e sufficiente eseguire l’installazione via pip2 o il file setup.py con parametro install.
Il lavoro svolto si pu`o dividere in quattro fasi principali:
1. preparazione degli esperimenti;
1La documentazione del codice `e disponibile in appendice 2pip `e un comune package manager per Python
2. sviluppo degli esprimenti per valutare la complessit`a linguistica per gli umani;
3. sviluppo degli esprimenti per valutare la complessit`a linguistica per le macchine;
4. sviluppo degli strumenti per confrontare le valutazioni sulla complessit`a linguistica per gli umani e per le macchine.
Passiamo ora ad analizzare queste quattro fasi.
4.1
Preparazione degli esperimenti
Per compiere questi esperimenti `e stata utilizzata una treebank gold standard annotata secondo lo schema UD. Questa treebank (Simi, Bosco e Montema-gni, 2014) `e il frutto di un lavoro di conversione e unione di due treebank italiane: (i)la Turin University Treebank (TUT) (Bosco, Lombardo e Lesmo, 2000) dell’Universit`a di Torino; (ii)la treebank ISST-TANL costruita con-giuntamente dall’ILC-CNR e dall’Universit`a di Pisa a partire dalla Italian Syntactic-Semantic Treebank (Montemagni e altri, 2003). In tabella 4.1 sono riportate alcune statistiche sulla treebank utilizzata.
Da questa treebank sono state estratte 1122 frasi secondo alcuni criteri. Preliminarmente `e stato costruito un dizionario di frequenza dei lemmi a partire da Pais`a (Lyding e altri, 2014), un grande corpus italiano annotato automaticamente costituito da 380,000 documenti estratti da circa 1,000 siti web per un totale di 250 milioni di parole. Il dizionario `e costituito da
Dato Treebank italiana Numero di frasi 11,699 Numero di token 26,5992 Numero di forme diverse 27,941 Numero di lemmi diversi 17,817 Lunghezza media delle frasi 22.74
Tabella 4.1: Statistiche sulle treebank utilizzate
2,156,383 lemmi di cui 1,209,122 sono hapax legomena3. Sono state scartate dalla treebank le frasi che contenevano lemmi non presenti nel dizionario o presenti come hapax legomena escludendo nomi propri e numerali. Questo filtro `e stato posto al fine di evitare di generare complessit`a a livello lessicale in quanto l’argomento esula da questo studio.
Le frasi sono state quindi raggruppate per lunghezza in termini di numero di token. Sono stati creati 6 gruppi di frasi di lunghezza 10, 15, 20, 25, 30, 35 token con un range di ±1. Come `e noto in letteratura (McDonald e Nivre, 2007 e Miller, 1956) la complessit`a linguistica dipende strettamente dalla lunghezza della frase, per cui `e sembrato sensato studiare il problema anche bloccando la lunghezza delle frasi. In tabella 4.2 sono riportati il numero di frasi estratte per ogni gruppi.
Per ogni gruppo sono estratte le prime 200 frasi ordinate per frequenza media dei lemmi escludendo nomi propri e numerali, ad eccezione dei gruppi 30 e 35, per i quali erano disponibili rispettivamente 199 e 123 frasi. Queste
3L’hapax legomena `e una forma linguistica che compare una sola volta nell’ambito di
gruppi Numero di frasi 10 468 15 421 20 326 25 209 30 199 35 123
Tabella 4.2: Numero di frasi estratte per ogni gruppo
frasi sono state utilizzate per gli esperimenti.
Le frasi erano disponibili solo in formato CoNLL gi`a tokenizzate, pertanto `e stato necessario sviluppare un linearizzatore che grazie ad una sequenza di euristiche ci ha consentito di ricostruire le frasi originali automaticamente. Il linearizzatore `e documentato in appendice. Lo schema di codifica UD prevede di dividere le frasi dopo i due punti, per cui avevamo alcune frasi che terminavano con i due punti. Queste sono state riviste manualmente al fine di valutare la segmentazione pi`u corretta. Nel caso che le due frasi separate dai due punti fossero indipendenti i due punti sono stati sostituiti con il punto. In caso contrario, le frasi sono state eliminate poich´e avrebbero potuto creare incomprensioni per gli annotatori umani andando ad alterare i risultati.
Prima di passare alla descrizione degli esperimenti introduciamo alcune misure statistiche utilizzate per analizzare i risultati ottenuti.
4.1.1
Misure statistiche adottate
Krippendorff ’s Alpha-Reliability La Krippendorff’s Alpha-Reliability (Krippendorff, 2001) `e una misura ideata per calcolare il grado di accordo tra osservatori, annotatori o votanti e di conseguenza l’affidabilit`a dei dati ottenuti per task di classificazione ad n-classi. Questo indice `e stato utiliz-zato per valutare quanto siano affidabili i risultati ottenuti dalle annotazioni degli umani.
Krippendorff’s alpha `e un coefficiente di affidabilit`a che serve a misurare il livello di corrispondenza tra annotatori.
Prima di definire matematicamente il Krippendorff’s alpha, abbiamo bi-sogno di qualche definizione preliminare.
Costruiamo una matrice di affidabilit`a, di dimensioni m × N , in cui m rappresenta il numero di osservatori e N rappresenta il numero di unit`a an-notate. Denotiamo con (cij) gli elementi della matrice.
Costruiamo la matrice (oc,k) nel seguente modo:
ock = X
u
γ(c, k, u) mu
dove γ(c, k, u) `e il numero delle coppie c k nell’unit`a u e mu `e il numero di valori nell’unit`a u. Denotiamo con nc= X k ock
Il coefficiente Krippendorff’s α `e definito dalla seguente relazione:
α = 1 − D0 De ,
dove D0 rappresenta il livello di disaccordo osservato nelle unit`a di analisi:
D0 = 1 n X c X k ockδck2
e De rappresenta il livello di disaccordo atteso:
De= 1 n(n − 1) X c X k nc· nkδck2 .
La metrica utilizzata `e la metrica delle differenze quadratiche (interval ), particolarmente adattate per task di annotazione di classi ordinate, ovvero:
δck2 = (c − k)2.
Nell’ambito di questo progetto `e stata sviluppata un’implementazione in Python della Krippendorff’s Alpha-Reliability nella forma generale compu-tazionale (Krippendorff, 2001, pag. 9), tramite la quale `e possibile definire qualsiasi metrica. Crediamo che questo possa essere uno strumento utile per la comunit`a scientifica, per questo `e stato rilasciato in maniera open source con licenza GPL 3.0 su GitHub4.
Pearson Correlation Siano X e Y due variabili aleatorie. Definiamo il coefficiente di correlazione di Pearson nel seguente modo:
ρX,Y =
cov(X, Y ) σXσY
dove cov(X, Y ) ´e la covarianza tra X e Y , ovvero
cov(X, Y ) = E[(X − E[X])(Y − E[Y ])], e σX e σY sono le deviazioni standard di X e Y , ovvero
σX = p
(E[X − E[X]])2.
Spearman Correlation Il coefficiente di correlazione di Spearman `
e definito come il coefficiente di correlazione di Pearson tra il rank delle variabili.
Assegnato un campione di dimensione n, i valori Xi e Yi sono conver-titi in rank, che denotiamo con rg(Xi) e rg(Yi); definiamo coefficiente di correlazione di Spearman come
rs = ρrg(X),rg(Y )=
cov(rg(X), rg(Y )) σrg(X)σrg(Y )
.
Per entrambi i coefficienti di correlazione Pearson e Spearman `e stato calcolato anche il p-value con metodo Two-tail che ci d`a indicazione sulla rilevanza statistica delle correlazioni.
4.2
Esperimenti di analisi della complessit`
a
per l’uomo
Le frasi estratte e linearizzate sono state caricate sulla piattaforma di cro-wdsourcing CrowdFlower al fine di fare annotare dagli umani il grado di complessit`a. Utilizzando questa piattaforma `e stato possibile ottenere una
Figura 4.1: Istruzioni fornite agli annotatori ed esempio di frase da analizzare.
grande quantit`a di dati annotati manualmente a fronte di un compenso eco-nomico. In particolare `e stato chiesto agli annotatori di valutare quanto complesse fossero le frasi selezionate in una scala da 1 a 7. In figura 4.1 sono riportate le istruzioni date agli annotatori e un esempio di frase da analizzare. Ogni frase `e stata fatta valutare da 20 annotatori.
Prima di somministrare il compito di annotazione sul totale le frasi so-no stati fatti alcuni esperimenti preliminari su un sottoinsieme di frasi per definire la configurazione del sistema pi`u consona al nostro obbiettivo; sono state annotate 120 frasi, 20 per ogni gruppo di frasi a lunghezza fissa, per un totale di 2400 annotazioni.