680 likes | 972 Views
Linguistica computazionale: come accedere all’informazione codificata nel linguaggio naturale. Cristina Bosco 2014 Informatica applicata alla comunicazione multimediale. Alcune domande. - Che cosa sono la linguistica computazionale e il NLP? - A cosa serve il NLP?
E N D
Linguistica computazionale:come accedere all’informazione codificata nel linguaggio naturale • Cristina Bosco • 2014 • Informatica applicata alla comunicazione multimediale
Alcune domande - Che cosa sono la linguistica computazionale e il NLP? - A cosa serve il NLP? - Cosa si riesce a fare con il NLP? - Quali sono le risorse per il NLP?
Che cosa sono la linguistica computazionale e il NLP NLP (Natural Language Processing) = elaborazione automatica del linguaggio umano tramite computer È l’area dell’Intelligenza Artificiale (IA) che si occupa del linguaggio umano
Il trattamento del linguaggio naturale è storicamente uno dei primi compiti affrontati dall’IA, ma inizialmente la sua difficoltà fu ampiamente sottovalutata. Per questo motivo l’IA continua ad affrontarlo provando soluzioni sempre nuove.
Oggi il NLP affronta anche nuove sfide dovute a: - l’aumento della quantità di comunicazione - la presenza di nuovi tipi e mezzi di comunicazione, come quella che avviene in Internet, nei social media, negli sms o nelle mail
Che cosa è il NLP Il NLP ha due scopi pratici: - applicazioni - ricerche linguistiche Un solo scopo fondamentale: la comprensione del significato del testo linguistico (HLU - Human Language Understanding) che rende poi possibile qualunque elaborazione del linguaggio.
Cosa significa comprendere il linguaggio naturale? Comprendere un linguaggio naturale significa essere in grado di associare UNA interpretazione ad ogni espressione di tale linguaggio.
Human Language Understanding • Si basa su una complessa conoscenza grammaticale • È supportata da una almeno altrettanto ampia conoscenza del mondo • Insomma ... comprendere l’informazione codificata nel linguaggio richiede una quantità di conoscenza e competenza
Livelli di struttura linguistica La complessità del linguaggio umano è tale che si è soliti assumere diversi livelli di astrazione per descriverlo ed analizzarlo. Questa assunzione è fondamentale per il NLP e per qualunque elaborazione automatica del inguaggio.
Livelli di struttura linguistica • fonetico: suoni del parlato, come vengono prodotti, come vengono percepiti • fonologico: la struttura grammaticale dei suoni e del sistema sonoro Ogni lingua ha delle convenzioni in base alla quali certi suoni e certe composizioni di lettere sono accettabili ed altri no: ca / tcha / ça taogt / gatto
Livelli di struttura linguistica • morfologico: come le sotto-unità delle parole si combinano per formare la parola * remangia vs mangiare * silavare vs lavarsi
Livelli di struttura linguistica • sintattico: come le parole si combinano per formare la frase In italiano: * bianco Giorgio il vuole pane * Vuole bianco Giorgio pane il Giorgio vuole il pane bianco Ma in toba batak: Manjaha buku guru i legge libro maestro il
Livelli di struttura linguistica • semantico (lessicale e proposizionale): che cosa significa ogni parola e come i significati delle parole si combinano per formare il significato della frase * la macchia invisibile crede nel cielo * idee verdi senza colore sognano furiosamente
Livelli di struttura linguistica • pragmatico: in che modo i significati delle frasi sono utilizzati per manifestare gli scopi comunicativi degli esseri umani all’interno del contesto e della situazione di enunciazione La casa è la prima che trovi svoltando a destra dopo il teatro La prima notte di San Silvestro del nuovo millennio Questo è bello
Problemi Oltre alla molta conoscenza che il NLU richiede, il principale problema del NLP è la pervasiva ambiguità del linguaggio a tutti i livelli di analisi. Noi vedremo in modo specifico i livelli morfologico e sintattico, che sono quelli maggiormente interessanti dal punto di vista della traduzione.
Cosa è l’ambiguità? Quando una frase contiene una ambiguità non è possibile darne una (SOLA) interpretazione.
Perchè ci interessa l’ambiguità? Gli esseri umani hanno una quantità di conoscenza grazie alla quale non percepiscono molte delle ambiguità che invece una macchina trova nel linguaggio.
Ambiguità morfologica Trans-categoriale: - “Tutti hanno un TELEFONINO e a chi TELEFONINO non si capisce” - PESCA nome (il frutto, lo sport) verbo (lo sport, l’estrazione, ...) aggettivo (il colore)
Ambiguità semantica brucia (bruciare, 3a persona, ind. pres., intr.): La carta brucia (“è un combustibile”) La casa di Mario brucia (“ha preso fuoco”) Il peperoncino brucia (“è piccante”) La minestra brucia (“è troppo calda”) La gola brucia (“causa dolore fisico”) La condanna brucia (“causa dolore mentale”)
Ambiguità sintattica Può essere indipendente dall’ambiguità morfologica: “Giorgio vide un uomo nel parco con il telescopio” Può causare ambiguità semantica: “Giorgio vide un uomo con un telescopio” Può essere relativa alle relazioni grammaticali: “Chi uccise il poliziotto?”
Ambiguità sintattica Può essere locale, nel senso che una parte della frase ammette diverse analisi, ma solo una di queste analisi è valida per la frase intera: “I soldati, avvertiti del pericolo ... ..., condussero il raid di mezzanotte.” “I soldati, avvertiti del pericolo ... ... i cittadini, condussero il raid di mezzanotte.”
Ambiguità sintattica Può essere globale ed anche irrisolvibile se la frase completa ammette più analisi tutte valide: “La vecchia porta la sbarra”
Ambiguità semantica Può essere determinata dall’ambiguità presente ad altri livelli, e può dipendere dai quantificatori: “Ogni uomo ama una donna” = per ogni singolo uomo, esiste una singola donna che egli ama = esiste una sola singola donna che ognuno degli uomini (preso singolarmente) ama
E sottoproblemi Per gestire le difficoltà che il NLU comporta, si scompone il compito (task) del NLP in vari sottoproblemi (subtasks) relativamente indipendenti e consistenti con i livelli di analisi identificati a livello teorico.
Analisi morfologica Riguarda le informazioni sulle singole parole Problemi: - segmentazione del testo in parole (tokenization) • identificazione delle categorie delle parole (Part of Speech tagging) e ricerca delle radici (lemmatizzazione)
Analisi morfologica Un esempio di analisi morfologica di una frase 1. la (IL ART DEF F SING) 2. storia (STORIA NOUN COMMON F SING) 3. non (NON ADV NEG) 4. educa (EDUCARE VERB MAIN IND PRES 3 SING) 5. a (A PREP MONO) 6. nulla (NULLA NOUN COMMON M SING)
Analisi morfologica E se la frase contiene ambiguità morfologiche? 1. la (IL ART DEF F SING) 2. pesca (PESCA NOUN COMMON F SING) pesca (PESCARE VERB MAIN IND PRES 3 SING) pesca (PESCARE VERB MAIN IMP PRES 2 SING) 3. non (NON ADV NEG) 4. è (ESSERE VERB MAIN IND PRES 3 SING) 5. un (UN ART INDEF M SING) 6. frutto (FRUTTO NOUN COMMON M SING)
Analisi sintattica Riguarda le informazioni a livello dell’intera frase Problemi: - riconoscimento della struttura sintattica della frase, cioè dei sintagmi - riconoscimento delle relazioni grammaticali che legano i sintagmi e le parole
Analisi sintattica E se la frase contiene ambiguità sintattiche? Una frase ambigua permette più di una analisi sintattica, quindi verranno costruite più strutture per la stessa frase. Esempio: “Giorgio vide l’uomo dentro il parco con il telescopio”
Analisi sintattica L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua: Giorgio vide l’uomo, Giorgio lo vide dentro il parco, Giorgio lo vide utilizzando il telescopio
Analisi sintattica L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua: Giorgio vide l’uomo, Giorgio lo vide dentro il parco, il parco che ha il telescopio
Analisi sintattica L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua: Giorgio vide l’uomo, l’uomo che stava dentro il parco, e Giorgio lo vide utilizzando il telescopio
Analisi sintattica L’albero di derivazione corrisponde alla seguente interpretazione della frase ambigua: Giorgio vide l’uomo, l’uomo che stava dentro il parco, il parco che ha il telescopio
Analisi sintattica I quattro alberi di derivazione non esauriscono tutte le possibili strutture che si possono costruire per la frase. In questo esempio l’ambiguità è determinata dalla presenza di sintagmi preposizionali che possono essere agganciati praticamente a qualunque altro sintagma.
Molto sovente le ambiguità del linguaggio naturale non sono percepite dagli esseri umani. Questo ha indotto gli studiosi di IA a credere che trattare il linguaggio naturale fosse molto più semplice di quello che si è poi rivelato.
Un esempio concreto di come l’ambiguità sintattica non viene percepita? Io mangio le fragole con la panna. Quante diverse strutture sintattiche posso costruire?
A) mangio Io le fragole ? con la panna B) mangio Io le fragole con la panna
Io mangio le fragole con la panna. Nessun essere umano sceglierebbe la B ed aggancerebbe il sintagma preposizionale con la panna al sintagma verbale mangio, invece che al sintagma nominale le fragole. Eppure la struttura B è assolutamente sensata dal punto di vista sintattico se si prescinde da qualunque considerazione semantica.
Infatti, in altri casi, come Io mangio le fragole con il cucchiaino. la struttura B verrebbe naturalmente scelta, agganciando il sintagma preposizionale con il cucchiaino al sintagma verbale mangio, invece che al sintagma nominale le fragole.
A) mangio Io le fragole ? con il cucchiaino B) mangio Io le fragole con il cucchiaino
Inoltre, la presenza di ambiguità é proporzionale alla lunghezza della frase. 3 (7): List the sales of products in 1973 10 (8): List the sales of products produced in 1973 28 (13): List the sales of products produced in 1973 with the products in 1972 455 (14): List the sales of products produced in 1973 with the products produced in 1972
NLP e subtask Il NLP è rivolto a risolvere il problema della comprensione del significato del testo. Ma a causa della complessità di questo problema, nell’ambito del NLP si ragiona sempre su sottoproblemi: analisi morfologica, analisi sintattica, analisi semantica, ...
NLP e subtask Oggi le tecniche di NLP si devono confrontare con la crescente quantità di testi in formati digitali, garantendo l’accesso alle informazioni sovente non strutturate e in lingue potenzialmente diverse, per i più diversi scopi commerciali. Ma nella maggior parte dei casi non si richiede una completa comprensione del contenuto del testo.
NLP e subtask In generale, riconoscendo che in molti casi non è realmente necessaria una comprensione completa del testo (come quella che ogni parlante umano ha spontaneamente di fronte ad un testo), si fanno elaborazioni parziali e finalizzate a determinati obiettivi.
NLP e subtask • Estrazione di informazione non strutturata (Information Retrieval, IR) • Estrazione di informazione strutturata (Information Extraction, IE) • Risposta a domande (Question Answering, Q&A) • Riconoscimento di entità nominate (Named Entity Recognition, NER)