ICT: elaborazione automatica di testi in linguaggio naturale Leonardo Lesmo Dipartimento di Informatica e Centro di Scienza Cognitiva Università di Torino 0 ICT: elaborazione automatica di testi in linguaggio naturale Il primo sogno • La storia comincia nel 1949, con uno studio di Warren Weaver (Rockefeller Foundation) relativo alla traduzione mediante calcolatore. • Il 7 gennaio 1954, venne presentato il primo sistema automatico di traduzione (Georgetown-IBM) dal Russo all’Inglese. Dizionario di 250 parole. Testi di chimica (49 frasi). • Vari sistemi sviluppati nel corso degli anni ’50, ma con risultati non soddisfacenti • Alla fine degli anni ’50 Yoshua Bar Hillel affermò che nessuna traduzione era possibile senza una base di conoscenza della realtà (una “enciclopedia universale”) 1 ICT: elaborazione automatica di testi in linguaggio naturale Il primo risveglio Fino agli anni ’60, la ricerca sulla Traduzione Automatica costò alle finanze pubbliche degli Stati Uniti più di 20 milioni di dollari. L’ “Automatic Language Processing Advisory Committee” (ALPAC) produsse un report sui risultati ottenuti, concludendo che “non si è vista nessuna traduzione automatica di un testo scientifico generale, e nessuna è prevedibile nel prossimo futuro”. I finanziamenti pubblici vennero sospesi è questo ebbe l’effetto collaterale di bloccare tutti i finanziamenti a NLP, anche non relativi alla traduzione. Questa decisione venne seguita anche da altri paesi, cosicchè l’elaborazione del linguaggio entrò in una fase dormiente. 2 Leonardo Lesmo Università di Torino ICT: elaborazione automatica di testi in linguaggio naturale Il nuovo sogno La nascita dell’Intelligenza Artificiale We propose that a 2 month, 10 man study of artificial intelligence be carried out during the summer of 1956 at Dartmouth College in Hanover, New Hampshire. The study is to proceed on the basis of the conjecture that every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it. An attempt will be made to find how to make machines use language, form abstractions and concepts, solve kinds of problems now reserved for humans, and improve themselves. La grammatica generativa di Chomsky Syntactic Structures – Mouton -1957 Aspects of the Theory of Syntax – MIT Press - 1965 3 ICT: elaborazione automatica di testi in linguaggio naturale • In IA, fioriscono studi sulla Rappresentazione della Conoscenza. Si inventano Reti Semantiche, Frames, Scripts. A partire dalla Logica Matematica, si approfondiscono studi sulle logiche di default, probabilistiche, sfumate. • Tutto ciò, insieme allo studio sulle grammatiche porta a nuovi obiettivi: non solo la traduzione, ma “comprensione” del significato di un testo, e cioè sua espressione in un “linguaggio di conoscenza”. • Fondamentale anche il contributo dell’ICT in senso stretto: linguaggi e grammatiche artificiali; strumenti di analisi efficienti; complessità del calcolo. 4 ICT: elaborazione automatica di testi in linguaggio naturale Tutti gli umani sono mortali TuttoPredet, m, pl ilArticolo,m,pl umanoNome,m,pl essereVerbo,ind,pres,3,pl mortaleAggettivo,m/s,pl essereVerbo,ind,pres,3,pl ilArticolo,m,pl mortaleAggettivo,m/s,pl Socrate è un umano SocrateNome,m,sing essereVerbo,ind,pres,3,sing unArticolo,m,sing umanoNome,m,sing essereVerbo,ind,pres,pl SocrateNome,m,sing unArticolo,m,sing umanoNome,m,sing TuttoPredet, m, pl umanoNome,m,pl ∀x (human(x) → mortal(x)) Socrate è mortale? ?mortal(Socrates) human(Socrates) Dimostratore di teoremi Sì 5 ICT: elaborazione automatica di testi in linguaggio naturale Il secondo risveglio Un bambino mangia un gelato in un cono Un bambino mangia un gelato in un bar • Ricordiamo Bar Hillel: dov’è la “conoscenza enciclopedica” necessaria per risolvere le ambiguità, sia strutturali che semantiche? • In altre parole: cosa sono i “simboli” human, mortal, Socrates, che compaiono nell’esempio precedente? 6 ICT: elaborazione automatica di testi in linguaggio naturale Una pausa nella veglia • Negli anni ’90 arriva Internet: le applicazioni linguistiche, con miliardi di pagine con contenuti in formato testuale richiedono metodi efficienti di indicizzazione e ricerca. • Google è ancora oggi il metodo più diffuso per cercare contenuti • Ma i suoi problemi sono noti: ricerca con parole chiave e quindi difficoltà di esprimere con precisione ciò che si desidera • Conseguenza: rallentamento degli studi con base linguistica e avvio di ricerche con base statistica. • Risultati: molto buoni per lingue che dispongono di “risorse linguistiche” (Inglese), meno per le altre lingue. In ogni caso, limite superiore all’accuratezza (80-90% a seconda del tipo di applicazione) 7 ICT: elaborazione automatica di testi in linguaggio naturale Il terzo sogno • Nel 1984 nasce il progetto Cyc (da enCYClopedia) • Attualmente (l’attività è ancora in corso) Cyc include oltre un milione di concetti, mentre la versione pubblica OpenCyc comprende circa 40.000 concetti e 300.000 relazioni tra essi • So, the mattress in the road to AI is lack of knowledge, and the antimattress is knowledge. But how much does a program need to know to begin with? The annoying, inelegant, but apparently true answer is: a non-trivial fraction of consensus reality - the millions of things that we all know and that we assume everyone else knows” (Guha & Lenat 90, p.4) • Negli anni ’90 iniziano gli studi sulle ontologie. 8 ICT: elaborazione automatica di testi in linguaggio naturale Un frammento di ontologia #$Thing #$Individual #$Intangible #$SetOrCollection #$IntangibleIndividual #$TemporalThing #$Situation #$Relationship #$Collection #$Living #$name #$mother #$Person #$PersonName #$residentOf #$city #$slotsConstrained #$AgeOfMother Constraint #$slotConstraints (#$GreaterThan (#$Diff (v #$age) (u #$age)) 16) 9 ICT: elaborazione automatica di testi in linguaggio naturale E oggi: sogno o veglia? • Gran cose e molte in brevi detti accolgo di questa donna, e più dietro ne lasso, che in quelli dì ch’io mi levai dal volgo, mi fe’ chiare Merlin dal cavo sasso. (Orlando Furioso, XIII, 61) • si.c vediamo x le 8.baci (Lorenzo) • (Solo per KX-TG1072) Se si imposta la data e l’ora col portatile 1, premere [ ] e [ ] su un altro portatile per visualizzare l’ora su quel portatile (Libretto istruzioni Cordless) • Perché noi, noi abbiamo steso i nostri panni sulle sue pietre dove abbiamo appeso i nostri cetracuori ai suoi alberi; e stiamo in ascolto, mentre lei ci bibbola, sulle rive dei fiumi della babalunga.[For we, we have taken our sheet upon her stones where we have hanged our hearts in her trees; and we list, as she bibs us, by the waters of babalong] (Finnegans Wake, Fine parte IV del 1° libro] 10 ICT: elaborazione automatica di testi in linguaggio naturale Conclusioni • Risorse linguistiche Sviluppo di grandi basi di dati di conoscenza linguistica (WordNet, VerbNet, …) • Machine Learning (apprendimento automatico) Già utilizzato nei metodi statistici, ma utilizzato con background linguistico può dare nuovi risultati • Embodied Cognition. Il calcolatore inserito nella realtà, con sensori e attuatori. La visione del mondo è diretta, non solo dati immessi manualmente 11 ICT: elaborazione automatica di testi in linguaggio naturale • Agenti, pianificazione automatica e dialoghi. Il calcolatore può avere scopi e prendere iniziative. Il linguaggio diventa uno strumento per agire nel mondo • Studi e modelli di emozioni Utili per comprendere stati d’animo dll’utente e per “manifestare” stati d’animo Si …. può ….. fare !!!! 12