Università degli Studi di Modena e Reggio Emilia
Facoltà di Ingegneria di Modena
Corso di Laurea in Ingegneria Informatica
ANNOTAZIONE LESSICALE AUTOMATICA DI
SCHEMI IN SISTEMI DI INTEGRAZIONE DEI
DATI:
ANALISI E SVILUPPO DI TECNICHE PER
NOMI COMPOSTI
Relatore: Chiar.mo Prof. Sonia Bergamaschi
Correlatore: Dott. Ing. Serena Sorrentino
Candidato: Elena Parmiggiani
Anno Accademico 2007/2008
1
Outline
Introduzione
I termini composti
Stato dell’arte:
• metodi basati su corpora
• metodi basati sulla semantica
L’algoritmo realizzato
L’analisi dei risultati
Conclusioni e sviluppi futuri
2
Introduzione (1/2)
A causa del rapido sviluppo del web, si è via via reso sempre
più necessario interrogare sorgenti dati estremamente
eterogenee
importanza di integrare tali risorse
MOMIS (www.dbgroup.unimo.it)
(Mediator EnvirOment for Multiple Information Sources)
Sistema di Integrazione Intelligente delle Informazioni
che estrae in modo semi-automatico i dati provenienti
da documenti strutturati e semi-strutturati e ne realizza
una fusione intelligente
3
Introduzione (2/2)
All'interno di MOMIS, il meccanismo di annotazione semantica
associa a ciascun termine della sorgente uno o più significati,
rispetto all’ontologia lessicale
WordNet
PROBLEMA  Questo meccanismo non permette di annotare i
TERMINI COMPOSTI eventualmente presenti nella sorgente, se
non presenti all’interno del database lessicale
SCOPO  RISOLUZIONE DEI TERMINI COMPOSTI
4
I termini composti
Termini composti = sequenze di due o più parole, separate da
spazio bianco, che abbiano uno o più significati se
considerate insieme
Esempio: dato il termine composto UniversityMember:
1) Fase di RISOLUZIONE
university
member
Modifier term
(termine modificante)
Head term
(termine principale)
2) Fase di RICERCA DELLE RELAZIONI
University member IS A member (PART) OF university
5
Stato dell’arte (1/2)
Dagli anni ’70-’80 sono stati proposti numerosi algoritmi per risolvere e
disambiguare termini composti  possono essere distinti in base
al tipo di informazioni utilizzate
1) METODI STATISTICI BASATI SU GRANDI CORPORA (raccolte di
documenti o articoli):
Calcolano la probabilità di trovare un composto in un determinato
corpus. Dipendono da:


Contesto nel quale il composto si trova;
Composti precedentemente analizzati e risolti
PROBLEMI:
dipendenza dal dominio di applicazione
+
necessità di raccogliere molte informazioni
6
Stato dell’arte (2/2)
2) METODI BASATI SULLA SEMANTICA:
Utilizzano soltanto:
 Contenuto lessicale;
 Informazione semantica.
 Cercano la MUTUA POSIZIONE dei membri del composto all’interno di una
ricca ONTOLOGIA LESSICALE come WordNet;
 Da questa deducono la relazione che intercorre tra i due membri;
 Li classificano al fine di poter interpretare rapidamente anche tutti i termini
composti simili.
Ad esempio:
- l’algoritmo di Vanderwende
- le 20 relazioni di Barker e Szpakowicz
- l’utilizzo della gerarchia medica MeSH
- l’algoritmo di Fan, Barker e Porter
7
L’algoritmo realizzato (1/2)
Dalle ricerche passate è possibile elaborare un algoritmo in Java
per la RISOLUZIONE dei termini composti che:
 richieda il minimo delle risorse possibili;
 sia il più possibile portabile;
 sia indipendente dal contesto di utilizzo.
STRUMENTI UTILIZZATI:
 WordNet;
 librerie Java per interfacciarsi con WordNet
 librerie Java per il parsing di sorgenti XML;
JavaWordNetLibrary
(JWNL)
(sviluppata presso la
Princeton University come
WordNet)
 DB MySQL per l’analisi dei risultati.
8
L’algoritmo realizzato (2/2)
STRUTTURA DELL’ALGORITMO:
1) ESTRAZIONE DEI PATTERN CHE POSSONO COSTITUIRE TERMINI COMPOSTI
2) FASE DI PULITURA DEL COMPOSTO:
 rimozione di eventuali
- trattini (university_member)
- underscore (university_member)
- camel case (UniversityMember)
Termine composto da risolvere (university member)
3) DISTINZIONE DI TERMINE PRINCIPALE E TERMINE/I MODIFICANTE/I
A) Se il valore di un termine composto contiene il nome della classe cui appartiene,
allora quello è il termine modificante;
B) Membri considerati 2 a 2  se NOME + AGGETTIVO  nome = termine principale,
aggettivo = termine modificante;
C) Se sono TUTTI NOMI  il termine principale è più a destra (valido solo per l’inglese);
4) ALBERO DI IPERNIMI  ricerca del MINIMO TERMINE GENITORE IN COMUNE ai due
membri nella gerarchia di WordNet seguendo le sole relazioni di tipo IS A
9
I risultati (1/4)
 expiration date, family description  distinzione di termine principale e
midificatore (soluzione di default) + albero di ipernimia;
 family name  distinzione di termine principale e modificatore da altre
informazioni. Non necessita di albero di ipernimia;
 first name  già presente in WordNet, reperimento della glossa;
 is available  is non è né nome né aggettivo e il composto non può
essere disambiguato (tutti i campi della tupla settati a NULL).
10
I risultati (2/4)
Calcolo di precision e recall per ognuna delle 6 sorgenti XML
analizzate:
11
I risultati (3/4)
Analisi dettagliata delle risposte non date e delle
risposte errate:
12
I risultati (4/4)
I risultati ottenuti, per quanto richiesto dall’algoritmo, sono
pienamente soddisfacenti.
 77% in media di risposte date dal sistema, di cui il 93% circa
corrette;
 del restante 23%:
- il 59% conteneva almeno un membro non in
WordNet, per esempio a causa di:
• abbreviazioni non riconosciute da WordNet (es: enum parameter);
• sigle come fk, pk (indicazione di foreign o primary key), xrd, etc…;
• articoli o altre funzioni grammaticali non contenute in WordNet.
- il 41% dovuto ad errori casuali, per esempio a causa di:
• problemi di sincronizzazione con il DB MySQL;
• problemi imprevedibili in fase di parsing di sorgenti XML di grandi dimensioni.
13
Conclusioni e sviluppi futuri (1/2)
Il lavoro svolto per questa tesi ha consentito di realizzare un programma
Java per la risoluzione dei termini composti all'interno di
documenti strutturati e semi-strutturati.
Gli eventuali errori in fase di risoluzione o le mancate risposte da parte
del sistema sono in larga parte dovute a mancanze di WordNet.
Il database lessicale, purtroppo, presenta alcuni difetti, le cui
conseguenze sono:
1) valore della recall più basso rispetto alla precision;
2) mancato reperimento del più grande termine figlio in comune
ai due membri del composto all’interno della gerarchia di
WordNet che ne contenga l’informazione.
14
Conclusioni e sviluppi futuri (2/2)
I punti sui quali sarebbe interessante focalizzarsi al fine di realizzare un
metodo sempre migliore per la risoluzione e la disambiguazione di termini
composti:
A) ricerca e utilizzo di RISORSE MIGLIORI E PIU’ APPROFONDITE del
solo database lessicale WordNet, che NON fornisce relazioni altamente
specifiche, ad esempio: tesauri, tassonomie di settore tecnico, etc…;
B) possibilità di SINTETIZZARE IL SIGNIFICATO DEL COMPOSTO con un
termine singolo,
AD ESEMPIO  più grande termine figlio in comune ai due membri, in
modo da realizzare appieno la fase di DISAMBIGUAZIONE (ovvero
l'assegnazione di un significato univoco) dei termini composti;
C) IDENTIFICAZIONE E SUDDIVISIONE DEI MODIFICATORI per
composti di più di due termini e riconoscimento delle mutue relazioni.
15
Grazie per l’attenzione
16
Scarica

dei termini composti - DBGroup - Università degli studi di Modena e