Elaborazione del linguaggio naturale automi, trasduttori & morfologia Maria Teresa PAZIENZA a.a. 2006-07.

Slides:



Advertisements
Presentazioni simili
Michele A. Cortelazzo Morfologia 1.
Advertisements

Programmazione ad oggetti
Automi temporizzati.
Estendere i linguaggi: i tipi di dato astratti
Sintassi (prima parte)
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.
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Linguaggi Regolari e Linguaggi Liberi
1 Il punto di vista Un sistema è una parte del mondo che una persona o un gruppo di persone, durante un certo intervallo di tempo, sceglie di considerare.
Sistemi computazionali per il linguaggio naturale
DIFFICOLTA’ DEL LINGUAGGIO
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
FMZ, Giugno 2001 Parsing del linguaggio naturale Fabio Massimo Zanzotto Università di Tor Vergata.
Elaborazione del linguaggio naturale automi, trasduttori & morfologia
Maria Teresa PAZIENZA a.a
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
Analisi e Sintesi di circuiti sequenziali
Il lessico Lessico: insieme delle parole di una lingua (astratto)
Access: Query semplici
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
Fondamentidi Programmazione Corso: Fondamenti di Programmazione Classe: PARI-DISPARI Docente: Prof. Luisa Gargano Testo: Aho, Ulman, Foundations of Computer.
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
Biologia Computazionale - Algoritmi
Strumenti per comunicare (S23) Corso di grammatica italiana 1
Espressione polirematica
Automi LAVORO SVOLTO DA MARIO GERMAN O
Lo sviluppo del software e i linguaggi di programmazione
Alfabeti Linguaggi Automi Grammatiche e Compilatori
Realizzato da Roberto Savino
Facoltà di Ingegneria Corso di Laurea: Insegnamento: Lezione n°: Titolo: Docenti: INGEGNERIA AUTOMAZIONE II 2 LINGUAGGI FORMALI ED AUTOMI PROF. ALESSANDRO.
Fabio Massimo Zanzotto (slides di Andrea Turbati con aggiunte)
Grammatiche, Linguaggio e Automi R. Basili TAL - a.a
Elaborazione del linguaggio naturale automi & morfologia
Sistemi basati su conoscenza Comunicazione basata sul linguaggio naturale (grammatica, semantica) Prof. M.T. PAZIENZA a.a
Michele A. Cortelazzo Morfologia 1.
Sistemi basati su conoscenza Linguaggio naturale: grammatiche Prof. M.T. PAZIENZA a.a
Parola: Livelli di rappresentazione
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.
Paola Disisto, Erika Griffini, Yris Noriega.  Insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce.
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.
1 Informatica Generale Alessandra Di Pierro Ricevimento: Giovedì ore presso Dipartimento di Informatica, Via Buonarroti,
Automi a pila (1) Un automa a pila (PDA) è M = (Q, S, G, d, q0, Z0, F) dove: Q insieme finito di stati S alfabeto finito di input 3. G alfabeto di pila.
Grammatiche Grammatiche libere da contesto Grammatiche regolari
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.
Automi temporizzati.
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.
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Informatica e Informatica di Base
Università degli Studi di Perugia 20/09/2015Informatica applicata all’educazione a.a Informatica applicata all’educazione a.a Corso.
I componenti formali del linguaggio
Programmazione dei Calcolatori Elettronici
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 a.a

Programma Breve introduzione allNLP 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

FSA non-deterministici (NFSA) Un automa è detto non-deterministico se ha due archi uguali uscenti dallo stesso stato. Quindi: - Deterministico vuol dire che ad ogni stato può essere presa una sola decisione - Non-Deterministico vuol dire che ad ogni stato si può scegliere tra più decisioni Equivalenza tra FSA e NFSA - Un NFSA può essere sempre convertito in un FSA equivalente (che definisce cioè lo stesso linguaggio) - NFSA e FSA hanno quindi lo stesso potere di riconoscimento/generazione - LFSA equivalente di un NFSA ha sempre più stati dellNFSA NFSA

FSA non-deterministici (NFSA) Un tipo particolare di non-determinismo è quello causato dalla presenza di ε- transizioni (o jump arcs) Una ε-transizione corrisponde ad un passaggio di stato che non influenza la stringa in esame: - in riconoscimento: non viene letto il simbolo corrente della stringa in generazione: non viene prodotto alcun simbolo ε NFSA

FSA non-deterministici: ricerca Riconoscimento: negli stati non-deterministici lFSA può seguire strade diverse, ovvero prendere decisioni errate. In tal caso deve essere in grado di: - Riconoscere la soluzione errata; - Cercare altre soluzioni prendendo strade diverse; - Ricordare quali sono le strade diverse Lautoma deve quindi effettuare una ricerca nello spazio delle soluzioni (state-space search) Ad ogni bivio (choice point) devono quindi essere memorizzate in una agenda tutte le coppie di stati alternativi e la posizione nella stringa dopo la transizione δ (search-states) q2, [b,a,a,a,a] q3, [b,a,a,a,a] q2, [b,a,a,a,a] STATO CORRENTE SEARCH STATES NFSA

ba a a !\ q0q0 q1q1 q2q2 q2q2 q3q3 q4q4 Ricerca in NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Profondità NFSA: esempio NFSA

Ricerca in Ampiezza NFSA: esempio NFSA

Ricerca in NFSA: algoritmo di ricerca NFSA

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 gatt-o gatt-i buy-s buy - er ESEMPIO radice affisso Morfologia

Morfologia: definizioni - Inflectional Morphology: combinazione di una radice con un affisso che risulta in una parola (forma flessa) della stessa classe (nome, verbo, aggettivo, ecc..) con una funzione grammaticale specifica cat (nome sing) cat-s (nome plur) cut (verbo base) cut-ting (verbo progressivo) La morfologia può essere divisa in due parti principali - 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 ? Ogni linguaggio naturale ha una sua morfologia (affissi, regole, ecc.) Due classi principali: - Concatenative morphology: una parola è composta da morfemi concatenati insieme Italiano, Inglese: gatt-o, cat-s, buy-er - 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 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, verbi e aggettivi - Derivational Morphology: complessa Morfologia

Inflectional Morphology NOMI: Due solo inflessioni: - Plurale: cat cat-sthrush thrush-es - Possessivo: dog dogschildren 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

-ationcomputerizecomputerization -eeappointappointee -erkillkiller -nessfuzzyfuzziness Derivational Morphology NOMINALIZZAZIONE (verbo, aggettivo nome) nome, verbo aggettivo -alComputationComputational -ableEmbraceEmbraceable -lessClueClueless Morfologia

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

A cosa serve lanalisi 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 are-gatt ) - 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

FSA: riconoscimento Un FSA può essere utilizzato per riconoscere se una parola è ammissibile in una lingua Cosa serve: 1. Lessico: lista di radici ed affissi della lingua Esempio: [cat,dog,cut,go,…,-s,-ed,-ation,-able,…,un-,dis-] 2. Regole Morfologiche (morphotactics): le regole di costruzione dei morfemi Esempio: Plurale inglese: radice + -s 3.Regole Ortografiche: cambiamenti che occorrono in una parola quando due morfemi si combinano Esempio: city cities Morfologia & FSA

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

NOMI: regole morfologiche + lessico Integrazione del lessico dei nomi regolari ed irregolari REGOLARIREGOLARI IRREGOLARIIRREGOLARI 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) PARSING/GENERAZIONE : - parsing: produce unanalisi 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 FSA 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 sullaltro (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 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 unaltra su B (o A) cats cat+N+PL (PARSING) cat+N+PL cats (GENERAZIONE) FST

FST: definizione formale Un FST è definito dai seguenti parametri: - Q : un insieme finito di N stati q 0 ….q N - Σ : 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) - q 0 : lo stato iniziale - F : un insieme di stati finali F Q -δ(q,i:o) : funzione di transizione tra stati (da Q x Σ a Q) che restituisce un nuovo stato a partire da un dato stato e un simbolo complesso in input : - riconosce tutte le coppie di stringhe in cui una ha tutte a e laltra uno stesso numero di b - produce stringhe di a su un nastro e stringhe di b sullaltro, con la stessa lunghezza - traduce stringhe di a in input in stringhe di b della stessa lunghezza in output, e viceversa ESEMPIO FST

FST: -transizioni - 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 ESEMPIO Come gli FSA, anche gli FST possono avere ε-transizioni (o jump arcs) : : : ε Σ = {a:b, :a} L = {0,abb,aabbbb,aaabbbbbb…} FST

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.