Intelligenza Artificiale 1 Gestione della conoscenza lezione 19 Prof. M.T. PAZIENZA a.a. 2000-2001 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 • Classi aperte (nomi, verbi, aggettivi) • Classi chiuse (pronomi, avverbi, articoli, preposizioni, congiunzioni) Grammatica del linguaggio • S-> NP VP / C 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 • Descrive stringhe (senza significato) • Descrive grammatiche libere da contesto 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) • Nelle grammatiche a clausole definite 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) Grammatiche a clausole definite DCG Alcune estensioni • I simboli nonterminali possono essere aumentati con argomenti in più • 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 a clausole definite DCG Sul lato destro di una regola: • Un nonterminale non aumentato • Un nonterminale aumentato • Una variabile che rappresenta un terminale • Un terminale • Un test logico Sul lato sinistro un singolo nonterminale (aumentato o meno) Grammatiche Se non si distinguono i casi (ruoli sintattici e concordanze) 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 Grammatiche • Parametrizzare le regole ed aggiungere delle variabili permette di mantenere costante il numero di regole di una grammatica (costo computazionale) e nel contempo risolve opportune concordanze. • Sottogategorizzare i verbi Sottocategorizzazione verbale Analisi dei complementi (sintagmi obbligatori che seguono un verbo all’interno del sintagma verbale) • Liste di sottocategorizzazione • Aggiunti (sintagmi non dominati dal verbo; spazio e tempo) Sottocategorizzazioni verbali Sottocategorizzazioni verbali