Linguistica Computazionale
23 novembre 2016
TAL: algoritmi di ML
•  Esistono due grandi categorie di algoritmi basati su
metodi di ML:
•  algoritmi non supervisionati (unsupervised):
•  non necessitano di un corpus annotato a mano per
creare il modello
•  adatti a compiti di organizzazione dei dati, quali ad
esempio:
•  il ranking dei dati testuali rispetto ad una qualche
funzione
•  e il clustering (raggruppamento dei testi o di elementi
estratti dal testo per una qualche relazione di
similitudine tra i dati)
2
TAL: algoritmi di ML
•  algoritmi supervisionati (supervised):
•  utilizzano corpora annotati a mano per la creazione
dei modelli (corpus di addestramento o training set)
•  adatti a risolvere problemi di classificazione: dato un
insieme di classi predefinite determinare a quale
classe appartiene una certa entità
•  Problema: Per utilizzare algoritmi supervisionati
bisogna trasformare i compiti di TAL in compiti di
classificazione
3
ML non supervisionato:
Clustering
l 
L’algoritmo raggruppa l’input sulla base di una qualche
relazione di similitudine:
Possibile output 1:
Input:
Raggruppati rispetto al colore
ML non supervisionato:
Clustering
l 
L’algoritmo raggruppa l’input sulla base di una qualche
relazione di similitudine:
Possibile output 2:
Input:
Raggruppati rispetto alla forma
ML non supervisionato:
Clustering
l 
L’algoritmo raggruppa l’input sulla base di una qualche
relazione di similitudine:
Possibile output 3:
Input:
Raggruppati rispetto alla dimensione
ML supervisionato:
Classificazione
l 
l 
Dato un training set:
A
B
Classifica i dati in input:
Input:
Output:
A B
A B A
B
B
B
Trattamento Automatico della Lingua
testo
TestoAnalizzato
Sentencespli8er
Tokenizzatore
Analizzatore
Morfologico
POS Tagger
Analisisinta6ca
segmenta il testo in frasi
Task di solito
modellati con
algoritmi ML
segmenta ogni frase in unità ortografiche
produce le interpretazioni morfologiche di ciascuna
unità ortografica
seleziona l’interpretazione morfologica corretta
(Part of Speech Tagging)
analizza la struttura sintattica della frase
8
Analisiseman:ca
identificazione della classe semantica delle parole,
relazioni semantiche, ecc.
Corpora annotati
l 
Annotare un corpus
l 
l 
aggiungere ad un corpus codici (markup) che rendono esplicita e machine
readable l’informazione relativa alla struttura linguistica del testo
Vari livelli di annotazione linguistica:
l 
l 
l 
l 
l 
l 
l 
l 
l 
morfosintattica
lemmatizzazione
sintattica
semantica
fonetica
prosodica
pragmatica
…
(corpora di parlato)
(corpora di parlato)
(corpora di parlato)
I corpora non annotati vengono anche detti “raw corpora”
9
Perché annotare un corpus?
l 
I corpora annotati permettono di usare il computer per ricerche ed elaborazioni
più avanzate dei dati linguistici
l 
i “codici” linguistici possono essere immediatamente recuperati (es. con espressioni
regolari) o usati per popolare un database
Oggi a <word sem=“location”> Bruxelles </word>vertice della <word sem=“institution”> Ue </word> sull‘
<word sem=“location>IRAQ</word>. <word sem=“person”>Blair</word> <word lemma=“scrivere”
pos=“V”>scrive</word> agli altri per chiedere una posizione <word lemma=“comune” pos=“A”>comune</
word>
La <word sem=“institution”>NATO</word> in <word lemma=“difesa” pos=“S”>difesa</word> della <word
sem=“location”>Turchia</word>
<word lemma=“accordo” pos=“S”> Accordo</word> in extremis sull'aiuto all' alleato in prima linea
DAL NOSTRO <word lemma=“corrispondente” pos=“S”> CORRISPONDENTE</word> <word
lemma=“Franco” pos=“SP” sem=“person”> FRANCO</word> PAPITTO
Ricerche per:
•  lemma
•  categoria morfosintattica
•  categoria semantica
10
Perché annotare un corpus?
l 
I corpora annotati sono usati per addestrare
modelli computazionali basati su algoritmi di
apprendimento automatico supervisionato
l 
l 
training corpora annotati
I corpora annotati sono usati per valutare i
sistemi di NLP
l 
test corpora annotati come gold standard
training corpus
annotato
sviluppo
Strumenti e
applicazioni di NLP
valutazione
test corpus
annotato
11
Metodi di annotazione
linguistica
l 
Annotazione manuale
l 
l 
necessaria per alcuni tipi di annotazione (es. pragmatica, prosodica)
altamente costosa e lenta
l 
l 
inconsistenza nell’applicazione
l 
l 
necessità di “addestrare” gli annotatori
incoerenza tra annotatori (che usano criteri diversi per annotare) e di
ciascun annotatore (che può usare di volta in volta criteri diversi)
Annotazione (semi)-automatica
l 
l 
rapidità di sviluppo
errori consistenti
l 
l 
taggers à 98% precisione
parsers à ca. 85% precisione
12
Corpora e strumenti di
annotazione
tool NLP
di
annotazione
raw corpus
algoritmi
di
machine learning
revisione
manuale
corpus
annotato
13
Annotazione e sviluppo di
strumenti di NLP
l 
Ciclo virtuoso tra annotazione di corpora e sviluppo di strumenti
di NLP attraverso l’uso di metodi di machine learning
sviluppo e valutazione
sviluppo
corpora annotati
Strumenti e
applicazioni di NLP
valutazione
annotazione (semi)automatica
14
The MATTER Annotation Development Process
Pustejovsky & Stubbs (2013), Natural Language Annotation
for Machine Learning, O’Reilly
15
The MATTER Annotation Development Process
Pustejovsky & Stubbs (2013), Natural Language Annotation
for Machine Learning, O’Reilly
l 
Model
l 
l 
Annotate
l 
l 
test del sistema addestrato su un nuovo campione di dati annotati
Evaluate
l 
l 
addestramento di un algoritmo di ML sul corpus annotato
Test
l 
l 
annotazione del corpus con uno schema di annotazione basato
sulle feature identificate
Train
l 
l 
descrizione teorica di un fenomeno linguistico con l’identificazione
degli attributi (feature) da annotare
valutazione delle performance del sistema
Revise
l 
revisione del modello linguistico e dello schema di annotazione
per renderlo più robusto e affidabile per l’uso con l’algoritmo di ML
16
Cosa annotare?
I contenuti dell’annotazione linguistica
l 
Schema di annotazione
l 
l 
l 
un repertorio di categorie linguistiche per l’annotazione,
corrispondenti alla tipologia dei tratti da rappresentare nel
testo
l  generalmente espresso nella forma di attributi e dei loro
possibili valori
la definizione delle regole di compatibilità tra categorie
l  es. l’aggettivo non possiede un attributo di persona, o un
nome quello di tempo
la specifica accurata dei criteri di applicazione al testo delle
categorie selezionate
Uno schema di annotazione definisce il contenuto linguistico dell’annotazione, non il
modo in cui l’annotazione è proiettata sul testo
17
PoS Tagged Corpora
l 
Corpora annotati morfosintatticamente
l 
l 
categoria della parola (part of speech)
tratti morfologici
l 
l 
l 
l 
l 
l 
genere
numero
persona
tempo
…
Corpora lemmatizzati
l 
indicazione del lemma della forma
l 
ha → AVERE
18
TANL/ISST-CONLL tagset
Attardi, Lenci, Montemagni, Simi
l 
Tagset morfosintattico per l’italiano sviluppato nel progetto
SemaWiki (http://medialab.di.unipi.it/wiki/SemaWiki)
Coarse-grained
PoS tags
19
TANL/ISST-CONLL tagset
Attardi, Lenci, Montemagni, Simi
Fine-grained PoS tags
20
TANL/ISST-CONLL tagset
Attardi, Lenci, Montemagni, Simi
morphological features
morphological features values
21
TANL/ISST-CONLL tagset
Attardi, Lenci, Montemagni, Simi
Il tagset applicato al testo
22
Corpora annotati sintatticamente
l 
Treebanks (database sintattici)
l 
l 
l 
corpora annotati con l’analisi sintattica (parse) delle frasi
tipi di informazione:
l  struttura a costituenti (bracketing)
l  relazioni (funzioni) grammaticali (es. soggetto, oggetto,
ecc.)
l  struttura predicativa (es. predicato, argomenti, aggiunti,
ecc.)
Schemi di annotazione sintattica
l 
l 
labelled bracketing (tree structure)
dependency structure
23