La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Linguistica computazionale: come accedere all’informazione codificata nel linguaggio naturale Cristina Bosco 2014 Informatica applicata alla comunicazione.

Presentazioni simili


Presentazione sul tema: "Linguistica computazionale: come accedere all’informazione codificata nel linguaggio naturale Cristina Bosco 2014 Informatica applicata alla comunicazione."— Transcript della presentazione:

1 Linguistica computazionale: come accedere all’informazione codificata nel linguaggio naturale Cristina Bosco 2014 Informatica applicata alla comunicazione multimediale

2 - 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? Alcune domande

3 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

4 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.

5 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

6 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.

7 Cosa significa comprendere il linguaggio naturale? Comprendere un linguaggio naturale significa essere in grado di associare UNA interpretazione ad ogni espressione di tale linguaggio.

8 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

9 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.

10 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

11 Livelli di struttura linguistica morfologico: come le sotto-unità delle parole si combinano per formare la parola * remangia vs mangiare * silavare vs lavarsi

12 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

13 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

14 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

15 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.

16 Cosa è l’ambiguità? Quando una frase contiene una ambiguità non è possibile darne una (SOLA) interpretazione.

17 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.

18 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)

19 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”)

20 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?”

21 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.”

22 Ambiguità sintattica Può essere globale ed anche irrisolvibile se la frase completa ammette più analisi tutte valide: “La vecchia porta la sbarra”

23 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

24 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.

25 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)

26 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)

27 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)

28 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

29 Analisi sintattica

30 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

31

32 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

33

34 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

35

36 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

37

38 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

39 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. Analisi sintattica

40 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.

41 Un esempio concreto di come l’ambiguità sintattica non viene percepita? Io mangio le fragole con la panna. Quante diverse strutture sintattiche posso costruire?

42 mangio le fragole con la panna Io mangio le fragole con la panna Io ? A) B)

43 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.

44 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.

45 mangio le fragole con il cucchiaino Io mangio le fragole con il cucchiaino Io ? A) B)

46 Inoltre, la presenza di ambiguità é proporzionale alla lunghezza della frase. 3 (7): List the sales of products in (8): List the sales of products produced in (13): List the sales of products produced in 1973 with the products in (14): List the sales of products produced in 1973 with the products produced in 1972

47 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,...

48 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.

49 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.

50 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)

51 NLP e subtask Classificazione di Documenti Traduzione automatica (Machine Translation, MT) Sentiment Analysis and Opinion Mining...

52 Information Retrieval Estrazione di informazione NON strutturata L’input è un insieme di documenti piuttosto ampio, mentre l’output è un insieme di documenti più piccolo È il lavoro che fanno i motori di ricerca su Internet

53 Information Retrieval In cosa consiste: dato l’input (insieme di documenti) ed una query dell’utente (una o più parole), restituisce come output un sottoinsieme dei documenti di input che comprende solo i documenti pertinenti alla query

54 Information Retrieval Approccio base: Documento e query sono visti come vettori di parole (bag of words o sintagmi) Valutazione della similarità tra documenti e ordinamento in base alla similarità; in questa valutazione si cerca di eliminare il “rumore” (= raffinamento) e di “pesare” i termini (= weighting)

55 Information Retrieval Raffinamento dell’approccio: Riconoscimento di categorie di parole Rimozione di stop words Riconoscimento di radici (stemming) Phrasing Pesatura dei termini (term weighting) Query expansion

56 Information Retrieval Come si valuta il risultato? Recall = numero documenti rilevanti trovati / numero documenti rilevanti esistenti Precision = numero documenti rilevanti trovati / numero documenti trovati

57 (Valutazione?) Per qualunque task di NLP la valutazione è un aspetto fondamentale. Si tratta di un processo complesso e sempre soggetto a revisione … le misure proposte oggi potrebbero essere criticate e sostituite domani. Il metodo più diffuso consiste nel confronto tra le prestazioni di un sistema e quelle di un essere umano.

58 (Valutazione?) L’idea di basare la valutazione sul confronto tra macchina ed essere umano è storicamente il primo metodo proposto per l’IA, da Alan Turing nel Turing era convinto che entro l’anno 2000 sarebbero state create macchine in grado di replicare la mente umana e superare il “test di Turing”, a cui sottoporre una macchina per scoprire se può pensare.

59 (Valutazione?) L’entusiasmo di Turing è condiviso e continua ad esserlo nei decenni. Nel 1968, Stanley Kubrik, nel film “2001 Odissea nello spazio”, immagina che nel 2001 lo sviluppo dell’IA sia stato tale da poter costruire macchine pensanti e parlanti. Nel 1982, Ridley Scott ambienta nel 2019 il film “Blade Runner”, in cui macchine che sono in grado di superare il test di Turing sono realtà.

60 Information Retrieval Come si valuta il risultato? supponiamo che la nostra query sia “gatto” e che nel nostro insieme di 100 documenti ce ne siano 10 che parlano di gatti; vorremmo che il sistema di IR trovasse questi 10. La recall è una misura di completezza che ci dice se tutti i documenti rilevanti sono stati trovati dal sistema.

61 Information Retrieval Come si valuta il risultato? supponiamo che la nostra query sia “gatto” e che nel nostro insieme di 100 documenti ce ne siano 10 che parlano di gatti; vorremmo che il sistema di IR trovasse questi 10. Se il sistema trova 10 documenti rilevanti sui 10 rilevanti esistenti, la recall vale 10/10 = 1. Se il sistema trova 5 documenti rilevanti sui 10 rilevanti esitenti, la recall vale 5/10 = 0,5.

62 Information Retrieval Come si valuta il risultato? supponiamo che la nostra query sia “gatto” e che nel nostro insieme di 100 documenti ce ne siano 10 che parlano di gatti; vorremmo che il sistema di IR trovasse questi 10. La precision è una misura di esattezza che ci quanti dei documenti che il sistema trova sono rilevanti.

63 Information Retrieval Come si valuta il risultato? supponiamo che la nostra query sia “gatto” e che nel nostro insieme di 100 documenti ce ne siano 10 che parlano di gatti; vorremmo che il sistema di IR trovasse questi 10. Se il sistema trova 10 documenti e tutti e 10 sono rilevanti, la precision vale 10/10 = 1. Se il sistema trova 20 documenti di cui 5 rilevanti e 15 non rilevanti, la precision vale 5/20 = 0,25.

64 Sentiment Analysis e opinion mining I social media (Facebook, Twitter, siti di recensione...) sono luoghi in cui le persone esprimono opinioni e sentimenti. Le tecniche di NLP consentono l’estrazione di sentimenti ed opinioni dai testi, per scoprire il gradimento di un prodotto, o ricerche socio- economiche, per verificare l’orientamento verso personaggi pubblici e fare previsioni ad es. sulle elezioni politiche.

65 Sentiment Analysis e opinion mining L’estrazione di sentimenti e opinioni si basa sul rilevamento di parole dotate di polarità (positiva, negativa ad es.). Vengono utilizzati lessici appositi dove sono classificate le parole dotate di polarità. La polarità di un post dipende dalle parole che esso contiene, ma anche da emoticon ed emoji, e dipende dal modo in cui le parole sono associate.

66 Sentiment Analysis e opinion mining Cosa fa un sistema di sentiment analysis? Dato un insieme di post deve dire per ognuno se esprime un sentimento positivo o negativo. Come si valuta la prestazione di un sistema di sentiment analysis? Si costruisce un corpus di post con annotata la polarità e si confronta con il risultato restituito dal sistema.


Scaricare ppt "Linguistica computazionale: come accedere all’informazione codificata nel linguaggio naturale Cristina Bosco 2014 Informatica applicata alla comunicazione."

Presentazioni simili


Annunci Google