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