Contents

Titolo

Analisi di testi per il Semantic Web e il Question Answering

Partecipanti

  • Dipartimento di Informatica, Università di Pisa
  • Istituto di Linguistica Computazionale del CNR
  • Dipartimento di Linguistica, Università di Pisa

Sommario

La capacità di analizzare documenti testuali (text analytics) è fondamentale per una serie vastissima di applicazioni, visto che oltre il 90% delle informazioni vengono espresse e distribuite sotto forma di documenti testuali, sia in ambito interno a un organizzazione che pubblicate sul Web. Un sistema di analisi dei testi deve essere in grado di assimilare dati testuali di qualunque dimensione e struttura, di estrarne i termini principali, assegnandoli a categorie di significati (tassonomia o ontologia) e individuarne relazioni semantiche. Per estrarre conoscenze ed effettuare una analisi non solo superficiale dei contenuti, come fanno gli attuali sistemi di Information Retrieval e i motori di ricerca sul Web, occorre utilizzare strumenti di analisi del linguaggio di tipo sintattico/semantico. Le tecniche di estrazione di conoscenze da testi sono fondamentali in un ampio spettro di applicazioni, dal Question Answering, al Knowledge Management, alla Business Intelligence, al Semantic Web. Il progetto si pone l’obiettivo di mettere a punto le tecnologie necessarie per l’analisi di testi in lingua italiana necessarie per la realizzazione di applicazioni di text analytics. In particolare si prevede di mettere a punto un parser (analizzatore grammaticale) induttivo a dipendenze per diverse lingue, in particolare per la lingua italiana. Tale parser utilizza una tecnica innovativa che si basa sull’apprendimento automatico a partire da un corpus di documenti annotati. Mentre corpora di apprendimento sono disponibili per altre lingue, per l’italiano va costruito un corpus ad hoc, a partire da collezioni sviluppate in passato dai proponenti. Il parser verrà utilizzato nello sviluppo di due applicazioni significative di analisi di documenti: Question Answering e Topic Detection.

Stato dell'arte

Il Natural Language Processing (NLP) si occupa dello sviluppo di algoritmi per il parsing, la generazione, l’acquisizione di conoscenza linguistica, la progettazione di linguaggi formali, la definizione di architetture software appropriate per l’analisi della lingua. Nella sua versione più finalizzata all’applicazione e al mercato (la cosiddetta Ingegneria del Linguaggio), il Natural Language Processing tende all’ingegnerizzazione di prodotti finali studiati per soddisfare le esigenze di utenti con bisogni ben definiti e pensati per soddisfare un buon rapporto costi-benefici. Il Question Answering (QA) è un classico degli studi di Natural Language Processing. Esso permette all’utente di porre una domanda in linguaggio naturale e di ricevere una risposta. Già Simmons, nel 1965, recensiva nel suo Answering English Questions by Computers una quindicina di sistemi funzionanti, alcuni concepiti come front ends a database (BASEBALL (Green et al., 1961) e LUNAR (Woods 1973)), altri basati sul dialogo (SHRDLU (Winograd 1972) e GUS (Bobrov et al., 1977)) altri ancora legati al task di comprensione di storie (QUALM di Lehenert, 1978). Ci sono molti modi per affrontare la costruzione di un sistema di QA e molte tipologie di applicazioni, classificabili sulla base dei molteplici fattori che giocano un ruolo nella definizione delle strategie di realizzazione e di ricerca. Seguendo (Hirshman e Gaizauskas, 2001) diremo che questi fattori sono:

  • la tipologia delle fonti della risposta (dati strutturati, semi-strutturati, free-text) e la loro finitezza (un corpus statico di riferimento oppure il web o un singolo testo);
  • la definizione di un dominio specifico o di argomento generale;
  • il tipo di utente;
  • il tipo di domande ammesse,
  • il tipo di risposta (risposte concise e generate dal sistema, porzioni di testo molto breve contenenti la risposta estratti dai testi, risposte narrative ecc..).

Oggi il QA ha assunto una posizione di rinnovato interesse dovuta alla crescita esponenziale della quantità di dati disponibili sottoforma di pagine web e alla necessità di accedervi in modo intelligente. Proprio perché pensati per accedere a vasti repertori di dati non strutturati, come il web, i sistemi di QA di ultima generazione non ristretti a domini specifici (quindi sistemi di Open-Domain Question Answering) sono concepiti come architetture complesse (Hirschman and Gaizauskas, 2001; Paşca, 2003) che mettono insieme tecniche di Information Retrieval e moduli di NLP. I moduli portanti delle applicazioni di Open-Domain QA sono:

  • Analisi della domanda
  • Motore di Ricerca
  • Individuazione ed estrazione della risposta.

Il primo modulo consiste nell’analisi (morfosintattica, sintattica, semantica) della domanda in linguaggio naturale posta dell’utente. In genere la domanda viene classificata sulla base di un’ontologia in modo da determinare il tipo di risposta attesa (per esempio una data, il nome di una persona, un luogo ecc.). La domanda viene analizzata e scomposta in parole chiave, che costituiranno la query che verrà sottomessa al motore di ricerca. Durante questa fase centrale verrà estratta la lista di documenti (o di paragrafi) candidati alla risposta (restituiti in genere per ordine di importanza) (Monz, 2003). L’ultimo modulo delle applicazioni di Open-Domain QA restituisce all’utente una o più risposte in grado di soddisfare i bisogni informativi espressi con la domanda. Lo stato dell’arte dei sistemi di QA, si misurano ogni anno nella competizione svolta alla Text Retreieval Conference (TREC), dove il prototipo Pisa Question Answering (PiQASso) del Dipartimento di Informatica si è classificato tra i primi dieci.

  1. Hirschman L., Gaizauskas R., Natural Language Question Answering: The View form Here. In Natural Language Engineering 7(4), 2001.
  2. Lehnert W., The Process of Question Answering, Lawrence Erlbaum Associated, N.J., 1978.
  3. Monz C., Document Retrieval in the Context of Question Answering. In F. Sebastiani (ed.) Proceedings of the 25th European Conference on Information Retrieval Research (ECIR-03), Lecture Notes in Computer Science 2633, Sprinter, 2003, pagg 571-579.
  4. Paşca M., Open-Domain Question Answering from Large Text Collections, CSLI Studies in Computational Linguistics, USA, 2003.
  5. Simmons R. F., Answering English Questions by computers: A Survey. In Communications of the ACM, 8(1): 53 70, 1965
  6. Woods W., Progress in Natural Language Understanding – an Application to Lunar Geology. In AFIPS Conference Proceedings, 1973.
  7. Bobrov D., Kaplan R. M., Kay M., Norman D., Thompson H., Winograd T., GUS, a Frame Driven Dialog System. In Artificial Intelligence 8, 1977.
  8. Winograd T., Understanding Natural Language. Academic Press, New York, 1972.
  9. G. Attardi, A. Cisternino, F. Formica, M. Simi, A. Tommasi, C. Zavattari, PIQASso: PIsa Question Answering System Proceedings of Text Retrieval Conference (Trec-10), 599-607, NIST, Gaithersburg (MD), November 13-16, 2001.

Qualificazione e contributi scientifici pregressi

  1. G. Attardi, S. Di Marco, D. Salvi, Categorisation by context, Journal of Universal Computer Science , 4(9),719-736, 1998.
  2. G. Attardi, A. Cisternino, F. Formica, M. Simi, A. Tommasi, C. Zavattari, PIQASso: PIsa Question Answering System Proceedings of Text Retrieval Conference (Trec-10), 599-607, NIST, Gaithersburg (MD), November 13-16, 2001.
  3. G. Attardi, A. Cisternino, Template Metaprogramming an Object Interface to Relational Tables, Reflection 2001, LNCS 2192, 266-267, Springer-Verlag, Berlin, 2001.
  4. G. Attardi, V. Sinha, “Design of a Web Switch Architecture”, Deliverable Progetto FIRB Grid.it, 2003.
  5. G. Attardi, Experiments with a Multilanguage pseudo-projective dependency parser, CoNLL-X, 2006.
  6. Italian TreeTagger, http://medialab.di.unipi.it/Resource/POS/index.html.en.
  7. Roventini A., Alonge A., Bertagna F., Calzolari N., Girardi C., Magnini B., Marinelli R., Speranza M., Zampolli A., ItalWordNet: Building a Large Semantic Database for the Automatic Treatment of Italian, in 'Linguistica Computazionale', Istituti Editoriali e Poligrafici Internazionali, Pisa-Roma, ISSN 0392-6907, 2003.
  8. Bertagna F., Chiran L., Simi M., ILC-UniPi Italian QA, in Peters C., Clough P., Gonzalo J., Jones G., Kluck M. and Magnini B. (eds.), Fifth Workshop of the Cross-Language Evaluation Forum (CLEF-2004), Lecture Notes in Computer Science (LNCS), Springer, Heidelberg, Germany, 2005.
  9. Montemagni, S., Barsotti, F., Battista, M., Calzolari, N., Corazzari, O., Lenci, A., Zampolli, A., Fanciulli, F., Massetani, M., Raffaelli, R., Basili, R., Pazienza, M.T., Saracino, D., Zanzotto, F., Mana, N., Pianesi, F., Delmonte, R. Building the Italian Syntactic-Semantic Treebank. In A. Abeillé (ed.), Treebanks: Building and Using Parsed Corpora. Language and Speech Series, Kluwer Academic Publishers, Dordrecht. 189-210, 2003.
  10. Dell'Orletta F., Lenci A., Montemagni S., Pirrelli V., Climbing the path to grammar: a maximum entropy model of subject/object learning, in the Proceedings of the ACL-2005 Workshop “Psychocomputational Models of Human Language Acquisition (PsychoCompLA-2005)”, University of Michigan, Ann Arbour (USA), 29-30 June 2005.

Aspetti innovativi del progetto

L’utilizzo di strumenti di elaborazione del linguaggio naturale (Natural Language Processing) per lo svolgimento di compiti di analisi e di estrazione di informazioni da vaste collezioni di documenti è stato finora largamente trascurato nelle applicazioni basate sull’analisi di testi, preferendo tecniche basate su approcci di tipo Information Retrieval basati sostanzialmente su analisi di tipo statistico.

Un aspetto qualificante del progetto è quello di combinare approccio statistico con strumenti di analisi linguistica e semantica. Il progetto sfrutta un breakthrough nel campo del parsing del linguaggio naturale, che si basa sull’apprendimento del meccanismo di parsing a partire da corpus linguistici annotati. Il risultato è un parser adattabile a diverse lingue, di elevate prestazioni (oltre 200 frasi al secondo) e di buona accuratezza. Un parser con queste caratteristiche per la lingua italiana è un risultato di notevole importanza.

Il parser può venire usato per estrarre una rappresentazione semantica dei testi, costruendo una base di relazioni semantiche tra i costituenti delle frasi.

Diverse applicazioni diventano possibili a seguito di queste analisi. L’efficacia dell’approccio verrà dimostrata in due delle tante possibili applicazioni: il Question Answering e l’individuazione di topic da uno flusso di notizie giornalistiche.

Sia gli strumenti di analisi che le applicazioni sviluppate nel progetto presentano notevoli potenzialità dal punto di vista commerciale.

La tecnica di parsing potrebbe essere soggetta a brevetto, anche se, trattandosi di software, è preferibile una protezione di tipo Copyright, che consente lo sfruttamento commerciale tramite la cessione di licenze d’uso.

Descrizione delle attvità, metodologie e tecnologie

Le attività da svolgere comprendono:

  1. Progetto dettagliato dell’architettura del sistema di QA: moduli software e relative interfacce
  2. Analisi del corpus SI-TAL e definizione delle trasformazioni da attuare
  3. Sviluppo di euristiche e di algoritmi per trasformare il corpus SI-TAL nel formato CoNLL
  4. Creazione di uno strumento di annotazione visiva per l’inserimento e la correzione delle annotazioni
  5. Progettazione architettura del sistema di First Topic Detection
  6. Analisi delle tecniche di calcolo di similarità tra news
  7. Progettazione di un parser induttivo a dipendenze
  8. Studio del problema del trattamento di relazioni non projective presente nella lingua italiana
  9. Sperimentazione di tecniche per risolvere le dipendenze non projective
  10. Studio e scelta delle feature da usare nell’apprendimento del parser
  11. Realizzazione del parser a dipendenze
  12. Prove e verifiche di accuratezza del parser
  13. Analisi degli errori nei risultati del parser e messa a punto
  14. Messa a punto di sistema di estrazione di Named Entities
  15. Sviluppo di algoritmi di calcolo di similarità tra news
  16. Estrazione di Named Entities dalla collezione di Question Answering
  17. Estrazione di relazioni semantiche e costruzione di indice semantico
  18. Prototipazione di sistema di Question Answering
  19. Prototipazione di sistema di First Topic Detection

Le metodologie usate sono quelle dell’ingegneria del software, dell’analisi e sviluppo di algoritmi e della programmazione.

Le tecnologie usate comprendono:

  1. Tecniche di Natural Language Processing: Tokenizer, POS Tagger, Morphological Tagger, Chunker, Parser
  2. Algoritmi di Machine Learning: Maximum Entropy, Support Vector Machines
  3. Basi di conoscenze linguistiche e ontologie: WordNet
  4. Annotazione di corpus linguistici di apprendimento

Sviluppo temporale delle attività e obiettivo intermedio

Fasi del progetto

Fase 1: mesi 0-6

  1. Progetto dettagliato dell’architettura del sistema di QA: moduli software e relative interfacce
  2. Analisi del corpus SI-TAL e definizione delle trasformazioni da attuare
  3. Sviluppo di euristiche e di algoritmi per trasformare il corpus SI-TAL nel formato CoNLL
  4. Creazione di uno strumento di annotazione visiva per l’inserimento e la correzione delle annotazioni
  5. Progettazione architettura del sistema di First Topic Detection
  6. Analisi delle tecniche di calcolo di similarità tra news

Fase 2: mesi 7-12

  1. Progettazione di un parser induttivo a dipendenze
  2. Studio del problema del trattamento di relazioni non projective presente nella lingua italiana
  3. Sperimentazione di tecniche per risolvere le dipendenze non projective
  4. Studio e scelta delle feature da usare nell’apprendimento del parser
  5. Realizzazione del parser a dipendenze
  6. Prove e verifiche di accuratezza del parser
  7. Analisi degli errori nei risultati del parser e messa a punto
  8. Messa a punto di sistema di estrazione di Named Entities
  9. Sviluppo di algoritmi di calcolo di similarità tra news

Fase 3: mesi 13-24

  1. Estrazione di Named Entities dalla collezione di Question Answering
  2. Estrazione di relazioni semantiche e costruzione di indice semantico
  3. Prototipazione di sistema di Question Answering
  4. Prototipazione di sistema di First Topic Detection

Obiettivo intermedio

  1. corpus di apprendimento per il parsing dell’italiano
  2. prototipo di parser per l’italiano
  3. partecipazione alla competizione CoNLL 2007

Deliverables

  1. corpus di apprendimento per il parsing dell’italiano
  2. strumento di annotazione visiva
  3. parser a dipendenze per l’italiano
  4. prototipo di sistema di Question Answerig per l’italiano
  5. prototipo di sistema di First Topic Detection su flusso di notizie

Descrizione delle strutture di ricerca coinvolte

Dipartimento di Informatica, Università di Pisa

Il gruppo di Web Computing si occupa da diversi anni di tecniche per il trattamento di documenti. Nel 1996, in collaborazione con il gruppo Olivetti Telemedia di Pisa è stato progettato e realizzato il motore di ricerca Arianna, il primo e più vasto motore di ricerca sullo spazio Web italiano. Il ruolo del gruppo nel progetto riguarda la definizione dell’architettura software del progetto, della messa a punto di algoritmi per l’apprendimento automatico, per l’indicizzazione e l’estrazione di metadati semantici da grossi corpus di documenti.

Dipartimento di Linguistica, Università di Pisa

Il Dipartimento seguirà gli aspetti relativi alla Topic Detection e all’integrazione con strumenti linguistici ed in particolare con lo strumento Text-2-Knowledge.

Istituto di Linguistica Computazione del CNR

L’istituto ha esperienza nella costruzione di corpus annotati per la lingua italiana e in particoilare ha realizzato il corpus SI-TAL, che verrà utilizzato come base di partenza per la costruzione di un corpus per l’apprendimento del parsing. Il suo ruolo sarà di partecipare alla messa a punto degli algoritmi per la trasformazione del curpus SI-TAL, per l’apprendimento del parsing, sulla base di una lunga esperienza acquisita nella costruzione di una catena di strumenti per l’analisi linguistica dell’italiano.

Informazioni economiche circa il mercato

Il mercato degli strumenti di analisi di testo (text analytics) è un mercato in vastissima espansione a livello internazionale, ed è dominata da un limitato numero di ditte specializzate, in particolare: Autonomy, ClearForest, Verity.

Il mercato nazionale è in gran parte da esplorare, e vede una rilevante dominanza delle ditte straniere, che tuttavia offrono strumenti neutri rispetto alla lingua. La possibilità di sfruttare appieno l’analisi linguistica dei testi consente di realizzare strumenti di maggiore accuratezza e che siano mirati alle esigenze del mercato nazionale. Prodotti che incorporino capacità linguistiche relative alla lingua italiana possono rappresentare un significativo vantaggio competitivo sul mercato nazionale, vincendo la concorrenza internazionale.

I prodotti risultanti da questo progetto hanno pertanto buone possibilità di aggiudicarsi una quota rilevante del mercato nazionale. Con una buona strategia di marketing, i prodotti potrebbero imporsi con successo in settori economicamente rilevanti, quali: mercati finanziari (analisi di informazioni economico-finanziarie), business intelligence, indagini giudiziarie e intelligence, analisi di opinioni (sentiment mining), settore biologico e medico-scientifico (analisi letteratura medica, estrazione di conoscenze su proteine, genoma, ecc.), editoria online, documentazione aziendale, strumenti di supporto per il Call Center.

A Pisa esistono aziende che operano nel settore e con cui sono in atto già delle collaborazioni con i partecipanti, e le quali potrebbero occuparsi della commercializazione dei risultati del progetto. In particolare la Synthema Srl si occupa di tecnologie del linguaggio ed ha partecipato al progetto SI-TAL in collaborazione con l’ILC del CNR.

Allegato tecnico

media:allegatoA.pdf

Powered by MediaWiki