Elaborazione del linguaggio naturale automi, trasduttori & morfologia

Slides:



Advertisements
Presentazioni simili
Michele A. Cortelazzo Morfologia 1.
Advertisements

I linguaggi di programmazione
LR Parser Giuseppe Morelli. La maggior parte dei parser Bottom-Up è costituita dai cosiddetti parser LR(k) dove: L indica il verso dellanalisi della stringa.
Parser Bottom UP Giuseppe Morelli. Parser Bottom UP Un parser Bottom Up lavora costruendo il corrispondente albero di parsing per una data stringa di.
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Linguaggi Regolari e Linguaggi Liberi
Fondamenti di Informatica
Sistemi computazionali per il linguaggio naturale
RAPPRESENTAZIONE FONOLOGICA CORTICALE SUONI
Intelligenza Artificiale Linguaggio naturale
Elaborazione del linguaggio naturale automi, trasduttori & morfologia
Elaborazione del linguaggio naturale automi & morfologia Maria Teresa PAZIENZA a.a
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 7 Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale automi, trasduttori & morfologia Maria Teresa PAZIENZA a.a
Maria Teresa PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 8
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale morfologia, FSA, FST, POS esercizi Maria Teresa PAZIENZA a.a
Sistemi basati su conoscenza Conoscenza e ragionamento Prof. M.T. PAZIENZA a.a
Apprendimento Automatico: Elaborazione del Linguaggio Naturale
Il lessico Lessico: insieme delle parole di una lingua (astratto)
Unità Didattica 2 I Linguaggi di Programmazione
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
LINGUAGGI DI PROGRAMMAZIONE
Strumenti per comunicare (S23) Corso di grammatica italiana 1
Linguaggi e Modelli Computazionali LS - Prof E.Denti
CAP. 2 ANALISI LESSICALE 2.1 Il ruolo dell'analizzatore lessicale
Espressione polirematica
Lo sviluppo del software e i linguaggi di programmazione
Introduzione ai linguaggi formali e alle stringhe
MORFOLOGIA.
SINTASSI.
Fabio Massimo Zanzotto (slides di Andrea Turbati con aggiunte)
Grammatiche, Linguaggio e Automi R. Basili TAL - a.a
Elaborazione del linguaggio naturale automi & morfologia
MODELLO A DUE VIE DI LETTURA
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale (grammatica, semantica) Prof. M.T. PAZIENZA a.a
Michele A. Cortelazzo Morfologia 1.
Michele A. Cortelazzo Morfologia 1.
Sistemi basati su conoscenza Linguaggio naturale: grammatiche Prof. M.T. PAZIENZA a.a
Elaborazione del linguaggio naturale CFG: esercizi Maria Teresa PAZIENZA a.a
Elaborazione del linguaggio naturale part of speech Maria Teresa PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 19 Prof. M.T. PAZIENZA a.a
Informatica 3 V anno.
Come costruire sistemi di elaborazione del linguaggio naturale Fornire le conoscenze necessarie per elaborare dati linguistici –Acustico-fonetiche (input.
Elaborazione del linguaggio naturale automi & morfologia Maria Teresa PAZIENZA a.a
Linguistica computazionale: task sul linguaggio naturale Cristina Bosco 2015 Informatica applicata alla comunicazione multimediale.
Semantica approcci computazionali Maria Teresa PAZIENZA a.a
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 3 - Modelli di fase d’analisi Ernesto Damiani Università degli Studi.
Linguaggi di programmazione: panoramica Linguaggi di programmazione ad alto livello: – –Programmazione procedurale – –Programmazione object oriented –
Sistemi basati su conoscenza Linguaggio naturale: semantica Prof. M.T. PAZIENZA a.a
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Istituzioni di linguistica a.a.2009/10 Federica Da Milano.
Basi di dati e Relazioni Uno schema di relazione R(X) è costituito da un simbolo (nome della relazione) R e da una serie di attributi X={A 1, A 2, …, A.
Elaborazione del linguaggio naturale morfologia, FSA, FST, POS esercizi Maria Teresa PAZIENZA a.a
Elaborazione del linguaggio naturale morfologia, FSA, FST, POS esercizi Maria Teresa PAZIENZA.
Modelli A Stati Finiti Per Il Linguaggio Naturale A cura di De Pascalis Roberto.
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale (grammatica, semantica) Prof. M.T. PAZIENZA a.a
A cura di Utzeri Irene. A writer is someone who writes, and a stinger is something that stings. But fingers don't fing, grocers don't groce, haberdashers.
Come costruire sistemi di elaborazione del linguaggio naturale (NLP) Due paradigmi di riferimento –Basato sulla conoscenza (Knowledge Engineering, KE)
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Linguistica computazionale: come accedere all’informazione codificata nel linguaggio naturale (seconda parte) Cristina Bosco 2014 Informatica applicata.
I componenti formali del linguaggio
Programmazione dei Calcolatori Elettronici
La Comprensione frasale
MODELLO KRASHEN APPROCCIO NATURALE.
Informatica Problemi e algoritmi. una situazione che pone delle domande cui si devono dare risposte. Col termine problema o situazione problematica s’indica.
Linguaggi, stringhe e alfabeti. Linguaggi e grammatiche Un linguaggio è un sistema di comunicazione tra persone che permette di trasmettere informazioni.
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
Transcript della presentazione:

Elaborazione del linguaggio naturale automi, trasduttori & morfologia Maria Teresa PAZIENZA 1

Programma Info Breve introduzione all’NLP Linguaggi Naturali e Linguaggi Formali Complessità Morfologia Teoria: Morfologia del Linguaggio Naturale Strumenti: Automi e Trasduttori Analisi Morfologica: con automi e trasduttori Part of Speech Tagging Teoria: Le classi morfologiche Strumenti a Analisi: modelli a regole e statistici Sintassi Teoria: Sintassi del Linguaggio Naturale Strumenti: CFG Analisi Sintattica: parsing top-down, bottom-up, Early Semantica Lexical Semantics Sentence Semantics Info

Sommario Strumenti per la Morfologia Automi a stati finiti (FSA) FSA deterministici FSA non-deterministici (NFSA) Introduzione alla Morfologia FSA e Morfologia: riconoscimento Trasduttori a stati finiti (FST) Cosa sono FST e Morfologia: parsing

Morfologia: definizioni La morfologia (morphology) è lo studio di come le parole sono costruite a partire da unità atomiche dette morfemi. I morfemi (morphemes) sono le più piccole unità linguistiche che possiedono un significato. Possono essere divisi in due classi: Radice (stem) il morfema che dà il significato principale alla parola Affisso (affix) particelle apposte alla radice che ne completano il significato e la funzione grammaticale ESEMPIO radice gatt-o gatt-i buy-s buy - er affisso Morfologia

Morfologia: definizioni La morfologia può essere divisa in due parti principali Inflectional Morphology: combinazione di una radice con un affisso che risulta in una parola (forma flessa) della stessa classe (nome, verbo, talvolta aggettivo, ecc..) con una funzione grammaticale specifica cat (nome sing) cat-s (nome plur) cut (verbo base) cut-t-ing (verbo progressivo) Derivational Morphology: combinazione di una radice con un affisso che risulta in una parola di una classe diversa. Il significato della nuova parola non è facilmente prevedibile trasporto (nome)  trasport-abile (aggettivo) computerize (verbo)  computeriz-ation (nome) Morfologia

Quante morfologie ? Morfologia Ogni linguaggio naturale ha una sua morfologia (affissi, regole, ecc.) Due classi principali: Concatenative morphology: una parola è composta da morfemi (prefissi/suffissi) concatenati insieme Italiano, Inglese: gatt-o, s-conosciuto, cat-s, buy-er, un-able Non-concatenative morphology: le parole sono composte in maniera complessa Ebraico: lamad (radice: lmd; affissi: a-a pass.rem.attivo) Lingue agglutinanti: le parole sono formate da molti affissi Turco: uygarlaştiramadiklarimizdanmişsinizcasina (“comportarsi come se fossi tra quelli che non possono civilizzare”) Morfologia

Morfologia inglese Morfologia Caratteristiche: Concatenative morphology Non-agglutinative (al più 4 o 5 affissi) Una parola può avere più affissi: Prefissi: un-certain Suffissi: eat-s Combinazioni: un-clear-ly Inflectional morphology: semplice, applicata solo a nomi e verbi Derivational Morphology: complessa Morfologia

Inflectional Morphology NOMI: Due solo inflessioni: Plurale: cat  cat-s thrush thrush-es Possessivo: dog  dog’s children  childrens’ VERBI: Quattro forme morfologiche: stem: walk s form: walk walk-s past form: walk walked ing form: walk walking Irregolari: (ca. 250) Parole che non seguono le regole morfologiche (Esempio:mouse mice go goes, going, went). La maggior parte dei nomi e verbi inglesi sono regolari - La classe dei verbi regolari è produttiva : una nuova parola della lingua è automaticamente inclusa nella classe (Esempio: fax  faxes, faxing, faxed ) Morfologia

Derivational Morphology nominalizzazione (verbo, aggettivo nome) -ation computerize computerization -ee appoint appointee -er kill killer -ness fuzzy fuzziness nome, verbo aggettivo -al Computation Computational -able Embrace Embraceable -less Clue Clueless Morfologia

A cosa serve l’analisi morfologica automatica? Stemming in Information Retrieval Data una parola della query, cercare le pagine che contengano anche le sue forme flesse Spell Checking Riconoscere quali forme flesse sono ammissibili in una lingua e quali no (ad esempio gatt-o e gatt-are) Traduzione Automatica Ricondurre parole diverse a una stessa radice e quindi alla stessa traduzione (ad esempio amatore, amare  love) Morfologia & FSA

Quali strumenti usare ? Lessico esteso Un lessico (lista di parole) che contiene tutte le parole della lingua in tutte le forme flesse Spreco di spazio e non è produttivo! Lessico ridotto + Automi La morfologia è generalmente produttiva (gran parte delle parole segue le regole morfologiche per formare le forme flesse) Conviene quindi utilizzare: Lessico contenente solo radici e affissi (ed eventualmente irregolarità) Implementazione delle regole morfologiche in un dispositivo FSA sono semplici dispositivi per implementare tali regole Morfologia & FSA

Sommario Strumenti per la Morfologia Automi a stati finiti (FSA) FSA deterministici FSA non-deterministici (NFSA) Introduzione alla Morfologia FSA e Morfologia: riconoscimento Trasduttori a stati finiti (FST) Cosa sono FST e Morfologia: parsing 12

FSA: riconoscimento Morfologia & FSA Un FSA può essere utilizzato per riconoscere se una parola è ammissibile in una lingua - Cosa serve? Lessico: lista di radici ed affissi della lingua (invece di lista di tutte le parole della lingua – troppo lunga e non esaustiva) Esempio: [cat,dog,cut,go,…,-s,-ed,-ation,-able,…,un-,dis-] Regole Morfologiche (morphotactics): le regole di costruzione dei morfemi che spiegano come classi di morfemi possono seguire altre classi di morfemi in una parola Esempio: Plurale inglese: radice + -s Regole Ortografiche: cambiamenti che occorrono in una parola quando due morfemi si combinano Esempio: city  cities Morfologia & FSA

NOMI: regole morfologiche FSA per modellare l’inflessione plurale per nomi regolari ed irregolari Come modellare i nomi (regolari ed irregolari) nell’FSA? Ovvero: Come si può integrare il lessico? Morfologia & FSA

NOMI: regole morfologiche + lessico Integrazione del lessico dei nomi regolari ed irregolari REGOLARI IRREGOLARI Morfologia & FSA

Sommario Strumenti per la Morfologia Automi a stati finiti (FSA) FSA deterministici FSA non-deterministici (NFSA) Introduzione alla Morfologia FSA e Morfologia: riconoscimento Trasduttori a stati finiti (FST) Cosa sono FST e Morfologia: parsing

Dal Riconoscimento al Parsing RICONOSCIMENTO : indica se una data parola in input è morfologicamente corretta oppure no (ad esempio gatti è corretta, gattare è scorretta) FSA PARSING/GENERAZIONE : - parsing: produce un’analisi morfologica della parola in input: data la parola in input viene restituita la sua struttura cats cat +N +PL - generazione: data una struttura morfologica in input, produce una forma superficiale (parola) cat +N +PL  cats FST FST

Trasduttori a Stati Finiti (FST) I Trasduttori sono automi a stati finiti con due nastri A e B Ad es, può leggere da un nastro (ad es. “cats”) e scrivere sull’altro (“cat + N + PL”) Quattro modalità di utilizzo dell’ FST: riconoscitore: riceve in input una coppia di stringhe su A e B, e restituisce accept se essa appartiene al linguaggio delle coppie (una stringa per nastro) cats, cat+N+PL  accept produttore: restituisce coppie di stringhe appartenenti al linguaggio su A e B Output: tutte le parole del lessico con la loro struttura traduttore: riceve in input una stringa su A (o B) e ne restituisce un’altra su B (o A) cats  cat+N+PL (PARSING) cat+N+PL  cats (GENERAZIONE) correlatore: correla set di stringhe in A e B FST

FST: definizione formale Un FST è definito dai seguenti parametri: Q : un insieme finito di N stati q0….qN Σ : un alfabeto finito di simboli complessi. Ogni simbolo complesso è una coppia (uno per nastro) di simboli i:o appartenenti rispettivamente agli alfabeti I e O (Σ  I x O) q0 : lo stato iniziale F : un insieme di stati finali FQ δ(q,i:o) : funzione di transizione tra stati (relazione da Q x Σ a Q) che restituisce un nuovo stato a partire da un dato stato e un simbolo complesso in input ESEMPIO di utilizzo di un FST riconosce tutte le coppie di stringhe in cui una ha tutte a e l’altra uno stesso numero di b produce stringhe di a su un nastro e stringhe di b sull’altro, con la stessa lunghezza traduce stringhe di a in input in stringhe di b della stessa lunghezza in output, e viceversa : FST

Trasduttori a Stati Finiti (FST) Un FSA definisce un linguaggio formale attraverso la definizione di un insieme di stringhe – un FSA è isomorfo ai linguaggi regolari Un FST definisce una relazione tra insiemi di stringhe – un FST è isomorfo alle relazioni regolari Ovvero l’FST esprime il concetto della relazione tra due entità formalmente definite

Trasduttori a Stati Finiti (FST) Un FST gode delle proprietà di Inversione: l’inversione di un transducer T (T -1) cambia l’input in output - se T correla l’input I all’ouput O, T -1 correla l’input O all’ouput I Composizione: se T1 è un transducer da I1 ad O1 , e T2 è un transducer da I2 ad O2, allora T1 ◦T2 correla I1 ad O2 La proprietà di inversione inverte i ruoli di input ed output, facendo passare il FST da un ruolo ad un altro (da parser a generatore) La proprietà di composizione permette di porre più transducer in serie ed ottenere un transducer più complesso

FST: -transizioni ε : : FST Come gli FSA, anche gli FST possono avere ε-transizioni (o jump arcs) ESEMPIO riconosce tutte le coppie di stringhe in cui quella sul primo nastro ha tutte a e quella sul secondo un numero doppio di b produce le coppie di stringhe … traduce stringhe di a in input in stringhe di b di lunghezza doppia : : ε Σ = {a:b,:b} L = {0,abb,aabbbb,aaabbbbbb…} FST

Sommario Strumenti per la Morfologia Automi a stati finiti (FSA) FSA deterministici FSA non-deterministici (NFSA) Introduzione alla Morfologia FSA e Morfologia: riconoscimento Trasduttori a stati finiti (FST) Cosa sono FST e Morfologia: parsing

FST e morfologia: parsing/generazione OBIETTIVO: Livello Superficiale Livello Lessicale Passare da un livello superficiale ad un livello lessicale e viceversa, utilizzando un FST in funzione di traduttore: cats  cat+N+PL (PARSING) cat+N+PL  cats (GENERAZIONE) Morfologia & FST

FST e morfologia: parsing/generazione OBIETTIVO: c:c a:a t:t N:ε PL:s Passare da un livello superficiale ad un livello lessicale e viceversa, utilizzando un FST in funzione di traduttore: cats  cat+N+PL (PARSING) cat+N+PL  cats (GENERAZIONE) Morfologia & FST

Analisi morfologica a due stadi Dal livello superficiale al livello lessicale (PARSING) Sono necessari due stadi (  due trasduttori) IDENTIFICAZIONE DEI MORFEMI: Data la parola in input sul nastro A, il trasduttore la divide su B nei morfemi costituenti (radice + affissi) IDENTIFICAZIONE DELLA STRUTTURA: Dati i morfemi costituenti sul nastro A, il trasduttore identifica la categoria della radice e il significato degli affissi PARSING Livello Superficiale Livello Intermedio Livello Lessicale Morfologia & FST

Stadio 1: Identificazione dei morfemi ESEMPIO: nomi singolari/plurali Obiettivo Rappresentare con un FST le regole ortografiche della lingua per i nomi regolari e irregolari Input: cats Output: cat+s Regola e-insertion cats  cat+s foxes fox+s kisses  kiss+s + s:s s:s, z:z, x:x s:s, z:z, x:x + s:s Morfologia & FST

Stadio 1: non è così facile … Problemi Il trasduttore gestisce solo la regola della e-insertion, e non altri casi: Regola y-replacement: berries  berry +s (berrie +s) Regola raddoppio consonanti: beg  begging Ecc. ecc. Bisogna quindi implementare più regole ortografiche, nello stesso trasduttore, o in trasduttori paralleli! Ambiguità locale: foxes produce due forme di cui solo la prima è corretta: fox+s , foxe+s, foxes. Morfologia & FST

Stadio 2: Identificazione della struttura ESEMPIO: nomi singolari/plurali Obiettivo Rappresentare con un FST le regole morfologiche della lingua per i nomi regolari e irregolari Input: cat+s, mouse, mice Output: cat N PL, mouse N SG, mouse N PL reg:reg irr_sing:irr_sing irr_plur:irr_sing Bisogna aggiungere il lessico ! Morfologia & FST

Stadio 2: Identificazione della struttura ESEMPIO: nomi singolari/plurali

Stadio 1+2: Combinare lessico e regole E’ possibile combinare i due stadi mettendo in cascata (serie) i due trasduttori: l’output dell’uno sarà l’input dell’altro (bottom-up parsing, top-down generazione) Livello Lessicale Livello Intermedio in serie o in parallelo Livello Superficiale Oppure, è possibile fondere i due trasduttori, attraverso un’operazione di intersezione Morfologia & FST

Vantaggi e problemi Morfologia & FST Vantaggi degli FST Computazionalmente efficienti Semplici Doppio uso: parsing e riconocimento Qual’è la morfologia di foxes ? foxes fox+N+PL Qual è il plurale di fox ? Fox+N+PL  foxes Problemi Laborioso costruire e codificare un trasduttore per gestire ogni regola ed eccezione: Soluzione: Tool automatici di traduzione regolaFST Ambiguità globale: kisses può essere sia verbo che nome kisses kiss+N+PL kisseskiss+V+3SG Per disambiguare sono necessarie risorse esterne (non morfologiche), ad esempio il contesto sintattico Morfologia & FST

Argomenti trattati in questa lezione Morfologia (derivazionale/inflezionale, concatenativa/non-concatenativa) FSA e riconoscimento FST e loro proprietà 33

Elaborazione del linguaggio naturale Le presentazioni sugli argomenti di elaborazione del linguaggio naturale fanno in alcuni passi riferimento ad alcune presentazioni dei colleghi prof. Fabio Massimo Zanzotto e dottor Marco Pennacchiotti, oltre che ad alcune parti del libro: Speech and Language Processing, Prentice Hall, 2000, autori D.Jurafsky, J. H. Martin. 34