Title: Elaborazione del linguaggio naturale
1Elaborazione del linguaggio naturale
- Maria Teresa PAZIENZA
- a.a. 2007-08
2Intelligenza artificiale
- Il linguaggio è un meccanismo di comunicazione il
cui tramite è il testo o il discorso. - Una macchina sarà considerata veramente
intelligente solo quando sarà in grado di
elaborare il linguaggio naturale come fa un
umano. - Lingegneria è interessata, oltre che alla
creazione di nuova conoscenza, anche alla
creazione di sistemi per ottenere gli obiettivi
desiderati. - I sistemi ingegnerizzati devono essere conformi a
specifici criteri di adeguatezza (es. criteri
legati allesecuzione di processi in un certo
tempo ed in un certo spazio)
3Elaborazione del linguaggio naturale
- I metodi, le tecniche, i tools, e le applicazioni
relativamente alla modellizzazione delluso del
linguaggio naturale costituiscono le tecnologie
del linguaggio naturale (ingegneria del
linguaggio naturale)
4Ingegneria del linguaggio naturale
- Sistemi per lelaborazione del linguaggio
naturale - Sviluppo di algoritmi per il parsing, la
generazione, e la acquisizione di conoscenza
linguistica - Indagine sulla complessità spaziale e temporale
di tali algoritmi - Progettazione dei linguaggi formali
computazionalmente utili (es. grammatiche e
formalismi lessicali) per codificare conoscenza
linguistica - Indagine su architetture software appropriate
- Considerazioni sui tipi di conoscenza non
linguistica che vengono a contatto - Problematiche di integrazione in sistemi
applicativi più ampi
5Elaborazione del linguaggio naturale
- Un programma conta il numero di bits, bytes e
linee in un file testo quando conta le parole
dello stesso file di testo, allora è necessario
che abbia conoscenza di ciò che significa essere
una parola. - Sono richieste varie tipologie di conoscenza
linguistica per elaborare un testo
6Elaborazione del linguaggio naturalemorfologia
- La morfologia fornisce informazioni su le forme
possibili per ogni parola del linguaggio ed il
loro comportamento. Inoltre riconosce le
variazioni delle parole singole. - di, del, della, delle,
- casa, case, casetta,
- capostazione, capistazione,
- la, le, lo, gli,
- la, lo, li,
7Elaborazione del linguaggio naturalesintassi
- La sintassi contiene la conoscenza necessaria per
spiegare come sequenze di parole possono non aver
alcune senso a dispetto di altre sequenze che
contengono invece esattamente, e nellordine
corretto, le stesse parole. - La FIAT produce autovetture
- La autovetture produce FIAT
8Elaborazione del linguaggio naturalesemantica
- Per capire il significato di una frase, oltre
alla conoscenza delle parole e della struttura
sintattica, è necessario avere - conoscenza del significato di ogni parola
componente la frase (semantica lessicale) e - conoscenza di come queste componenti si combinino
per formare significati più larghi (semantica
composizionale)
9Elaborazione del linguaggio naturalepragmatica
- Luso appropriato di espressioni di cortesia, o
di stile a sottolineare la volontà di essere
cortese (amareggiato, contrariato, affabile,
benaugurale, volitivo, ) sono descritte dalla
pragmatica. - La strutturazione corretta dei termini in
risposta ad una domanda allinterno di una
conversazione richiede conoscenza della struttura
del discorso.
10Elaborazione del linguaggio naturale
- In sintesi la conoscenza del linguaggio
necessaria per la comprensione dei testi si
articola in 5 distinte categorie - Morfologia scomposizione delle parole in unitÃ
minime di significato (dogsdogs) - Sintassi definizione delle relazioni strutturali
tra le parole - Semantica attribuzione del significato delle
espressioni - Pragmatica studio di come il linguaggio è usato
per raggiungere un obiettivo (usi/convenzioni
linguistiche) - Analisi del discorso identificazione delle
relazioni tra unità linguistiche più ampie della
singola frase
11Elaborazione del linguaggio naturale
- Lelaborazione di un testo prevede lattivazione
di tool con conoscenza linguistica per lanalisi
delle singole componenti e la risoluzione di
possibili interpretazioni ambigue in ciascuna
delle singole fasi. - Un testo è ambiguo se esistono più strutture
linguistiche alternative che possono essere
generate durante le fasi di analisi
(non-determinismo) - Lambiguità è il motivo per cui le macchine non
riescono ad elaborare completamente il linguaggio
naturale.
12Elaborazione del linguaggio naturale
- Problema dellambiguitÃ
- La vecchia porta la sbarra
- Esistono più interpretazioni di questa frase
- una vecchia signora trasporta una sbarra
- una vecchia porta sbarra una signora
13AmbiguitÃ
- Una vecchia porta la sbarra
- 1-una articolo
- 2-vecchia aggettivo/sostantivo
- 3-porta sostantivo/verbo
- 4-la articolo/pronome
- 5-sbarra sostantivo/verbo
- Proliferazione degli alberi sintattici
- Assegnazione di più di un significato alla frase
14AmbiguitÃ
- Fare un piano
- Fare verbo
- Un articolo
- Piano sostantivo/avverbio/aggettivo
- Assegnazione di più di un significato alla frase
- Fare costruire, progettare, ideare
- Piano pianoforte, progetto, piano dazione,
piano delledificio - Word-sense disambiguation (lexical
disambiguation) , Context analysis - Fare un piano (di corsa)
15AmbiguitÃ
- La palla di Maria era arrivata davanti ai piedi
di Mario. Lui le diede un calcio. - Assegnazione di più di un significato alla frase
- risoluzione dellanafora (def. il riferirsi di
una parola, solitamente un pronome, a una o più
parole precedenti diz. De Mauro) - conoscenza di dominio
- senso comune
16AmbiguitÃ
- Il fiume scorre veloce nel suo alveo
- Il traffico scorre veloce nella strada
principale - Giovanni ama Maria
- Giovanni ama i racconti davventura
- Assegnazione di più di un significato alla frase
- metafora (def. figura retorica che consiste nel
trasferire il significato di una parola o di
unespressione dal senso proprio a un altro
figurato che abbia con il primo un rapporto di
somiglianza diz. De Mauro)
17AmbiguitÃ
- Lauto verde è arrivata sul tavolo della
Presidenza del Consiglio - Cè acqua in frigo?
- Assegnazione di più di un significato alla frase
- metafora
- nomi propri
- terminologia
- modello del mondo
- senso comune
18AmbiguitÃ
- Mario guardò la ragazza con la minigonna
- Mario guardò la ragazza con la cartella
- Mario guardò la ragazza con il binocolo
- Mario guardò la ragazza con il collega
- Mario guardò la ragazza con sospetto
- strutture argomentali dei verbi
- contesto
- senso comune
19AmbiguitÃ
- Il significato di una frase non è dato solo dal
significato delle parole - Si richiede la conoscenza delle regole che
governano - il significato con cui le parole sono combinate,
- lordine con cui compaiono,
- i legami che le legano ad altri termini
allinterno ed allesterno della frase. - E spesso necessario fare delle inferenze ed
avere una conoscenza del mondo.
20Perché lambiguità è un problema?
- Lo spazio di ricerca esplosione combinatoriale
- Sostanzialmente lambiguità aumenta il numero
delle possibili interpretazioni delle espressioni
in ling. nat. da controllare. Lesplosione
combinatoriale deriva dal dover moltiplicare le
analisi per ciascuna diversa interpretazione. - Es. Supponiamo che ciascuna parola di una frase
di 10 parole possa avere 3 interpretazioni il
numero totale delle interpretazioni della frase
sarebbe - 3333333333 59049
21Perché lambiguità è un problema?
- Ambiguità locale - globale
- Ambiguità globale
- Giovanni conosce molte più ragazze di Mario
- Ambiguità locale
- anche se lui ne conosce molte
- Ambiguità locale significa che una parte della
frase può avere più di una interpretazione - Ambiguità globale significa che lintera frase
può avere più di una interpretazione
22Perché lambiguità è un problema?
- Ambiguità locale - globale
- Lambiguità locale si può talvolta risolvere con
lanalisi sintattica - es. The old trains
- the young (1)
- left the station (2)
- La sintassi permette di disambiguare che train
nella frase 1 è verbo e nella frase 2 è sostantivo
23Perché lambiguità è un problema?
- Ambiguità locale - globale
- Lambiguità globale richiede unanalisi semantica
e pragmatica - es. Vidi il Gran Canyon volare a New York (1)
- Vidi il Boeing 747 volare a New York (2)
- Il significato delle due frasi viene disambiguato
perché sappiamo cosa può volare e cosa no
(semantica). - In particolari circostanze le interpretazioni
possono cambiare (pragmatica)
24Tipi di ambiguitÃ
- Ambiguità categoriale
- (1)Time is money (sostantivo)
- (2)Time me on the last lap (verbo)
- Lanalisi sintattica aiuta ad identificare la
categoria corretta - (3) Time flies like an arrow
- Esistono 5 possibili analisi sint. per questa
frase dove time può essere sostantivo, verbo,
aggettivo
25Tipi di ambiguitÃ
- Word-sense ambiguity
- Una parola ha diversi significati (sensi)
- (1) The battery was charged with jump leads
- (2) Thief was charged by PC Smith
- (3) The lecturer was charged with students
recruitment - Lanalisi sintattica aiuta a disambiguare
- charged with, charged by
- Lanalisi semantica aiuta a disambiguare
- jump leads , student recruitment
26Tipi di ambiguitÃ
- Ambiguità strutturale
- Metti la scatola sul tavolo dalla finestra nella
cucina - Possibili interpretazioni
- (1)Metti la scatola (una scatola specifica,
quella sul tavolo ) dalla finestra nella cucina - (2)Metti la scatola sul tavolo (un tavolo
specifico) dalla finestra nella cucina - Problema della ambiguità proposizionale (in
assenza di punteggiatura)
27Tipi di ambiguitÃ
- Ambiguità referenziale
- Dopo che ebbero finito lesame gli studenti e i
professori lasciarono laula - Possibili interpretazioni
- (1) gli studenti finirono lesame
- (2) gli studenti ed i professori finirono lesame
- (3) gli studenti ed i professori lasciarono
laula - Situazioni attese (usando i frame)
- (1) Giovanni diede a Marco un regalo e lui
ringraziò
28Tipi di ambiguitÃ
- Ellissi
- Frasi incomplete dove non è chiaro il termine
mancante. - Giovanni aveva studiato molto e superò lesame.
Anche Mario - (1)Mario aveva studiato molto
- (2)Mario superò lesame
- (3)Mario aveva studiato molto e superò lesame
29Elaborazione del linguaggio naturale
- Lelaborazione del linguaggio naturale richiede
la descrizione di un modello del mondo. - Gran parte del significato non risiede
allinterno delle parole, per cui il sistema di
NLP deve avere la conoscenza del senso comune, o
un modello del mondo usato da chi ha scritto il
testo!
30 E sempre necessario capire tutto?
- Giovanni ha comprato una Punto dal
concessionario. - Chi ha venduto una Punto? Il concessionario
- Giovanni ha regalato un anello alla sua
fidanzata. - Cosa ha avuto in dono la fidanzata di Giovanni?
Un anello.
31Applicazioni possibili
- Fornire spiegazioni a chi le chieda, anche per
telefono (call center) - Calcolare la valutazione di un servizio
attraverso il commento espresso da un utente
(opinion mining) - Capire il testo di una pagina web e decidere a
chi possa interessare (semantic web) - Tradurre la pagina di un quotidiano
- Capire il testo di un giornale/libro e costruire
un sistema esperto a partire da questa conoscenza - Generare risposte o testo libero per
documentazione
32Ruolo della sintassi
- La sintassi
- identifica il ruolo delle parole in una frase
- descrive come le parole sono raggruppate in
classi dette POS (part-of-speech) - mostra come le parole sono collegate tra loro
allinterno di una frase - spiega come le parole sono collegate ad altre
allinterno di più frasi.
33POS / tag lessicali
- Sono riconosciute almeno 8 classi principali
- noun, verb, adverb, pronoun, article,
preposition, conjunction, participle - che permettono di associare un significato alla
parola cui si riferiscono. Sapere se una parola è
un pronome o un nome ci permette di riconoscere
la tipologia di altre parole vicine alla prima. - Sono utili anche per le applicazioni (es. IR)
34POS / tag lessicali
- Le POS si dividono in due categorie
- open class (con un numero imprecisato, ed in
continua evoluzione, di elementi) - closed class (con un numero fisso di elementi)
- function words (parole corte e usate
frequentemente che assumono un ruolo importante
in una grammatica)
35Come rappresentiamo la sintassi?
- Lista
- Sue hit John
- s, np, proper_noun, Sue ,
- vp, v,hit ,
- np, proper_noun, John
- Parse tree
- Un modo di mostrare la struttura di un frammento
di linguaggio (slide successiva)
36(No Transcript)
37Grammatica
- Una grammatica descrive quali sono le strutture
ammesse in un linguaggio e divide una frase in
simboli terminali - Regole di riscrittura
- sentence -gt noun phrase, verb phrase
- noun phrase -gt noun
- noun phrase -gt determiner, noun
- verb phrase -gt verb, noun phrase
38Grammatica
- Transition network
- (come attraversare una frase con strutture idonee)
39They are cooking apples parse tree
40They are cooking apples parse tree
41Mario ama il calcio top-down strategy
- S
- S -gt np, vp
- S -gtprpn, vp
- S -gtMario, v, np
- S -gtMario, ama, np
- S -gtMario, ama, det, n
- S -gtMario, ama, il, n
- S -gtMario, ama, il, calcio
- Va bene se esistono simboli terminale alternativi
per ciascuna parola - Va male se esistono regole alternative per una
frase
42Mario ama il calcio bottom-up strategy
- Mario ama il calcio
- Prpn, ama , il, calcio
- Prpn, v, il, calcio
- Prpn, v, det, calcio
- Prpn, v, det, n,
- Np, v, det, n
- Np, v, np
- Np, vp
- S
- Va bene se esistono regole alternative per una
frase - Va male se esistono simboli terminale alternativi
per ciascuna parola
43Strategie di ricerca
- Depth first
- Attiva le regole una per volta e torna indietro
se fallisce (facile da programmare, richiede poca
memoria, va bene se il parse tree è profondo) - Breadth first
- Attiva tutte le regole insieme (può essere più
veloce, lordine con cui appaiono le regole non è
rilevante, va bene se il parse tree è piatto)
44Prolog per scrivere grammatiche
- Una semplice grammatica
- s --gt np vp
- np --gt det n
- np --gt det adj n
- vp --gt v np
- dove
- s sentence the cat ate the big fish
- np noun phrase the cat
- vp verb phrase ate the big fish
- det determiner the
- n noun cat
- v verb ate
- adj adjective big
45Prolog per scrivere grammatiche
- Si può usare il Prolog per esprimere grammatiche
facendo corrispondere una regola Prolog a
ciascuna regola della grammatica es - sentence (S) -
- noun_phrase (NP), verb_phrase (VP), append
(NP,VP,S). - noun_phrase (NP) -
- determiner (D), noun(N), append (D,N,NP).
- noun_phrase (NP) -
- determiner (D), adj(A), noun (N), append
(D,A,AP), append (AP,N,NP). - verb_phrase (VP) -
- verb (V), noun_phrase (NP), append (V,NP,VP).
- .
46Prolog per scrivere grammatiche
-
- determiner (D) -
- member (D,the,a,an).
- noun (N) -
- member (N,cat, dog, mat, meat, fish).
- adj (A) -
- member (A,big, fat, red).
- verb (V) -
- member (V,ate, saw, killed, pushed).
47Parser
- Il parser è un algoritmo che usa una grammatica e
un lessico per riconoscere la struttura di una
frase. Linput è la frase da analizzare, loutput
è una qualche rappresentazione della struttura
della frase. - Lessico
- Il lessico mostra a quale simbolo terminale
(simbolo che non può essere ulteriormente
suddiviso) appartiene una parola del linguaggio
(es. - Eat verbo
- Ducknoun
- Duckverbo
48Prolog per analizzare frasi parser
- s( sentence(NP,VP)) --gt np(NP), vp(VP).
- np(noun_phrase(NP)) --gtprpn(PN)
- np(noun_phrase (D,N) --gtdet (D), n(N).
- np(noun_phrase (D,A,N)--gt det(D),adjs(A),n(N).
- adjs(adjective_phrase(A)--gtadj(A).
- adjs(adjective_phrase(A,AJ))--gt adj(A),adjs(AJ).
49Prolog per analizzare frasi parser
-
- vp(verb_phrase (V)) --gt v(V).
- vp(verb_phrase(V,NP))--gt v(V),np(NP).
- det(determiner(X)) --gt X,member(X,a,an,the).
- n(noun(X)) --gt X,member(X,woman, food).
- prpn(proper_noun(X)) --gt X,member(X,john,sue,
bill). - adj(adjective(X)) --gt X,member(X,red,fat,new
). - v(verb(X)) --gt X,member(X,eats,likes,works)
.
50Fornire informazioni ad un utente
- Information retrieval
- Information extraction
- Question answering
- Summarization
- Textual entailment
- .
51Information extraction J. R. Hobbs
- An information extraction system is a cascade of
transducers or modules that, at each step, add
structure and often lose information, hopefully
irrelevant, by applying rules that are acquired
manually and/or automatically.
52Estrazione di informazione da testi
- Lestrazione di informazione da testi, IE
(information extraction) è un processo di
elaborazione che riceve in input testi e produce
in uscita, come risultato dellelaborazione, dati
non ambigui in un formato predefinito. - Questi dati possono essere usati immediatamente,
oppure possono essere conservati in una base di
dati per analisi ed applicazioni successive.
53IE versus IR
- Linformation retrieval IR ricerca testi e li
presenta allutente - Linformation extraction IE analizza testi e
presenta allutente solo quelle informazioni cui
egli è interessato (xxx informazioni rilevanti
xxx) - I sistemi di IE sono più costosi e richiedono
maggiore conoscenza (knowledge-intensive)
inoltre sono specifici per un particolare dominio
ed applicazione. Nellipotesi di avere a
disposizione grandi volumi di dati (domain
document collection - corpora), i sistemi di IE
diventano più efficienti di quelli di IR
54Problemi per lIE
- Il linguaggio naturale è
- Flessibile (modi diversi per affermare lo stesso
fatto) - Ambiguo (la stessa affermazione può avere più
significati) - Dinamico (vengono create nuove parole ed
assegnati nuovi sensi a vecchie)
55IE tasks
- MUC Message Understanding Conference
- Tradizionalmente si riconoscono 5 diversi task di
IE - NE Named Entity recognition (ricerca e
classificazione di nomi, luoghi, etc) - CO Coreference Resolution (identifica relazioni
di identità tra entità nei testi) - TE Template Element construction (aggiunge
informazioni descrittive ai risultai del NE
usando le CO) - TR Template Relation construction (ricerca
relazioni tra entità TE) - ST Scenario Template production (fa corrispondere
i risultati del TE e TR negli specifici eventi di
scenario
56Performance dei task IE
- La performance dei task di IE dipende in maniera
diversa da - Testo (tipo di testo in analisi articoli di
giornale, email, documenti web, ) - Dominio (argomento generale dei corpora, es
notizie finanziarie, domande di lavoro, offerte
commerciali, ) - Scenario (il particolare tipo di evento a cui è
interessato lutente del sistema di IE, es
fusione di compagnie, curricula, descrizione di
un prodotto, ) - Se si cambia la domanda di informazione ed il
corpus di partenza, le performance del sistema
possono cambiare.
57Named Entity recognition - NE
- Vengono riconosciuti tutti i nomi di
persone,luoghi, organizzazioni, date, quantità di
denaro. - Il 18 maggio 2006 il presidente Ciampi ha votato
nel Senato come senatore a vita. - Le azioni della FIAT ieri hanno subito un
ulteriore calo alla Borsa di Milano le perdite
dellazienda sono dellordine di qualche milione
di euro.
58Named Entity recognition - NE
- Vengono riconosciuti tutti i nomi di
persone,luoghi, organizzazioni, date, quantità di
denaro. - Il 18 maggio 2006 il presidente Ciampi ha votato
nel Senato come senatore a vita. - Le azioni della FIAT ieri hanno subito un
ulteriore calo alla Borsa di Milano le perdite
dellazienda sono dellordine di qualche milione
di euro.
59Named Entity recognition - NE
- Le performance del task di NE sono molto alte
(più del 90) e paragonabili a quelle umane
(difficoltà nel mantenere costanza di decisione
nel tempo e su collezioni di documenti di grandi
dimensioni )
60Coreference resolution - CO
- Vengono identificate nei testi relazioni di
identità tra entità (sia identificate dal NE, che
referenze anaforiche ad esse). - Task meno utile a sé stante ma importante per
applicazioni identificare, e collegare in un
ipertesto, tutte le occorrenze di una specifica
istanza in un documento e in più documenti. - Performance della CO basse (circa 60) e
dipendenti dal dominio.
61Coreference resolution - CO
- Oggi il nuovo Presidente della Repubblica
Italiana è entrato nel pieno delle sue funzioni - Giorgio Napolitano ha ricevuto una scolaresca
come primo atto da presidente della Repubblica
come ha avuto modo di dire loro, la
qualificazione culturale dei giovani deve
costituire un impegno per i responsabili della
nazione. Lui si impegnerà in questa direzione.
62Template Element production - TE
- Come risultato delle attività di NE e CO, il
sistema di IE diventa consapevole delle NE e
delle loro descrizioni. Ciò rappresenta un primo
livello di template (il cosiddetto template
element). - Linsieme dei template elements può essere
considerato come una prima base di conoscenza a
cui il sistema accede per ottenere informazioni
sui principali concetti di dominio, così come
essi sono stati riconosciuti nel testo. - La performance del task è circa 80, lumano
circa 90.
63Template Element production - TE
- ORGANIZZAZIONE 123456789-1
- ORG_NAME FIAT
- ORG_ALIAS Fiat
- ORG_TYPE Gruppo
- ORG_PLACE Torino
- ORG_COUNTRY Italia
64Scenario template extraction - ST
- Lestrazione del template di scenario rappresenta
la sintesi delle attività di task diversi,
soprattutto lidentificazione di alcuni template
element che sono in relazione tra loro. - Ciò rappresenta un evento (scenario) collegato al
dominio in esame. I valori riconosciuti vengono
usati per riempire il template di scenario.
65Scenario template extraction - ST
- TEMPLATES ST
- ltTEMPLATEgt DOC_NR Â 56Â
- CONTENT ltSUCCESSION EVENT 56-1gt
- Â
- ltSUCCESSION EVENT 56-1gt Â
- SUCCESSION_ORG ltORGANIZATION 56-1gt
- POST executive vice president
- IN_AND_OUT ltIN_AND_OUT 56-1gt
- ltIN_AND_OUT 56-1gt
- VACANCY REASON OTH_UNK
66Scenario template extraction - ST
- ltIN_AND_OUT 56-1gt
- IO_PERSON ltPERSON 56-2gt
- NEW STATUS OUT
- ON_THE_JOB NO
- Â
- ltIN_AND_OUT 56-1gt
- IO_PERSON ltPERSON 56-1gt
- NEW STATUS IN
- ON_THE_JOB NO
- OTHER ORG ltORGANIZATION 56-2gt
- REL_OTHER_ORG OUTSIDE_ORG
67Scenario template extraction - ST
- TEMPLATES TE
- ltORGANIZATION 56-1gt
- ORG_NAME Burns Fry Ltd.
- ORG_ALIAS Burns Fry
- ORG_DESCRIPTION this brokerage firm
- ORG_TYPE COMPANY
- ORG_LOCALE Toronto CITY
- ORG_COUNTRY Canada
- Â
- ltORGANIZATION 56-2gt
- ORG_NAME Merrill Lynch Canada Inc.
- ORG_ALIAS Merrill Lynch
- ORG_DESCRIPTION a unit of Merrill Lync Co.
- ORG_TYPE COMPANY
68Scenario template extraction - ST
- Â
- ltPERSON 56-1gt
- PER_NAME Donald Wright
- PER_ALIAS Wright
- PER_TITLE Mr.
- Â
- Â
- ltPERSON 56-2gt
- PER_NAME Mark Kassirer
69Architettura di un sistema di IE
- Generalmente un sistema di IE è caratterizzato
dai seguenti moduli fondamentali - Text Zoner, Pre-processor, Filter, Pre-parser,
Parser, Fragment Combiner, Semantic Interpreter,
Lexical Disambiguation, Coreference Resolution or
Discourse Processing, Template Generator.
70Architettura di un sistema di IE
- Text Zoning
- Questo modulo prende un testo e lo divide in
frammenti. Â - Pre-processor
- Vengono localizzati gli estremi delle frasi ed
identificata, per ciascuna di esse, una sequenza
di item lessicali (parole e Pos)Â - Filter
- Â Vengono eliminate le frasi irrilevanti (frasi
prive di item rilevanti per lapplicazione) per
ottenere testi brevi da elaborare
71Architettura di un sistema di IE
- Pre-parser
- Vengono riconosciute strutture frasili minime
(frasi nominali, verbi con ausiliari, termini
composti,) per semplificare il compito del
parser successivo. - Parser
- Partendo da sequenze di item lessicali
(frammenti) si produce un albero sintattico
dellintera frase. - Fragment Combination
- Si ricombinano gli alberi sintattici dei frammenti
72Architettura di un sistema di IE
- Semantic Interpretation
- Dallalbero sintattico si produce una struttura
semantica, una forma logica o un frame evento. Si
produce anche una prima disambiguazione
lessicale. - Lexical Disambiguation
- Si passa da una struttura semantica con predicati
ambigui o generali ad una con predicati specifici
e non ambigui. - Co-reference resolution
- Questo modulo risolve le coreferenze per entitÃ
elementari (pronomi, frasi nominali, anafora).
73Architettura di un sistema di IE
- Template Generation
- Tutte le strutture semantiche generate dalle
precedenti elaborazioni del linguaggio naturale
sono usate per produrre il template finale per
lutente solo nel caso in cui gli eventi
riconosciuti hanno una rilevanza per lutente
maggiore della soglia prefissata.
74Question/Answering - Q/A
- I sistemi di Q/A forniscono lindicazione del
brano che contiene la risposta ad una richiesta
dellutente (non rispondono direttamente). - 5 W (who, which, where, when, why)
- Necessità di identificare preliminarmente le aree
di interesse per lutente (classi di domande) per
finalizzare ad esse la struttura della
conoscenza del sistema
75Architettura sistemi di Q/A
Answer
76Architettura sistemi di Q/A
- Possono esserci loops
- Non tutti i sistemi di Q/A aderiscono a questa
architettura - Domande complesse (Quale delle sorelle Carlucci è
entrata in politica?) - Q/A in domini aperti o in domini chiusi
77Question/Answering - Q/A
- Answer type la classe di oggetti coinvolti dalla
domanda in genere sono strettamente collegati
alle classi di NE riconosciute. - Question focus proprietà od entità sottesa dalla
domanda (In quale città cè il Colosseo?) - Question topic loggetto o levento cui attiene
la domanda (es Qual è laltezza del monte
Everest?, il focus è laltezza, il topic è il
monte Everest) - Candidate passage un qualunque brano testuale
(dalla frase allintero documento) ritrovato in
fase di ricerca - Candidate answer nel contesto della domanda, una
piccola quantità di testo dello stesso tipo
dellanswer
78Question/Answering - Q/A
- Risorse comunemente usate
- Algoritmi di apprendimento automatico
- Gazeteers
- NE taggers
- Part of Speech taggers
- Parsers
- Wordnet
- Stopword list
- Terminologie di dominio
- .
79Question/Answering - Q/A
- Domande capziose
- Chi sono i 5 uomini più ricchi del mondo?
- Qual è lattrice più famosa?
- Chi disse la celebre frase Il dado è tratto?
80Summarization
- Text summarization
- Il processo di selezione delle informazioni più
importanti da una o più sorgenti di informazione
per produrre una versione trasversale per un
particolare utente o task. - Estratto
- Sommario consistente interamente di materiale
copiato dallinput - Abstract
- Sommario di cui parte del contenuto non è
presente nellinput (categorie, parafrasi del
contenuto, etc.)
81Summarization funzionalitÃ
- Sommari indicativi
- Forniscono una funzione di riferimento per
selezionare documenti per una lettura più
approfondita - Sommari informativi
- Coprono tutte le informazioni salienti del
documento sorgente con un certo dettaglio - Sommari valutativi
- Valutano largomento della sorgente esprimendo il
punto di vista del sistema sulla qualità del
lavoro dellautore
82Textual entailment
- Il textual entailment esprime una relazione tra
- un testo coerente T e
- una espressione linguistica detta ipotesi H
- Si dice che T entails H (T-gtH)
- se il significato di H può essere inferito dal
significato di T - Yahoo acquired Overture
- entails
- Yahoo owns Overture
83Textual entailment
- Funzione di entailment e(T,H)
- È una funzione probabilistica che mappa la coppia
T-H con un valore tra 0 ed 1 ed esprime la
confidenza con cui un giudice umano o un sistema
automatico può valutare la relazione esistente
tra T ed H. - Paraphrase
- Lipotesi esprime un fatto uguale a quello
espresso dal testo (Yahoo acquired Overture,
Yahoo bought Overture) - Strict entailment
- La frase contiene più fatti tra cui uno può
essere inferito dallaltro (Yahoo acquired
Overture, now Yahoo owns Overture)
84Approfondimenti
- Ruslan Mitkov Editor The Oxford Handbook of
Computational Linguistics (Oxford Handbooks in
Linguistics)
85Argomenti trattati
- Sistemi per lelaborazione del linguaggio
naturale - Morfologia, sintassi, semantica, prgmatica,
analisi del discorso - Ambiguità del linguaggio naturale (diverse forme
di ambiguità con diverse modalità di soluzione) - Applicazioni del TAL/NLP (information extraction
IE, Question/Answering Q/A, summarization,
textual entailment)