Corpi e Informazioni Linguistiche PDF
Document Details
Uploaded by MomentousConflict3000
Università Mercatorum
Teresa Agovino
Tags
Related
Summary
Questo documento descrive i corpora dell'italiano, spiegando come usare le informazioni linguistiche e illustrando il test di Turing. Questo studio è rivolto a studenti universitari.
Full Transcript
Teresa Agovino – Corpora e informazioni linguistiche Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (...
Teresa Agovino – Corpora e informazioni linguistiche Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 1 di 12 Teresa Agovino – Corpora e informazioni linguistiche Indice 1. CORPORA DELL’ITALIANO................................................................................................... 3 2. COME SI USANO LE INFORMAZIONI LINGUISTICHE.............................................................. 5 3. PARAGRAFO CON UN COMPUTER: IL TEST DI TURING....................................................... 10 BIBLIOGRAFIA.......................................................................................................................... 12 Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 2 di 12 Teresa Agovino – Corpora e informazioni linguistiche 1. Corpora dell’Italiano Sebbene le risorse più significative in termini di impatto per la ricerca in linguistica computazionale siano state sviluppate per l’inglese, anche l’italiano presenta una discreta vitalità in questo campo: accanto a corpora non strutturati come Parole (corpus bilanciato di circa 20 milioni di parole, recentemente sono state sviluppate diverse treebank [in linguistica un treebank è un corpus di testo analizzato che annota la struttura della frase sintattica o semantica, tramite diagrammi ad albero] annotate a molti livelli: esiste ad esempio la Turin University Treebank (TUT, 2000) come rappresentativa di questa ultima generazione di treebank. Esempio di treebank: [Costituenti e dipendenze] La TUT si presenta come un piccolo corpus di circa 2400 frasi (tratte principalmente dal codice civile italiano e da articoli di giornale) annotate morfosintatticamente sia per costituenti (come la PENN Treebank) che per dipendenze: all’interno di un costituente, gli elementi presenti (parole e/o altri costituenti) sono in relazione funzionale tra di loro; ad esempio la relazione di complementazione che sussiste tra il verbo e il suo complemento oggetto, o quella di specificazione della determinazione che sussiste tra un nome e il suo articolo. Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 3 di 12 Teresa Agovino – Corpora e informazioni linguistiche Queste informazioni sono fondamentali per effettuare varie analisi (ad esempio per disambiguare il punto di attaccamento di un sintagma preposizionale a seconda dell’elemento da cui è dipendente). La TUT è diventata il punto di riferimento per lo sviluppo e la valutazione dei vari software di parsing per l’Italiano. Parser (Treccani): In informatica, algoritmo di un programma applicativo che, sulla base di grammatica e lessico di una lingua data, effettua un’analisi automatica della struttura morfologica delle parole, per permetterne, per es., il richiamo dal dizionario di memoria. Algoritmi di questo tipo, ma di struttura più complessa, si usano anche nel campo della linguistica per riconoscere se una sequenza di parole è o meno una frase in senso grammaticale e, nel primo caso, per produrre un’analisi (parsing) morfologica e sintattica della sequenza. (https://www.treccani.it/enciclopedia/parser/). Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 4 di 12 Teresa Agovino – Corpora e informazioni linguistiche 2. Come si usano le informazioni linguistiche Dovremmo a questo punto provare a rispondere alla domanda: “Perché gli uomini capiscono il linguaggio naturale ed i computer no?” La risposta è legata alla necessità di: - creare complesse banche dati annotate con informazioni morfo‐sintattiche e semantiche - costruire lessici completi ed efficienti organizzati come ontologie - stabilire criteri per gestire l’ambiguità ad ogni livello - la possibilità di dover assegnare un significato ad un’espressione mai vista prima. Tutto ciò è spontaneamente nelle corde di un parlante nativo che ha a disposizione competenze innate (ad esempio un supporto biologico per il processamento dei fonemi e per l’organizzazione delle informazioni linguistiche in strutture gerarchiche) e acquisite naturalmente (come il lessico e certe proprietà morfo‐sintattiche specifiche di una certa lingua). A questo punto possiamo chiederci quanto queste informazioni siano sufficienti ed esplicite per “addestrare” il nostro computer a capire e/o produrre espressioni in una qualsiasi lingua naturale. E questo in parte sarebbe addirittura limitativo: dagli studi psicolinguistici abbiamo appreso che il processamento linguistico è relativamente lento ed “impreciso” per certe cose, rapidissimo ed estremamente efficiente per altre: la percezione di una parola scritta richiede diversi millisecondi, la lettura di frasi complete richiede secondi, un libro viene letto in qualche ora/giorno e difficilmente il suo contenuto viene ricordato parola per parola; recuperare un’espressione all’interno di un testo non digitalizzato può richiedere ore se non ci sono indici analitici precompilati. D’altra parte la maggior parte delle ambiguità ad ogni livello viene risolta in pochi millisecondi, spesso senza neppure prendere in considerazione strategie di analisi alternative ma inadatte al contesto. Un computer invece può permettersi di memorizzare enormi quantità di informazione testuale, recuperare precise parole o espressioni in pochi secondi, trovare un documento tra milioni che soddisfi certe chiavi di ricerca. D’altra parte nessuna macchina riesce ancora facilmente a risolvere tutti i tipi di ambiguità ed il processamento del linguaggio risulta un compito in cui efficienza computazionale e completezza dell’analisi linguistica sono variabili inversamente proporzionali. Questa tensione tra processamento linguistico umano ed artificiale ha ovviamente molte sfaccettature che vale la pena di esplorare. Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 5 di 12 Teresa Agovino – Corpora e informazioni linguistiche [Interrogazione di corpora e l’estrazione di informazioni linguistiche] Iniziamo con il recupero di informazioni squisitamente linguistiche. Un testo in formato digitale che eventualmente è stato annotato ci permette di fare cose molto interessanti sia per quanto riguarda lo studio della lingua che per quanto riguarda l’estrazione di grammatiche e lessici. Ma quali sono gli strumenti che si possono utilizzare per recuperare queste informazioni? A seconda che il nostro corpus sia strutturato (quindi annotato con informazioni morfo‐sintattiche e/o semantiche) o non strutturato (quindi testo semplice) ci sono strumenti adatti ai nostri scopi. [Espressioni Regolari] (Regular Expressions, RE o regex) (Termine coniato da Kleene) tecnicamente sono una notazione algebrica che permette di definire esattamente insiemi di stringhe di testo. In pratica si percepisce l’esigenza di utilizzare qualcosa di simile alle espressioni regolari ogni volta che si effettua una ricerca su internet o si tenta di trovare un’espressione “complessa” in un documento testuale. Domande del tipo “voglio trovare una stringa di testo che contenga la parola ‘margherita’ oppure la parola ‘margherite’” oppure “voglio un’espressione che contenga contemporaneamente la parola ‘ciclo’ e la parola ‘solare’, possibilmente in questo ordine” o ancora “voglio una frase che inizi per ‘previsione’ ma che non contenga nel suo prosieguo la parola ‘oroscopo’”. [Pattern di identificazione] Tutte queste domande sono esprimibili utilizzando le RE. Il cuore delle RE è il pattern di identificazione composto da caratteri alfanumerici (compresi segni di spaziatura e di interpunzione) e da segni speciali volti a stabilire le relazioni tra i caratteri del pattern. Sapendo che: - nella sintassi delle RE i caratteri tra parentesi quadre sono in alternativa (es. “[ab]” significa “a oppure b”) - che il punto significa “qualsiasi carattere” (ad esempio l’espressione “.*” cattura una qualsiasi sequenza di caratteri di arbitraria lunghezza visto che la “*” esprime la ripetizione arbitraria del carattere a cui si applica; - che il segno “^” indica l’inizio della frase - e che “[^(…)]” indica la negazione della sequenza di caratteri all’interno delle parentesi tonde, ecco la traslazione in RE delle domande pocanzi poste: Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 6 di 12 Teresa Agovino – Corpora e informazioni linguistiche La sintassi delle RE prevede che i caratteri alternativi, siano o inclusi tra quadre (es. [abcd] significa “a, oppure b, oppure c, oppure d”, [a‐z] significa qualsiasi carattere alfabetico minuscolo, [0‐1] corrisponde a “qualsiasi carattere numerico”) o separati da “|” (pipe) dentro parentesi tonde (es. (mare|spiaggia) restituisce stringhe che contengono la sequenza di caratteri ’mare’ oppure ‘spiaggia’). Le parentesi tonde identificano blocchi di caratteri che vengono sempre letti in sequenza: (abc) troverà solo espressioni del tipo “abc”, mentre [abc] individuerà ogni espressione che al suo interno conterrà una “a” oppure una “b” oppure una “c”. I caratteri speciali, come lo spazio o l’invio a capo, sono codificati solitamente da segni speciali; ad esempio in Perl, un linguaggio di programmazione di alto livello, spesso usato per manipolare stringhe di testo usando espressioni regolari, lo spazio o l’invio a capo si esprimono rispettivamente con “\s” e “\n”. Infine si possono usare i moltiplicatori, ovvero degli operatori che indicano la ripetizione di un carattere o sequenza di caratteri una o più volte (“*” un numero indefinito di vole, “+” una o più volte, “?” una o nessuna volta) e degli indicatori di posizione (ancore) che indicano quando si deve trovare il carattere, o la sequenza di caratteri ricercata (“^” indica l’inizio frase “$” la fine). Nel caso di moltiplicatori la stringa individuata dalla RE è quella che massimizza il numero di caratteri individuabili (le RE per questo motivo si definiscono “greedy” cioè “ingorde”: l’espressione “t.*e” preferirà “torre pendente” a “torre pendente” o a “torre pendente”). Per fare un po’ d’esercizio, ecco la tabella con le principali regole per la costruzione di pattern di identificazione: Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 7 di 12 Teresa Agovino – Corpora e informazioni linguistiche Tabella. Esempi di espressioni regolari Le RE sono utili non solo per individuare parole o espressioni specifiche, ma per rappresentare in modo compatto insiemi di stringhe. Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 8 di 12 Teresa Agovino – Corpora e informazioni linguistiche [Registri e sostituzioni] Infine, usando i registri, blocchi di memoria indicizzata in cui vengono archiviati le occorrenze che soddisfano un determinato pattern tra parentesi tonde, si possono riutilizzare le stringhe individuate per sostituirle ad altre secondo il pattern “espressione regolare di partenza/espressione regolare in cui avvengono le sostituzioni”. Ad esempio l’espressione che segue permette di costruire la forma attiva di una frase (“Gianni ha comprato la casa”) partendo dalla frase passiva (“la casa è stata comprata da Gianni”). la (casa|macchina) è stata comprata da (Maria|Gianni)/ \2 ha comprato la \1 “\2” corrisponde all’occorrenza individuata (ad esempio “Gianni”) dal secondo blocco della prima espressione regolare (Maria|Gianni), mentre “\1” è l’occorrenza (ad esempio “macchina”) che soddisfa il primo blocco (casa|macchina). Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 9 di 12 Teresa Agovino – Corpora e informazioni linguistiche 3. Paragrafo con un computer: il test di Turing Il famoso matematico inglese Alan Turing (1912-1954) (ideatore dell’omonima macchina) interrogandosi sul concetto di “intelligenza artificiale”, propose (in parte provocatoriamente) un famoso test (il test di Turing appunto) per valutare l’intelligenza di una macchina: tre attori, due umani e una macchina devono conversare attraverso terminale (modello chat‐line). Un umano è l’arbitro che deve valutare, in base alle domande che può liberamente fare via computer, chi dei due interlocutori è umano e chi è la macchina. La macchina supera il test di Turing se viene scambiata per umano. Il test di Turing ha suscitato moltissime riflessioni filosofiche sul concetto di “macchina”, “pensiero”, “linguaggio naturale” e di “intelligenza” (Searle, 1980). Vari sistemi “conversazionali” sono stati prodotti dopo la formulazione del test e alcuni di questi, riuscendo a manipolare in modo interessante, per quanto banale, espressioni linguistiche, sono degni di nota. Uno dei primi e più noti sistemi conversazionali è Eliza (1966). [Eliza e l’operazione di sostituzione] Eliza è un sistema conversazionale che simula il comportamento di uno psicologo rogeriano, cioè semplicemente stimola l’interlocutore umano a produrre frasi di senso compiuto su temi svariati. Il sistema ovviamente non comprende assolutamente quello che gli viene detto, ma simula un flusso dialogico coerente individuando certe espressioni chiave utilizzate dal parlante umano e innestando su di queste espressioni linguisticamente ben formate precompilate dal suo programmatore. Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 10 di 12 Teresa Agovino – Corpora e informazioni linguistiche I sistemi conversazionali hanno trovato un terreno molto fertile nella seconda metà degli anni Novanta con l’avvento di Internet e dei sistemi di chat. Noti sono i vari chat‐bot che affollavano le prime chat‐line (ad esempio ICQ) il cui unico scopo era quello di “adescare” utenti umani per propinare loro messaggi pubblicitari. Usi più lodevoli di questi strumenti sono stati fatti anche in ambito help‐desk: un discreto successo è stato ottenuto da Alice, chat‐bot della Telecom che accompagna l’utente nel sito della compagnia, rispondendo a domande generali (FAQ) attuando un modello dialogico di chat on‐line e fornendo varie istruzioni per la navigazione e/o compilazione di moduli e richieste. Recentemente Alice chat‐bot è stato dotato di corpo (un avatar, cioè un modello tridimensionale di essere umano dotato di espressioni facciali e vari “tic” prossemici) e di voce (la sintesi del parlato ha raggiunto livelli di notevole chiarezza e naturalezza). Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 11 di 12 Teresa Agovino – Corpora e informazioni linguistiche Bibliografia Bianchi, Cadei, Chesi, Lazzari, Maffei (2009) Informatica Umanistica. McGraw Hill Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore (L. 22.04.1941/n. 633). 12 di 12