Web-based Selection of Optimal Translations of Short Queries
Transcript
Web-based Selection of Optimal Translations of Short Queries
UNIVERSITÀ DEGLI STUDI DI GENOVA Facoltà di Scienze Matematiche, Fisiche e Naturali Dipartimento di Informatica e Scienze dell’Informazione Tesi di laurea Web-based Selection of Optimal Translations of Short Queries Relatore: prof. Stefano Rovetta Correlatori: prof. Paolo Rosso, Universidad Politécnica de Valencia Davide Buscaldi, Ph.D. Student, Universidad Politécnica de Valencia Candidato: Matteo Iskra Anno Accademico 2008/2009 Indice Introduzione .....................................................................................................1 1 Information Retrieval ....................................................................................2 1.1 Question Answering....................................................................................................2 1.2 Cross-Language Question Answering.........................................................................3 1.3 Cross-Language Evaluation Forum.............................................................................4 2 Machine Translation ......................................................................................5 2.1 Breve storia..................................................................................................................5 2.2 Modelli di sistemi di traduzione automatica................................................................6 2.3 Sistemi di traduzione automatica on-line....................................................................8 2.4 Problematiche di traduzione........................................................................................9 2.5 Valutazione di sistemi di traduzione automatica.........................................................9 3 Metodologia adottata ...................................................................................11 3.1 Scopo del lavoro........................................................................................................11 3.2 Metodi e tecniche.......................................................................................................12 3.2.1 Traduzioni automatiche on-line.......................................................................12 3.2.2 Ricerca nel Web...............................................................................................12 3.2.3 Valutazione traduttori automatici.....................................................................15 3.3 Risultati ottenuti........................................................................................................17 3.4 Analisi comparativa...................................................................................................18 Conclusioni e sviluppi futuri ..........................................................................20 i A The Future of Web Search - Yahoo! Research workshop ..........................21 B Cross-Language Information Processing workshop ..................................28 C Sociedad Española para el Procesamiento del Lenguaje Natural ..............35 Bibliografia .....................................................................................................40 ii Prefazione Ho iniziato questo progetto durante il mio soggiorno Erasmus a Valencia (Spagna), collaborando con il professor Paolo Rosso, docente presso il Departamento de Sistemas Informáticos y Computación dell'Universidad Politécnica de Valencia e Davide Buscaldi Ph.D. student del gruppo di ricerca RFIA (Reconocimiento de Formas e Inteligencia Artificial), presso la stessa università. Il lavoro è proseguito anche dopo il mio ritorno in Italia, grazie al professor Stefano Rovetta, docente presso il DISI (Dipartimento di Informatica e Scienze dell’Informazione) dell'Università degli Studi di Genova. Il lavoro intrapreso è il prosieguo della tesi di laurea di Sabatino Larosa, studente del DISI, sul tema dei “Sistemi di Question Answering Multilingue: L’importante Ruolo della Traduzione”. I miei studi hanno portato come risultato un articolo inviato al Journal "Sociedad Española para el Procesamiento del Lenguaje Natural" e due presentazioni a conferenze internazionali: nel maggio del 2006, a Barcellona, in Spagna al workshop "The Future of Web Search" organizzato da Yahoo! Research e nel settembre dello stesso anno, a Genova al workshop "Cross-Language Information Processing" organizzato nel contesto del progetto europeo "ICT for EU-India Cross-Cultural Dissemination". iii Introduzione Oggigiorno nel Web possiamo trovare svariati sistemi di traduzione automatica (Machine Translation, MT) specializzati nelle traduzioni di frasi semplici e brevi. Questi strumenti possono essere utili nel campo del Question Answering (QA) ed in particolare nel campo del Cross-Language Question Answering (CLQA). Infatti, in quest’ultimi, gioca un ruolo importante la traduzione di domande concise e brevi per ottenere una traduzione accettabile da una lingua sorgente ad una di destinazione. L’obiettivo di questo lavoro è fornire ai sistemi QA la migliore traduzione possibile da un insieme di sistemi di traduzione automatica sfruttando la ridondanza del Web. In pratica il Web viene utilizzato come un archivio di corrette sequenze di parole da confrontare con le traduzioni ottenute. La scelta della miglior traduzione sarà effettuata usando tecniche implementate con basi statistiche e perciò indipendenti dal linguaggio. In particolare vogliamo valutare le traduzioni dall’Inglese allo Spagnolo – lingue per le quali abbiamo un vasto numero di documenti a disposizione – e comparare i risultati ottenuti dal Web e da una collezione statica di documenti. 1 Capitolo 1 Information Retrieval Attualmente il Web fornisce una grande quantità di documenti in formato digitale in constante crescita che possono soddisfare quasi ogni tipo di richiesta di informazioni, ma senza adeguati strumenti che aiutino l’utente a trovare le informazioni richieste tutti questi documenti sarebbero inutili. Per risolvere questo problema sono nati diversi approcci per il recupero di informazioni (Information Retrieval, IR) [1]. Un sistema di IR affronta il problema associato al recupero di documenti da una collezione in risposta ad una interrogazione dell’utente. L’obiettivo è cercare in una raccolta di testi e restituire un sottoinsieme di documenti pertinenti alla richiesta dell’utente. Un esempio lampante di sistemi di IR sono gli attuali motori di ricerca – Google1 e Yahoo2 su tutti – però incapaci di fornire una risposta precisa ad una specifica richiesta di informazione posta in linguaggio naturale. 1.1 Question Answering L’alternativa ai motori di ricerca per risolvere una specifica richiesta di informazione sono i sistemi di Question Answering (QA); data una collezione di documenti questi sistemi sono in grado di recuperare risposte a domande poste in linguaggio naturale. Per esempio a una domanda del tipo: “Chi ha vinto lo Scudetto 1991?” il sistema di QA risponderebbe “Sampdoria”, anziché fornire una lunga serie di documenti correlati all'U.C. Sampdoria3. 1 Google, Inc. – http://www.google.com 2 Yahoo! Co. – http://www.yahoo.com 3 U.C. Sampdoria – http://www.sampdoria.it 2 3 Tipicamente un sistema di QA è composto da tre moduli: 1. question analysis, trasforma la domanda in una serie di keyword-query; 2. document processing, estrapola da una collezione di documenti degli snippets, cioè porzioni di documento che contengono le keyword dell’interrogazione; 3. answer extraction, estrae le risposte a partire dai snippets selezionati e sceglie la risposta migliore in base a un ranking. Figura 1: Architettura tipica di un sistema QA Recentemente sono stati sviluppati strumenti web che si basano su sistemi di QA come True Knowledge4 e Walfram Alpha5. 1.2 Cross-Language Question Answering Esistono anche sistemi di QA che permettono all’utente di formulare la domanda in una lingua differente da quella della collezione di documenti usata per la ricerca della risposta. Questi sistemi sono chiamati Cross-Language Question Answering (CLQA)[2]. I sistemi CLQA sfruttano la ridondanza dei documenti nel Web per le loro ricerche. Infatti, cercando la stessa informazione in un insieme di documenti scritti in una lingua più comune si incrementano le possibilità di ottenere la risposta esatta. Attualmente la maggioranza dei sistemi usa traduttori disponibili on-line ma la qualità delle traduzioni non è delle migliori e ciò ha un impatto negativo sull’efficienza del sistema di QA. Un sistema di questo tipo, QUASAR[3], è stato sviluppato presso il Laboratorio di Ingegneria del Linguaggio Naturale del gruppo di Pattern Recognition and Artificial Intelligence dell’Universidad Politécnica de Valencia. 4 True Knowledge – http://www.trueknowledge.com/ 5 Wolfram Alpha – http://www.wolframalpha.com/ 4 1.3 Cross-Language Evaluation Forum Il CLEF6 (Cross-Language Evaluation Forum) è un consorzio europeo che, dal 2000, organizza ogni anno una competizione a livello internazionale riguardante sistemi di Information Retrieval, operanti su lingue europee in ambito monolingua e multilingua. Il principale obiettivo del CLEF è di fornire una struttura dove i ricercatori possano scambiarsi idee e risultati. A questo scopo l’organizzazione definisce alcuni tasks che dipendono dalla lingua, dalla sorgente di informazione e dal formato dell’informazione. Tra questi troviamo anche quello riguardante il Multiple Language Question Answering, chiamato QA@CLEF. Da alcuni anni anche l’Universidad Politécnica de Valencia partecipa alla competizione e nel 2005 prese parte alla gara con il sistema QUASAR. La Tabella 1.1 mostra la precisione ottenuta da differenti sistemi in Spagnolo presentati alla gara. Il sistema con maggiore precisione (inao051eses) risulta essere quello sviluppato presso il Laboratorio di Tecnologie del Linguaggio dell'INAOE, Mexico[4]. Il sistema QUASAR (upv051eses), sviluppato ex novo, non diede grandi risultati ma integrandolo al sistema dell'INAOE si ottennero risultati desiderabili (tova051eses)[5]. sistema precisione inao051eses 42.00% tova051eses 41.00% upv051eses 33.50% alia051eses 33.00% Tabella 1.1: Risultati statistici di alcuni sistemi in Spagnolo partecipanti al CLEF-2005 6 CLEF – http://www.clef-campaign.org/ Capitolo 2 Machine Translation Un aspetto fondamentale per un sistema CLQA è la traduzione delle domande da una lingua all’altra. Attualmente esistono sistemi di traduzione automatica (Machine Translation, MT), disponibili anche on-line, che traducono decentemente frasi semplici e brevi. Le difficoltà che incontrano questi sistemi risiedono nella complessità del linguaggio umano, pieno di eccezioni e ambiguità. Alcune traduzioni risulteranno quindi incorrette perché questi sistemi sono incapaci di riconoscere le caratteristiche linguistiche. Allo stato attuale i sistemi MT offrono un valido aiuto nel lavoro di traduzione ma resta comunque imprescindibile la supervisione umana. 2.1 Breve storia La traduzione automatica fu proposta all'inizio come via d'aiuto alla comunicazione nel 17° secolo. Fu pensato un dizionario meccanico come risposta alle barriere linguistiche, che sia Cartesio che Leibniz considerarono realizzabile. Solo a metà del secolo scorso i meccanismi di traduzione furono effettivamente tentati. Il primo di questi tentativi fu nel 1937, un dizionario a schede perforate chiamato “cerveau mécanique”, progettato da Georges B. Artsrouni che era in grado di tradurre in automatico parole di quattro lingue diverse in francese [6]. Quasi vent'anni più tardi, nel gennaio 1954, la collaborazione tra la Georgetown University e IBM diede vita alla prima dimostrazione pubblica di un sistema di traduzione automatica. Un campione di frasi russe è stato tradotto in inglese. Tuttavia il testo sorgente fu selezionato accuratamente e il vocabolario consisteva solo di 250 parole e solo 6 regole grammaticali. Nel 1966, visti gli scarsi risultati ottenuti, l'Automatic Language Processing Advisory Committee (ALPAC) tagliò i fondi alla ricerca. Il resoconto 5 6 della commissione concludeva che i sistemi MT erano inutili, costosi e imprecisi. Ciò nonostante le ricerche continuarono in Europa e in Canada, sviluppando rispettivamente Eurotra e Météo. In piena Guerra Fredda e sulla scia degli esperimenti della Georgetown, nel 1968 grazie a Peter Toma, nasce Systran7 un sistema di traduzione diretta dal russo all’inglese, commissionato dall'Aeronautica degli Stati Uniti. Negli anni settanta questo sistema si occupò anche delle traduzioni Franco-Inglesi della Commissione Europea, oltre che essere impiegato presso la NATO e varie aziende commerciali, come XEROX, General Motors, etc. Systran divenne da subito uno dei più noti e popolari sistemi di traduzione automatica [6]. Negli anni ottanta lo sviluppo dell’intelligenza artificiale e del Natural Language Processing (NLP) hanno permesso di integrare ai modelli primitivi di MT componenti di analisi morfologica e sintattica e disambiguatori semantici. In concorrenza a Systran nascono sistemi commerciali come METAL, Globalink, Tovna ed entra sul mercato la ricerca e il prodotto giapponese, in particolare per le grandi industrie dell'elettronica di massa. L'avvento del Web negli anni novanta porta i sistemi MT on-line. Nel 1997 la collaborazione tra Systran e AltaVista8 (dal 2004 acquisita da Yahoo!) danno vita a Babelfish9, il primo sistema di traduzione gratuito on-line che offre ben diciotto coppie di traduzione. Oggi seguendo questo esempio molti portali offrono servizi di traduzione gratuita on-line portando gli utenti a una vasta scelta di possibilità. 2.2 Modelli di sistemi di traduzione automatica Dietro il processo di traduzione, apparentemente semplice, si cela una complessa operazione cognitiva. Per decodificare il significato del testo di partenza nella sua interezza, il traduttore deve interpretare e analizzare tutte le caratteristiche del testo, un processo che richiede una conoscenza approfondita della grammatica, della semantica, della sintassi, ecc... della lingua di partenza, così come la cultura dei suoi parlanti. Il traduttore ha bisogno della stessa conoscenza approfondita per ricodificare il significato nella lingua di destinazione. 7 Systran Language Translation Technologies – http://www.systransoft.com/ 8 Overture Service, Inc. – http://www.altavista.com 9 Babelfish – http://babelfish.altavista.com 7 Questa è la sfida dei moderni sistemi MT: come sviluppare un sistema che “comprenda” un testo come fa una persona e che “generi” un nuovo testo nella lingua di destinazione che “suoni” come se fosse stato scritto da una persona. Questo problema può essere affrontato in diversi modi. I principali paradigmi MT sono: • sistemi basati su regole (ruled-based MT) • sistemi statistici (statistical MT) • sistemi ibridi (hybrid MT) Nei sistemi MT basati su regole vengono identificate e formalizzate alcune regole organizzate in moduli diversi che interagiscono a diversi livelli. A seconda del livello abbiamo una traduzione: • diretta, il sistema riduce al minimo le informazioni linguistiche da analizzare, prendendo in considerazione solo le caratteristiche della lingua di partenza e di quella di arrivo, necessarie per il procedimento della trasformazione. • sintattica, questi sistemi sono fondati su modelli sintattici di grammatica formale e centrati sull’uso di strumenti propri del NLP. Tra i sistemi basati sulle regole, quelli sintattici sono i maggiormente usati e i migliori in termini di performance. • a interlingua, questi sistemi sono caratterizzati da una rappresentazione intermedia, alla quale si arriva tramite una serie di livelli astratti di rappresentazione morfologica, sintattica e semantica. Una comoda rappresentazione di questi tre approcci è quella del triangolo di Vauquois (Figura 2), in cui si nota come la profondità di analisi cresce salendo verso il vertice mentre la quantità di conoscenza richiesta decresce. 8 Nei sistemi statistici si fa ricorso a parametri statistici per l’attribuzione dell’ordine delle parole e del migliore candidato per la traduzione. Non vengono utilizzate regole grammaticali, ma si usano le probabilità di occorrenza e di frequenza delle parole. I risultati dei sistemi di impronta statistica si sono rilevati migliori rispetto a quelli che fanno ricorso a regole. Gli attuali sistemi di traduzione automatica sono spesso ibridi, e tentano di arricchire per composizione le metodologie basate su regole con quelle statistiche. Il vantaggio è di poter sviluppare diverse strategie di risoluzione a seconda dello specifico problema traduttivo da affrontare. 2.3 Sistemi di traduzione automatica on-line Esistono diversi sistemi di traduzione gratuita disponibili on-line, Google Translate10 è forse il più conosciuto, ma ne esistono molti altri come Systran, Promt11, FreeTranslation12, Linguatec13, Reverso14 e Worldlingo15. Le loro traduzioni sono basate su approcci diversi e a seconda delle coppie di traduzione fanno uso di sistemi non proprietari, ma si appoggiano ad altri sistemi con un alto grado di affidabilità. Per esempio Systran è il miglior strumento per le traduzioni in Russo ed è condiviso da molti traduttori automatici. 10 11 12 13 14 15 Google Translate – http://translate.google.com Promt Translation Software and Dictionaries – http://www.e-promt.com/ SDL Enterprise Translation Server – http://www.freetranslation.com/ Linguatec Personal Translator – http://www.linguatec.de/ Softissimo – http://www.reverso.net/ WorldLingo – http://www.worldlingo.com 9 2.4 Problematiche di traduzione Nello studiare il linguaggio umano ci avviciniamo a quello che qualcuno potrebbe chiamare l' “essenza umana” ovvero le peculiari qualità della mente che sono conosciute finora come uniche dell'uomo.[7] Essendo il linguaggio una capacità unica dell'essere umano, solo costui è in grado di comprendere e costruire un linguaggio secondo una grammatica complessa come la nostra. Esistono molte diverse regole dentro una grammatica che una macchina deve imparare allo scopo di saper tradurre da una lingua all'altra. Questi problemi linguistici sono numerosi e sono una costante sfida alla progettazione di sistemi di traduzione automatica. Nonostante tutto questi sistemi soffrono di alcuni difetti; i più comuni sono legati ai nomi propri che vengono tradotti erroneamente (es. FIAT diventa SALSA DE CARNE13 o MANDATO8, AUTORIZACIÓN6), oppure per la mancanza di significato delle frasi a causa di ambiguità, omonimia (fenomeno per cui due parole, di etimo e significato diverso, hanno uguale suono o grafia) e polisemia (pluralità di significati in una stessa parola). Per esempio alla domanda “Chi ha vinto lo Scudetto 1991?”, è chiaro il riferimento allo scudetto del campionato italiano di calcio ma l’ambiguità della parola “scudetto” porta a errori del tipo “Who has gained badge 1991?” o “Who has won the small shield 1991?” mentre la forma corretta sarebbe “Who won the championship 1991?”. Se vogliamo disambiguare la domanda potremmo riformularla in maniera diversa: “Chi ha vinto il campionato italiano di calcio nel 1991?”. Purtroppo per il fatto che la parola “calcio” ha diversi significati (polisemia), le traduzioni risulteranno molto diverse da quella reale. Per esempio “Who has gained the Italian championship of soccer in 1991?” oppure “Who has won the Italian championship of football in 1991?” o ancora “Who has won the Italian championship of kick in 1991?” invece delle forma corretta “Who won the Italian soccer Championship in 1991?”. Non dimentichiamo anche della possibile presenza di errori grammaticali. Questo si nota benissimo negli esempi precedenti nelle forme verbali scorrette “has won” invece di “won”. 2.5 Valutazione di sistemi di traduzione automatica Per avere una ragionevole valutazione qualitativa, oggettiva e seria delle tecnologie MT abbiamo bisogno di strumenti automatici che indichino il grado di affidabilità delle 10 traduzioni. Per effettuare questi calcoli introduciamo il concetto matematico di metrica o funzione distanza, cioè la funzione che definisce la lontananza tra due elementi di un insieme. Nel campo dei sistemi MT la “distanza” tra due traduzioni è somiglianza che le due hanno. La metrica più popolare è chiamata BLEU16 (BiLingual Evaluation Understudy) [8] che fornisce una rapida panoramica sulle prestazioni di un sistema MT confrontando la sua traduzione con la traduzione di riferimento eseguita dall'uomo. Seguendo lo sviluppo di BLEU, il National Institute of Standars and Technology (NIST) ha sviluppato un altro strumento di valutazione basato sempre su BLUE, chiamato metrica NIST17. La principale differenza tra i due è che BLEU si concentra più sulla padronanza delle lingue, mentre NIST si concentra più sulla precisione lessicale. Entrambi basano la comparazione su una serie di parole (n-grammi) così come METEOR18 che invece usa singoli grammi. Mentre altri si basano sulla comparazione di stringhe come WER19. Effettuare una valutazione automatica su un vasto numero di sistemi è importante per conoscere non solo il migliore, in tempi ragionevoli, ma anche per acquisire una chiara visuale dello stato dell'industria ai giorni nostri. 16 17 18 19 BLEU – Papineni et al., 2001 NIST – Doddington et al., 2002 METEOR (Metric for Evaluation of Translation with Explicit ORdering) - Lavie et al., 2004 WER (Word Error Rate) - Nieben et al., 2000 Capitolo 3 Metodologia adottata Un primo studio alla ricerca della miglior traduzione tra un insieme di traduttori è stato effettuato utilizzando applicazioni software di traduzione automatica contro traduttori automatici on-line per tradurre domande dall’Italiano allo Spagnolo [9][10]. Lo studio si basava su due metodi: quello Word-Count e quello Double-Translation. Il primo metodo sfrutta la ridondanza delle parole in tutte le traduzioni ovvero la traduzione con il maggior numero di parole in comune viene scelta. Se una parola ha un’alta frequenza si avranno maggiori possibilità che la parola originale sia tradotta correttamente. Il secondo metodo sfrutta la doppia traduzione cioè, una domanda viene tradotta dall’Italiano allo Spagnolo e nuovamente dallo Spagnolo all’Italiano. La traduzione che sarà più simile alla domanda originale verrà scelta. Entrambe le metodologie adottate, per la scelta della traduzione ottimale, si basano solo sull'insieme delle domande da tradurre e da quelle tradotte. Uno sviluppo successivo è quello di utilizzare un “vocabolario” di parole esatte da confrontare con le domande tradotte per estrapolare quella più corretta. 3.1 Scopo del lavoro Lo scopo di questo lavoro è sfruttare la ridondanza del Web per ottenere un archivio di sequenze di parole, più o meno esatte, da confrontare con le traduzioni dei traduttori automatici. Il lavoro si basa solo sulla prima fase di un sistemi di CLQA, cioè sulla traduzione dalla lingua sorgente a quella di destinazione. 11 12 3.2 Metodi e tecniche I vari problemi che affliggono i traduttori on-line ne impediscono l’uso di uno in particolare. Quindi si è scelto di utilizzarne un insieme per poi scegliere la traduzione che si avvicina di più a quella corretta. La scelta è caduta su quei traduttori che non hanno vincoli sulla quantità di caratteri per la traduzione e quelli che utilizzano lo stesso sistema di traduzione per la coppia di lingue che nel nostro caso sono l'Inglese e lo Spagnolo. I sistemi di traduzione automatica on-line utilizzati sono cinque: Systran, FreeTranslation, Promt, Reverso e Linguatec. Questo permetterà di vedere le differenze su un gran numero di sistemi e perciò di ottenere un ampia varietà di risultati. Per la ricerca nel Web si è deciso di prendere in considerazione più motori di ricerca, diversi tra loro, per far notare eventuali differenze di ricerca . I motori di ricerca usati sono Google, Yahoo!, Ask20 e Lucene21 una libreria che permette di avere in Java un motore di ricerca full text. I dati gestiti da Lucene sono rappresentati da una quantità personalizzabile di documenti testuali dai quali estrarre le informazioni richieste. Per lo sviluppo degli esperimenti è stato utilizzato come linguaggio di programmazione Python22. 3.2.1 Traduzioni automatiche on-line Per prima cosa forniamo ai traduttori automatici on-line la domanda in Inglese ottenendo così cinque possibili traduzioni in Spagnolo. 3.2.2 Ricerca nel Web Un n-gramma è una sequenza di n parole di una frase [11], per ogni traduzione creiamo una catena di trigrammi (una sequenza di tre parole) ottenuta nel seguente modo: data la sequenza di parole della traduzione w = (w1, . . . ,wn) otteniamo l'insieme di trigrammi T = {(w1,w2,w3), (w2,w3,w4), . . . (wn−2,wn−1,wn)} 20 IAC Search & Media – http://www.ask.com/ 21 Lucene – http://apache.lucene.org/ 22 Python Software Foundation – http://www.python.org 13 Esempio ¿Quién es el Presidente del Comité Nobel noruego? w=( Quién, es, el, Presidente, del, Comité, Nobel, noruego) T={(Quién es el), (es el Presidente), (el Presidente del), (Presidente del Comité), (del Comité Nobel), (Comité Nobel noruego)} Dopodiché ogni trigramma t∈T viene inviato ai motori di ricerca nella forma: “wi wi+1 wi+2”, ottenendo c(ti), cioè il numero di pagine che contengono quel trigramma. Ottenendo il numero di occorrenze nella collezione, in altre parole, abbiamo la probabilità di trovare un corretto trigramma nella collezione. Nella Tabella 3.1 si presentano i risultati ottenuti dai quattro motori di ricerca per l'esempio precedente. Esempio ¿Quién es el Presidente del Comité Nobel noruego? trigrammi Ask Google Lucene Yahoo Quién es el 4200 271000 178 262 es el Presidente 4990 618000 347 174000 el Presidente del 77800 8560000 27795 3530000 Presidente del Comité 1820 1610000 3864 529 del Comité Nobel 6 468 0 0 Comité Nobel noruego 0 328 0 1 Tabella 3.1: Risultati dei numeri di pagine trovate da ogni motore di ricerca per ogni trigramma 14 3.3.3 Formula di Shannon Il peso di ogni catena di trigrammi (e dunque della corrispondente traduzione) si ottiene a partire dalla Formula dell’Entropia di Shannon (3.1), che misura la quantità di informazioni rappresentate dalla traduzione [12]. n H ( X ) = −K ∑ p(i) log p(i) (3.1) i =0 dove K è una costante arbitraria (dipendente dal problema), e p(i) è la probabilità dell’i-esimo frammento del messaggio. Nel nostro caso abbiamo deciso di calcolare la probabilità di ogni trigramma mediante il numero di pagine web. Denotiamo con c(ti) la funzione che restituisce il numero di pagine web che contengono il trigramma ti e ridefiniamo i-esimo frammento come ti=(wi,wi+1,wi+2) e bi=(wi,wi+1). La probabilità sarà stimata come c(t ) ) p (ti ) = i c(bi ) (3.2) dove la stima di un certo trigramma ti è data dal numero di volte c(ti) in cui appare nella collezione diviso il numero di volte in cui appare il suo bigramma radice c(bi) (3.2). Usiamo quindi la ricerca nel Web come modello probabilistico del linguaggio.[13] Se sostituiamo questa stima (3.2) nella Formula di Shannon (3.1) otteniamo n H ( X ) = −K c (ti ) ∑ c(b ) (c(t ) − c(b )) i i =0 i (3.3) i Inoltre abbiamo utilizzato una scala logaritmica per il conteggio delle pagine, dovuto al fatto che nel Web usualmente c(bi)>>c(ti), e un fattore lineare di normalizzazione come K. 15 Dopo queste osservazioni la formula ottenuta per calcolare l'entropia di una traduzione X sarà: H (X ) = − 1 n n log c(ti ) ∑ log c(b ) (log c(t ) − log c(b )) i i =0 (3.4) i i Ora pesiamo ognuna delle cinque traduzioni e scegliamo quella con il più alto peso, cioè quella con maggior probabilità corretta. In caso di pesi uguali verrà scelta quella del traduttore base (Promt). Nella Tabella 3.2 si presentano i risultati ottenuti utilizzando la Formula di Shannon applicata all'esempio precedente con in evidenza i valori massimi per ogni motore di ricerca. Esempio Who is the Chairman of the Norwegian Nobel Committee? MT Systems H(X) Ask H(X) Google H(X) Lucene H(X) Yahoo Systran 2.030221 2.219629 1.218339 1.913339 FreeTrans 1.821851 1.979510 1.122901 1.726145 Linguatec 1.748238 1.774449 1.186603 1.940181 Promt 2.193203 2.454154 1.566183 1.911211 Reverso 2.030221 2.236060 1.218339 1.905986 Tabella 3.2: Risultati della Formula di Shannon per ogni traduttore utilizzando diversi motori di ricerca. 3.2.3 Valutazione traduttori automatici Per controllare la correttezza di questi risultati abbiamo scelto di utilizzare il metodo BLEU, il cui principale scopo è quello di comparare il numero di n-grammi trovati nella traduzione candidata con il numero di quelli nella traduzione di riferimento corretta. La formula usata per calcolare la precisione degli n-grammi è semplice. Le parole della traduzione candidata che combaciano con le parole della traduzione di riferimento sono conteggiate e poi divise per il numero di parole della traduzione candidata. 16 L’attuale formula usata per calcolare il punteggio, da 0 a 1, raggiunto da una traduzione è la seguente: N L*ref − 1, 0 Score = exp ∑ wn log( pn ) − max L n =1 sys (3.5) dove the number of n-grams in segment i, in the translation being pn = ∑ evaluated, with a matching reference cooccurence in segment i i the number of n-grams in segment i, ∑ in the translation being evaluated i wn = N-1 N=4 e Lref = the number of words in the reference trans that is closest in length to the translation being scored Lsys = the number of words in the translation being scored Nel nostro caso i testi da confrontare saranno le domande del corpus. Esempio - domanda da tradurre: Who is the Chairman of the Norwegian Nobel Committee? - domanda realmente corretta: ¿Quién es el Presidente del Comité Nobel noruego? MT System Traduzione BLEU Score Systran ¿Quién es el presidente del comité noruego Nobel? 0.6580 FreeTrans ¿Quién es el Presidente del Comité noruego de Nóbel? 0.5555 Linguatec ¿Quién es el Presidente del Comité de Nobel noruego? 0.6580 Promt ¿Quién es el Presidente del Comité Nobel noruego? 1.0000 Reverso ¿Quién es el Presidente del Comité noruego nóbel? 0.6312 Tabella 3.3: Risultati di BLEU per ogni sistema di traduzione automatica. 17 3.3 Risultati ottenuti Gli esperimenti sono stati effettuati utilizzando il corpus di 200 domande derivanti dalla gara del CLEF-200523. Utilizzando l'algoritmo BLUE per valutare ogni sistema di traduzione automatica otteniamo i risultati della seguente tabella: BLUE Score Systran FreeTrans Linguatec Promt Reverso 0.3462 0.3707 0.3911 0.4204 0.3907 Tabella 3.4: Risultati per ogni sistema di traduzione automatica su 200 domande Successivamente usando la Formula di Shannon, scegliamo le migliori traduzioni per ogni motore di ricerca, confrontando poi i risultati con la selezione ideale fatta manualmente: BLUE Score Ask Google Lucene Yahoo! manuale 0.3809 0.3920 0.3774 0.3546 0.4622 Tabella 3.5: Risultati per ogni motore di ricerca Si è considerata inoltre la possibilità di confrontare questa metodologia di lavoro utilizzando il corpus di domande DISEQuA24 della gara del CLEF-200325. I risultati di BLUE per ogni sistema di traduzione automatica sono i seguenti: BLUE Score Systran FreeTrans Linguatec Promt Reverso 0.2825 0.3328 0.3107 0.3629 0.3524 Tabella 3.6: Risultati per ogni sistema di traduzione automatica su 450 domande La peculiarità di questo corpus è quella che le 450 domande sono suddivise in categorie. Sono considerati sette tipi di domande: persone, luoghi, misure, date, organizzazioni, oggetti, e altro (che non rientra nelle precedenti categorie). L'obiettivo di questa suddivisione è quello di creare un corpus bilanciato, con una buona copertura per 23 http://clef-qa.itc.it/2005/ 24 DISEQuA - Dutch, Italian, Spanish and English collection of Questions and Answers 25 Cross-language Question Answering: The Key Role of Translation 18 tutte le categorie. I risultati con le domande suddivise in categorie: categoria date location measure object organization other person n° 64 85 103 12 41 54 91 Systran 0.1689 0.2686 0.2674 0.2050 0.1985 0.2358 0.4314 FreeTrans 0.2730 0.3563 0.3024 0.2371 0.2458 0.2439 0.4719 Linguatec 0.2272 0.3307 0.2585 0.1512 0.2433 0.3079 0.4384 Promt 0.3270 0.3779 0.3113 0.2257 0.2906 0.2878 0.5133 Reverso 0.2931 0.3655 0.3170 0.1400 0.2988 0.3077 0.4965 Tabella 3.7: Risultati di ogni sistema di traduzione automatica per ogni categoria Utilizzando la Formula di Shannon otteniamo questi risultati: BLUE Score Ask Google Lucene Yahoo! 0.3247 0.3323 0.3131 0.3440 Tabella 3.8: Risultati per ogni motore di ricerca Sempre utilizzando la formula di Shannon ecco i risultati per ogni motore di ricerca con le domande suddivise in categorie: categoria date location measure object organization other person n° 64 85 103 12 41 54 91 Ask 0,2612 0,3080 0,2814 0,1521 0,2582 0,3191 0,4682 Google 0,2398 0,3161 0,2867 0,1735 0,2549 0,3301 0,4924 Lucene 0,2639 0,3410 0,3056 0,2416 0,2679 0,3208 0,4928 Yahoo! 0,2413 0,2992 0,2699 0,1767 0,2425 0,2813 0,4719 Tabella 3.9: Risultati di ogni sistema di traduzione automatica per ogni categoria 3.4 Analisi comparativa Come si può vedere dai risultati del punteggio BLEU, il miglior sistema tra tutti è senz'altro Promt capace di tradurre correttamente, o molto vicino alla forma corretta, circa il 42% del corpus CLEF2005 e circa il 36% del corpus CLEF03 (Tabella 3.10). 19 BLUE Score Systran FreeTrans Linguatec Promt Reverso n° domande CLEF2005 0.3462 0.3707 0.3911 0.4204 0.3907 200 CLEF2003 0.2825 0.3328 0.3107 0.3629 0.3524 450 Tabella 3.10: Risultati BLEU per ogni corpus usato Utilizzando i motori di ricerca notiamo che, se per il corpus CLEF2005, abbiamo circa un 39% di precisione con Google, cambia e diminuisce la percentuale per il corpus CLEF2003, arrivando al 34% utilizzando invece Yahoo! (Tabella 3.11). BLUE Score CLEF2005 CLEF2003 Ask Google Lucene Yahoo! manuale 0.3809 0.3247 0.3920 0.3323 0.3774 0.3131 0.3546 0.3440 0.4622 - Tabella 3.11: Risultati BLEU per ogni motore di ricerca Le percentuali sono comunque al di sotto di quelle del miglior traduttore (Promt). Proviamo ora a suddividere le domande in base alla loro campo di interesse e confrontare i risultati con i miglior traduttore. categoria n° date location measure object organization other person 64 85 103 12 41 54 91 Machine Translator BLEU traduttore score Promt 0.3270 Promt 0.3779 Reverso 0.3170 FreeTrans 0.2371 Reverso 0.2988 Linguatec 0.3079 Promt 0.5133 Formula di Shannon BLEU motore di score ricerca Lucene 0,2639 Lucene 0,3410 Lucene 0,3056 Lucene 0,2416 Lucene 0,2679 Google 0,3301 Lucene 0,4928 Tabella 3.12: Comparazione risultati secondo categoria Purtroppo, come da Tabella 3.12, vediamo che non c'è nessun incremento delle prestazioni utilizzando la formula dell'entropia di Shannon per la scelta della miglior traduzione. Conclusioni e sviluppi futuri La scelta di più motori di ricerca non incide sugli esperimenti, anche se Google fornisce migliori risultati rispetto agli altri. Questo perché non sempre la formula dell’entropia di Shannon permette di scegliere la miglior traduzione. Lucene non dà pessimi risultati, rispetto a Yahoo! e Ask, nonostante la collezione statica di documenti. Non esiste quindi un abbassamento della qualità come risorsa lessicale tra il Web e una collezione di documenti statica. Risulta inoltre che la selezione manuale della miglior traduzione sia sotto il 50%. Sfortunatamente la perdita di precisione è dovuta al basso livello dei sistemi MT perché alcuni errori sono spesso gli stessi per tutti i traduttori, con l’inevitabile ricaduta sulla forzata scelta della traduzione comunque errata. Anche le pagine Web non garantiscono buoni risultati perché i motori di ricerca non distinguono la lingua in cui sono scritti i trigrammi, i segni di punteggiatura che possono apparire tra le parole e nemmeno la presenza di accenti o lettere maiuscole. Comunque per i sistemi QA, che richiedono semplici domande, tutti i sistemi MT restituiscono traduzioni apprezzabili. Si può tenere in considerazione, per sviluppi futuri, la possibilità di usare multigrammi e caratteri jolly che sostituiscano gli errori più comuni come nomi propri, acronimi e abbreviazioni. 20 Appendice A The Future of Web Search Yahoo! Research workshop Le seguenti trasparenze si basano sulla presentazione che ho esposto al corso di Estructuras de Datos y Algoritmos (EDA) sostenuto nell’anno accademico 2005/06 presso l’Universidad Politécnica de Valencia come studente Erasmus. Le stesse sono state presentate dal docente del corso di EDA, nonché dal relatore esterno alla tesina, al workshop organizzato da Yahoo! Research a Barcellona nel maggio del 2006 [14]. 21 22 23 24 25 26 Appendice B Cross-Language Information Processing workshop Le seguenti trasparenze sono disponibili nel sito del workshop “Cross-Language Information Processing”[15] organizzato al DISI nel contesto del progetto europeo “ICT for EU-India Cross-Cultural Dissemination”. 27 28 29 30 31 32 33 Appendice C Sociedad Española para el Procesamiento del Lenguaje Natural Il seguente articolo è stato inviato al Journal “Sociedad Española para el Procesamiento del Lenguaje Natural”26. 26 http://www.sepln.org/ 34 35 36 37 38 Bibliografia [1] Baeza-Yates, R., Ribeiro-Neto, B., 1999, Modern Information Retrieval. AddisonWesley. [2] Grefenstette G., 1998, Cross-language information retrieval. Kluwer Academic Publishers. [3] Gomez J.M., Buscaldi D., Bisbal E., Rosso P., Sanchis E., QUASAR: The Question Answering System of the Universidad Politecnica de Valencia. In: CLEF 2005 Proceedings. Springer Verlag, LNCS 4022 – 0939, 2006. [4] Del-Castillo-Escobedo A., Villaseñor-Pineda L. e Gómez J.M., QA on the Web: A Preliminary Study for Spanish Language. Proceedings of the 5th Mexican International Conference on Computer Science (ENC04), Colima, Mexico, 2004 [5] Montes-y-Gómez M., Villaseñor-Pineda L., Pérez-Coutiño M., Gómez-Soriano J.M., Sanchis-Arnal E. e Rosso P., INAOE-UPV Joint Participation at CLEF 2005: Experiments in Monolingual Question Answering. In: CLEF 2005 Proceedings. [6] Hutchins, J., Two precursors of machine translation: Artsrouni and Trojanskij. In: http://www.hutchinsweb.me.uk/IJT-2004.pdf [7] Chomsky, A.N., 1968, Language and Mind. New York: Harcourt Brace & World, Inc. [8] Papineni, K., Roukos, S., Ward, T., and Zhu, W.J., 2001. BLEU: a method for automatic evaluation of machine translation. IBM Research Report - RC22176 (W0109-022). Technical report, IBM Research Division, Thomas, J. Watson Research Center. [9] Larosa S., Gomez J.M., Rosso P., Rovetta S., Best Translation for an Italian-Spanish Question Answering System. In: Proc. of Information Communication Technologies Int. Symposium (ICTIS), Tetuan, Morocco, June 2005 [10] Larosa S., Sistemi di Question Answerng Multilingue: L’importante Ruolo della Traduzione, Tesi di laurea triennale, Dipartimento di Informatica e Scienze dell’Informazione, Università degli Studi di Genova, a.a. 2004/05 [11] Katz, S., 1997, Estimation of Probabilities from Sparse Data for the Language Model Component of a Speech Recognizer. IEEE Transactions on Acoustics Speech and Signal Processing 35(3):400 401. 39 [12] Shannon C.E., A Mathematical Theory of Communication, Bell System Techonical Journal, vol. 27, pp.379-423, 623-656, July, October, 1948 [13] Zhu, X., and Rosenfeld, R., 2001, Improving trigram language modeling with the World Wide Web. Proc. of the IEEE International Conference on Acoustics, Speech and Signal Processing [14] Rosso, P., Web mining for Natural Language Enginnering tasks: Web-based Translation. The Future of Web Search - Yahoo! Research workshop, Barcellona, Spagna, Maggio 19-20, 2006. In: http://grupoweb.upf.es/workshop/slides/fws_rosso.pdf [15] Iskra, M., Web-based Selection of Optimal Translations of Short Questions. CrossLanguage Information Processing (CLIP) 2006, Genova, Settembre 25-26, 2006. In: http://clip.disi.unige.it/clip2006/talks/iskra_clip2006.pdf 40