Sistemi basati su conoscenza
Comunicazione basata sul linguaggio
naturale
(grammatica, semantica)
Prof. M.T. PAZIENZA
a.a. 2003-2004
Comunicazione
La comunicazione è lo scambio intenzionale
di informazioni effettuato attraverso la
produzione e percezione di segni presi da un
sistema condiviso di segni convenzionali
Linguaggio = sistema complesso e strutturato
di segni per la comunicazione
Il linguaggio umano è altamente codificato e
copre un numero infinito di istanze di
comunicazione
Linguaggio
Parola
qualsiasi tipo di segno
comunicativo convenzionale
Parlante chi attiva la comunicazione
Ascoltatore chi riceve la comunicazione
Enunciato valore della comunicazione
Linguaggio per comunicare
1. Atti linguistici per trasferire informazione
all’ascoltatore
2. Atti linguistici per far agire l’ascoltatore
Linguaggio per comunicare
Pianificazione
• Decidere quale atto linguistico attivare e
quando per raggiungere l’obiettivo di
comunicare una determinata informazione
ad un ascoltatore
• Nondeterminismo degli atti linguistici
Linguaggio per comunicare
Comprensione degli atti linguistici
La sintassi e la semantica determinano
la comprensione di un atto linguistico
Linguaggio per comunicare
“Comprendere”, capire il significato di una frase, sembra essere
l’aspetto rilevante della comunicazione. Alla comprensione
seguono tutte le altre attività legate al linguaggio naturale,
quali: scrivere, rispondere, parafrasare, tradurre,…
Ma la natura del comprendere è di per sé un problema di difficile
formulazione.
Il linguaggio naturale è una attività cognitiva complessa che
prevede la conoscenza: della struttura della frase, del
significato delle parole, del modello mentale dell’ascoltatore,
delle regole della conversazione, oltre ad una estesa e
condivisa quantità di informazioni generali sul mondo.
Linguaggio per comunicare
Inizialmente il linguaggio naturale fu oggetto di
studi e ricerche nell’intento di capire meglio gli
approcci mentali sottostanti e la natura dell’
”intelligenza” (approcci cognitivi)
L’interesse attuale è verso i sistemi per
l’elaborazione dell’informazione nell’intento di
sviluppare sistemi con conoscenza linguistica e
capaci di supportare applicazioni tecnologicamente
avanzate (ingegneria del linguaggio naturale) .
Grammatiche
La grammatica di un linguaggio è uno schema
per specificare le frasi valide in quel
linguaggio; fornisce le regole sintattiche
per combinare le parole in frasi ben formate
e clausole.
Ottenere la copertura totale di una grammatica
per il linguaggio naturale è difficile
Comprensione di atti linguistici
Grammatiche basate sulla struttura di frase (stringhe
composte da sottostringhe o sintagmi)
S-> NP VP
Categorizzazione dei sintagmi
esempi:
Sintagmi nominali, NP, Noun Phrase
Sintagmi verbali, VP, Verb Phrase
Sintagmi preposizionali, PP, Prepositional Phrase
I sintagmi sono dei link tra grammatica e semantica.
Grammatiche
Una grammatica o sintassi G è definita da:
V alfabeto di simboli terminali
N alfabeto di simboli non terminali (o
categorie sintattiche)
P insieme finito di regole di produzione
sintattiche del tipo   
dove   
ed     V)
S assioma o simbolo iniziale
G (V,N,P,S)
Esempio
V= il, lo, gatto, topo, sasso, mangia, beve 
N= <frase>,<sogg>,<verbo>,<comp-ogg>, <art>, <nome>
S=<frase>
P:
<frase>::=<sogg><verbo><comp-ogg>
<sogg>::=<art><nome>
< comp-ogg >::=< art><nome>
<art>::= il lo
<nome>::= gatto topo sasso
<verbo>::= mangia beve

<frase>
<sogg>
<art> <nome>
il
gatto
Esempio di albero sintattico
<verbo>
mangia
<comp-ogg>
<art> <nome>
il
topo
Parsing
Il parsing permette di “delinearizzare” l’input
linguistico, ovvero l’uso di regole grammaticali ed
altre sorgenti di conoscenza permette di
determinare le funzioni delle parole nella frase (una
stringa lineare di parole) per creare una struttura
dati più complessa – un albero di derivazione-.
Tale struttura rappresenta alcune delle possibili
relazioni esistenti tra le parole nella frase (es.
l’aggettivo modifica il nome, che è l’oggetto di una
frase preposizionale,…) e può anche essere usata
per ottenere il “significato” della frase.
Parsing
Il disegno di un parser concerne:
La specificazione della grammatica da usare
Il metodo per usare la grammatica, ovvero
come analizzare le stringhe di parole
rispetto alle regole grammaticali
Modelli di comunicazione
Messaggio codificato
1- Il parlante ha in mente una proposizione P
2- Il parlante codifica la proposizione in segni W
3- L’ascoltatore tenta di decodificare il messaggio
W per ricostruire la proposizione P
Si ipotizza di mantenere la stessa interpretazione ai
tre livelli
Processi della comunicazione
Intenzione
Generazione
Sintesi
Percezione
Analisi
S vuole che H creda P
S sceglie le parole W
S emette le parole W
H percepisce W’
H inferisce che W’ ha vari
significati Pi
Disambiguazione H inferisce che S
intendeva affermare Pi
Assimilazione H decide di credere Pi
Processi della comunicazione
Parsing
Parsing: processo di assegnazione di una parte
del discorso (nome, verbo,…) ad ogni parola
di una frase ed al raggruppamento di parole in
sintagmi (albero di analisi o sintattico)
Un albero sintattico è un albero in cui i nodi
interni rappresentano sintagmi, gli archi
rappresentano l’applicazione di regole
grammaticali e le foglie rappresentano
parole.
Processi della comunicazione
Interpretazione semantica: processo di
estrazione del significato da un enunciato di
un particolare linguaggio; associazione di
significati a stringhe in isolamento (now);
possibile ambiguità degli enunciati
Interpretazione pragmatica: associazione di
significati ad enunciati e fatti in contesti
specifici (S3); rappresentazione della
situazione corrente
Linguaggio per comunicare
Si usa il linguaggio per comunicare se e solo se gli
agenti coinvolti nella comunicazione:
• Condividono la conoscenza di un linguaggio
• Condividono la conoscenza del contesto della
conversazione
• Sono razionali e quindi la loro reazione ad un
atto linguistico è prevedibile
Modelli di comunicazione
Modello del linguaggio situato
Il significato di un messaggio dipende sia dalle
parole che dalla situazione in cui le parole sono
emesse
le stesse parole (strutture di) assumono significati
diversi in contesti diversi
(es: sono qui, leggi questo libro. Il “valore” di qui,
questo, cambiano con il tempo ed il luogo)
Comunicazione con Tell e Ask
Agenti che
condividono lo stesso linguaggio di rappresentazione
interna e i simboli usati. (problema della condivisione
della denominazione dei simboli e delle relazioni tra
simboli)
possono accedere alle basi di conoscenza degli altri nello
stesso modo che alla propria (tramite la Tell per
inviare una proposizione e tramite la Ask per
verificarne la conoscenza) (problema
dell’aggiornamento delle Bdc)
Comunicazione telepatica
Comunicazione con Tell e Ask
Comunicazione tramite il linguaggio
Condivisione del linguaggio di
comunicazione (ed, al più, del linguaggio
interno ma non della Bdc)
Traduzione da linguaggio esterno a
linguaggio interno
Problema di riconciliare le differenze tra le
basi di conoscenza interne degli agenti
Comunicazione tramite il linguaggio
Linguaggio Naturale
Necessità di definire una grammatica formale
• Dinamicità della lingua
• Non grammaticalità di alcune espressioni
• Comprensibilità del messaggio anche se
scorretto formalmente
I linguaggi formali sono assunti essere adatti a
gestire i linguaggi naturali, ma con molti
limiti e problemi
Linguaggio Naturale
• Definiamo lessico l’insieme delle parole
ammissibili del vocabolario della lingua
• Le parole sono raggruppate in categorie o
parti del discorso (nome, articolo,
pronome,verbo,…)
• Classi aperte (nomi, verbi, aggettivi)
• Classi chiuse (pronomi, avverbi, articoli,
preposizioni, congiunzioni)
Grammatica del linguaggio
Regole
• S-> NP VP S congiunzione S
• NP -> Pronome Sostantivo Articolo
Sostantivo Cifra Cifra NP PP NP
RelClause
• VP-> Verbo VP NP VP Aggettivo VP PP
VP Avverbio
• PP -> Preposizione NP
• RelClause -> that VP
Analisi sintattica
• Ricostruzione della struttura della frase di
un enunciato, data una grammatica
• Foresta di analisi: lista ordinata di Alberi
di analisi
• Algoritmi di parsing: approccio top-down e
bottom-up
Analisi di un enunciato
Descrivere grammatiche
BNF (problemi)
• Descrive stringhe (senza significato)
• Descrive grammatiche libere da contesto
S->NP VP
Sostantivo-> odore … … …
Grammatica logica
Logica del primo ordine
• Gestisce “stringhe con significato”
• Ogni nonterminale diventa predicato unario
vero per stringhe che sono sintagmi di
quella categoria
NP( s1 )  VP( s2 )  S (Concatena( s1 , s2 ))
( s " odore"...)  Sos tan tivo( s )
Grammatiche a clausole definite DCG
Una grammatica logica permette inferenze non
limitate (quindi approccio risolutivo costoso,
necessaria una limitazione)
Nelle grammatiche a clausole definite (DCG) ogni
formula deve essere una clausola definita (in
forma di Horn ha un solo atomo come
conseguente e un atomo o una congiunzione di
zero o più atomi come antecedente)
Con il formalismo DCG una grammatica è definita
in termini di logica del primo ordine
Grammatiche a clausole definite DCG
Sul lato sinistro un singolo nonterminale
(aumentato o meno)
Sul lato destro di una regola:
• I simboli nonterminali possono essere aumentati
con argomenti (semantica) in più NP(s,sem)
• Una variabile può apparire sul lato destro di una
regola DCG
• Un test logico tra graffe può apparire sul lato
destro di una regola.
Grammatiche
Se non si distinguono i casi (ruoli sintat. e concord.) le
grammatiche possono generare anche frasi
sgrammaticate (overgenerazione)
Es. Io dare te la penne
Non è vero che qualunque NP si combina con
qualunque VP e questo con qualunque PP in
qualsiasi ordine
L’introduzione di nuove regole che considerino i casi
farebbe esplodere (nel numero) le grammatiche
Grammatiche aumentate
1. Parametrizzare le regole ed aggiungere delle
variabili permette di mantenere cost. il num. di
regole di una grammatica (costo computazionale)
e risolve anche il problema delle concordanze.
Esempio
S->NP(nominativo) VP ….
2. Sottogategorizzare i verbi
Esempio
PP->Preposizione NP(accusativo)
Sottocategorizzazione verbale
Analisi dei complementi (sintagmi obbligatori che
seguono un verbo all’interno del sintagma verbale)
• Lista di sottocategorizzazione (lista di categorie che il
verbo accetta prioritariamente e che lo caratterizzano)
• Aggiunti (sintagmi non dominati del verbo: spazio e
tempo)
E’ possibile che un verbo abbia più di una lista di
sottocategorizzazione / E’ possibile che un sostantivo
abbia più di una categoria
Sottocategorizzazioni verbali
Sottocategorizzazioni verbali
Aumentare la catergoria VP con un appropriato
argomento di sottocategorizzazione (complementi
necessari a formare un VP completo)
VP(sottocat)-> VP([NP!sottocat]) NP(accusativo)
!VP([Aggettivo!sottocat])Aggettivo
!VP([PP!sottocat]) PP
!Verbo(sottocat)[]
Sottocategorizzazioni verbali
Semantica dei linguaggi formali
Semantica composizionale
La semantica di un qualsiasi sintagma è
funzione della semantica dei suoi
sottosintagmi
(esempio, in aritmetica se conosciamo il
significato di X,Y,+, allora conosciamo il
significato di X+Y)
Semantica dei linguaggi naturali
• Il significato delle parole (e dei sintagmi) non
dipende in maniera composizionale dal contesto
circostante
• E’ possibile avere più interpretazioni semantiche
corrette di una stessa locuzione
• Necessità di effettuare una disambiguazione,
ovvero una scelta tra le possibili interpretazioni
semantiche
Ambiguità lessicale
• Si ha ambiguità lessicale nel caso in cui una
parola abbia più di un significato.
• L’ambiguità lessicale può essere trasversale
rispetto alle categorie (es. piano)
Ambiguità sintattica (o strutturale)
• L’ambiguità sintattica può essere presente
con o senza ambiguità lessicale
“La vecchia porta la sbarra”
Le ambiguità lessicale e sintattica portano
all’ambiguità semantica
Ambiguità semantica
Una forma di ambiguità semantica è data
dall’ambiguità dei riferimenti (ad esempio
anaforici)
Egli urlava per avere a tutti i costi un
pallone. Lo spinsi fuori dalla porta
Albero di analisi (espressioni
aritmetiche)
Albero di analisi
Interpretazione pragmatica
Spesso è necessario completare l’interpretazione con
informazioni relative:
1)alla situazione corrente; tale informazione non è
composizionale e dipende dal contesto (es:
riferimenti a soggetti sottintesi, ad avverbi
temporali e spaziali,…)
2)ad oggetti citati precedentemente nel testo
(anafora) Es.1 Dopo la proposta di Mario a Maria,
hanno cercato un prete e si sono sposati. In luna di
miele sono andati a Parigi. 2.Giovanni ama Maria,
ma lei non ricambia il suo sentimento.
Interpretazione pragmatica
• L’interpretazione pragmatica prende in
considerazione la situazione corrente per
determinare l’effetto di un enunciato in un
determinato contesto
Disambiguazione
Per disambiguare una frase è necessario disporre
del modello del parlante e dell’ascoltatore, oltre
a conoscere il contesto.
• Modello del mondo
• Mondo mentale
• Modello linguistico
La disambiguazione è il processo in base a cui si
decide quale delle possibili interpretazioni è
quella intesa dal parlante
Scarica

Linguaggio naturale come supporto per la rappresentazione della