• Non ci sono risultati.

Sandra MantovaniSandra Mantovani

N/A
N/A
Protected

Academic year: 2021

Condividi "Sandra MantovaniSandra Mantovani"

Copied!
24
0
0

Testo completo

(1)

UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA

Facoltà di Scienze Matematiche, Fisiche e Naturali Facoltà di Scienze Matematiche, Fisiche e Naturali

Corso di Laurea in Informatica Corso di Laurea in Informatica

Sandra Mantovani Sandra Mantovani

Relatore:

Relatore:

Prof. Riccardo Martoglia Prof. Riccardo Martoglia

Anno Accademico 2007/2008 Anno Accademico 2007/2008

(2)

filmfilm filmfilm

 Ambito di ricerca dagli anni ‘50 Ambito di ricerca dagli anni ‘50

 Assegna il Assegna il significato corretto significato corretto ad un ad un termine ambiguotermine ambiguo di un di un testo,testo, a seconda del suo contestoa seconda del suo contesto

proiezioneCinema proiezioneCinema proiezioneCinema proiezioneCinema

datadata

datadata incassoincassoincassoincasso salasalasalasala

3

3 significat3 significat 3 significat significat

15 significat1515 significat 15 significat significat 6 significat66 significat

6 significat significat

3 significat33 significat 3 significat significat

Elimina le ambiguità dei

Elimina le ambiguità dei terminitermini contenuti

contenuti in schemiin schemi utilizzando utilizzando algoritmi ispirati a quelli di WSD algoritmi ispirati a quelli di WSD

Il processo può avvenire sia in Il processo può avvenire sia in modo manuale che

modo manuale che automaticoautomatico

(3)

Word Sense Disambiguation Schema DisambiguationWord Sense Disambiguation Schema Disambiguation

Adattare STRIDER al multilinguismo Adattare STRIDER al multilinguismo

Ricerca ed analisi di:

Ricerca ed analisi di:

 fonti di conoscenza esternefonti di conoscenza esterne

 strumenti linguisticistrumenti linguistici

Implementazione e Implementazione e

valutazione dell’estensione valutazione dell’estensione per la

per la lingua italianalingua italiana

(4)

• STRIDERSTRIDER

• Fonti di conoscenza esterne e strumenti linguisticiFonti di conoscenza esterne e strumenti linguistici

• Progetto ed estensione di STRIDERProgetto ed estensione di STRIDER

• Prove sperimentaliProve sperimentali

(5)

 AnnotaAnnota automaticamente schemi in diversi formati automaticamente schemi in diversi formati

 Utilizza Utilizza fonti di conoscenza esternefonti di conoscenza esterne

rispetto alle quali rispetto alle quali annotare gli schemi

annotare gli schemi per stimare le per stimare le similarità tra termini similarità tra termini

dizionario

dizionario motore di ricercamotore di ricerca oo

dizionario strutturato dizionario strutturato Memorizza il significato corretto

Memorizza il significato corretto accanto ad ogni termine

accanto ad ogni termine

(6)

incasso incasso incasso

incasso filmfilmfilmfilm proiezioneCinema proiezioneCinema proiezioneCinema proiezioneCinema

salasala salasala datadata

datadata

AA

film#2 film#2 film#2 film#2

BB

CC

1.1. “Pellicola cinematografica o fotografica, Pellicola cinematografica o fotografica, striscia di celluloide …”

striscia di celluloide …”

2. “Opera cinematografica, lungometraggio …”

2. “Opera cinematografica, lungometraggio …”

proiezione di un f. al cinema; f. d’azione; proiezione di un f. al cinema; f. d’azione;

provento del f.; … provento del f.; …

sim( A , B ) = sim( A , B ) =

bassa bassa

sim( A , C ) = alta sim( A , C ) = alta

f. in bianco e nero; f. a colori; f. a 35 mm … f. in bianco e nero; f. a colori; f. a 35 mm … Pellicola

Pellicola striscia

striscia celluloidecelluloide

colori colori Opera

Opera lungometraggiolungometraggio proiezione

proiezione cinemacinema azioneazione provento

provento

(7)

INPUT INPUT

Schema Schema annotato annotato Schema Schema annotato annotato Schema in

Schema in

inglese inglese

Schema in Schema in

inglese inglese

WordNet WordNet

OUTPUT OUTPUT

(8)

• STRIDERSTRIDER

• Fonti di conoscenza esterne e strumenti linguisticiFonti di conoscenza esterne e strumenti linguistici

• Progetto ed estensione di STRIDERProgetto ed estensione di STRIDER

• Prove sperimentaliProve sperimentali

(9)

Dizionari Dizionari

Strutturati ad Strutturati ad

ipernimi

ipernimi Non strutturatiNon strutturati

Classici

Classici CollaborativiCollaborativi

Machine-generated

Valutazione delle

Valutazione delle caratteristichecaratteristiche::

 facilità d’interrogazionefacilità d’interrogazione

 numero di lemminumero di lemmi

 ricchezza delle definizioniricchezza delle definizioni

 presenza di esempipresenza di esempi

SCOPO:

SCOPO: Raccogliere le definizioni relative ai termini Raccogliere le definizioni relative ai termini

Usati da STRIDER Usati da STRIDER

(10)

SCOPO:

SCOPO: Estrarre i sostantivi dalle definizioni dei termini Estrarre i sostantivi dalle definizioni dei termini

Valutazione delle

Valutazione delle caratteristichecaratteristiche::

facilità d’interrogazionefacilità d’interrogazione

linguaggio linguaggio

efficaciaefficacia incasso

incasso incasso

incasso filmfilmfilmfilm proiezioneCinema proiezioneCinema proiezioneCinema proiezioneCinema

salasala salasala datadata

datadata

2. “opera cinematografica, lungometraggio di genere 2. “opera cinematografica, lungometraggio di genere narrativo: proiezione di un f. al cinema; f. d’azione, narrativo: proiezione di un f. al cinema; f. d’azione, provento del f.

provento del f.

opera

opera lungometraggiolungometraggio generegenere azione azione

Strumenti:

Strumenti:

Stemmer

Part-Of-Speech Tagger

Database di parole categorizzate

proiezione

proiezione cinemacinema provento

provento

(11)

Dizionari Dizionari : :

 De Mauro ParaviaDe Mauro Paravia

 Il Sabatini ColettiIl Sabatini Coletti

 di Google di Google

Strumenti linguistici Strumenti linguistici : :

 Database Database Morph-it!Morph-it! inserito nel DBMS MySQL inserito nel DBMS MySQL

(12)

• STRIDERSTRIDER

• Fonti di conoscenza esterne e strumenti linguisticiFonti di conoscenza esterne e strumenti linguistici

• Progetto ed estensione di STRIDERProgetto ed estensione di STRIDER

• Prove sperimentaliProve sperimentali

(13)

F1: Preparazione di schemi in lingua italiana

 RF01: Lingua, dizionario ed esempi

 RF02: Connessione e richiesta pagina web

 RF03: Estrazione delle definizioni

 RF04: Estrazione dei nomi

(14)
(15)

SELECT DISTINCT lemma SELECT DISTINCT lemma FROM morphit

FROM morphit WHERE tipo = ‘n’

WHERE tipo = ‘n’

AND termine = AND termine =

 Inserimento del DB Morph-it! nel DBMS MySQLInserimento del DB Morph-it! nel DBMS MySQL

 StemmerStemmer + + Pos TaggerPos Tagger

 Studio finalizzato alla creazione di Studio finalizzato alla creazione di indici ottimizzatiindici ottimizzati

 Modifica del Modifica del tag-settag-set

opera opera

‘opereopere’;cinematograficacinematografica’; ’;’;

nullnull

(16)

DizDeMauroParavia.java DizDeMauroParavia.java

 Implementazione di Implementazione di Dizionario.java per il

Dizionario.java per il Dizionario on-line “De Dizionario on-line “De Mauro Paravia”

Mauro Paravia”

DizDeMauroParavia.java

DizDeMauroParavia.java DizSabatiniColetti.javaDizSabatiniColetti.java DizGoogle.javaDizGoogle.java

Dizionario.java Dizionario.java WebConnection.java

WebConnection.java

Definizioni.java

Definizioni.java Nomi.javaNomi.java

import java.net.*;

import java.io.*;

public class WebConnection { String Url = new String("");

public WebConnection(String

U) { Url=U;

}

public String Connetti() throws IOException {

BufferedInputStream text = import java.net.*;

import java.io.*;

public class WebConnection { String Url = new String("");

public WebConnection(String

U) { Url=U;

}

public String Connetti() throws IOException {

BufferedInputStream text =

Dizionario.java Dizionario.java

 InterfacciaInterfaccia

 Flusso principaleFlusso principale

 Crea le URLCrea le URL

DizSabatiniColetti.java DizSabatiniColetti.java

 Implementazione di Implementazione di Dizionario.java per il

Dizionario.java per il Dizionario on-line “il Dizionario on-line “il Sabatini Coletti”

Sabatini Coletti”

DizGoogle.java DizGoogle.java

 Implementazione di Implementazione di Dizionario.java per il

Dizionario.java per il Dizionario machine- Dizionario machine- generated di Google™

generated di Google™

WebConnection.java WebConnection.java

 Crea la connessione Crea la connessione WEB WEB

 Salva la pagina ricevutaSalva la pagina ricevuta Definizioni.java

Definizioni.java

 Estrae definizioni dalla Estrae definizioni dalla pagina HTML

pagina HTML

 Metodo diverso per Metodo diverso per ogni dizionario

ogni dizionario Nomi.java

Nomi.java

 Estrae i sostantivi dalle Estrae i sostantivi dalle definizioni

definizioni

 Interroga il DB Morph-it Interroga il DB Morph-it per verificare i sostantivi per verificare i sostantivi

import java.util.ArrayList;

public interface Dizionario { public ArrayList<ArrayList>

lavora();

public String CreaUrl(String p);

public ArrayList<String>

getDefinizioni();

public Boolean CercaGenere(String ris) public ArrayList<String>

ricerca(String d);

} import java.util.ArrayList;

public interface Dizionario { public ArrayList<ArrayList>

lavora();

public String CreaUrl(String p);

public ArrayList<String>

getDefinizioni();

public Boolean CercaGenere(String ris) public ArrayList<String>

ricerca(String d);

} import java.util.ArrayList;

import java.io.Serializable;

public class DizDeMauroParavia implements Dizionario, Serializable { private String Diz_Url = new

String("http://www.demauro paravia.it/");

ArrayList<ArrayList> lista;

String parola;

import java.util.ArrayList;

import java.io.Serializable;

public class DizDeMauroParavia implements Dizionario, Serializable { private String Diz_Url = new

String("http://www.demauro paravia.it/");

ArrayList<ArrayList> lista;

String parola;

import java.util.ArrayList;

import java.io.Serializable;

public class DizSabatiniColetti implements Dizionario, Serializable { private String Diz_Url = new

String("http://dizionari.corrie

re.it/dizionario_italiano/");

ArrayList<ArrayList> lista;

String parola;

ArrayList<String> definiz=

import java.util.ArrayList;

import java.io.Serializable;

public class DizSabatiniColetti implements Dizionario, Serializable { private String Diz_Url = new

String("http://dizionari.corrie

re.it/dizionario_italiano/");

ArrayList<ArrayList> lista;

String parola;

ArrayList<String> definiz=

import java.util.ArrayList;

import java.io.Serializable;

public class DizGoogle implements Dizionario, Serializable {

private String Diz_Url = new String("http://www.goo gle.it/");

ArrayList<ArrayList> lista;

String parola;

ArrayList<String> definiz import java.util.ArrayList;

import java.io.Serializable;

public class DizGoogle implements Dizionario, Serializable {

private String Diz_Url = new String("http://www.goo gle.it/");

ArrayList<ArrayList> lista;

String parola;

ArrayList<String> definiz

import java.util.ArrayList;

public class Definizioni { String parola = new String("");

String ris = new String("");

ArrayList<String>

example=

new ArrayList<String>();

public Definizioni(String p, String r){

parola=p;

ris=r;

} import java.util.ArrayList;

public class Definizioni { String parola = new String("");

String ris = new String("");

ArrayList<String>

example=

new ArrayList<String>();

public Definizioni(String p, String r){

parola=p;

ris=r;

}

import java.util.ArrayList;

import java.sql.Connection;

import

java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import

java.sql.DriverManager;

public class Nomi { public Connection conn=null;

public Nomi(){

try{

conn= DbConnection();

} import java.util.ArrayList;

import java.sql.Connection;

import

java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import

java.sql.DriverManager;

public class Nomi { public Connection conn=null;

public Nomi(){

try{

conn= DbConnection();

}

(17)

Schema in Schema in

inglese inglese

Schema in Schema in

inglese inglese

INPUT

INPUT OUTPUTOUTPUT

Schema Schema annotato annotato Schema Schema annotato annotato Schema in

Schema in

italiano italiano

Schema in Schema in

italiano italiano

Morph-it!

Morph-it!

MySQL MySQL

WordNet

WordNet De MauroDe Mauro Paravia

Paravia Il SabatiniIl Sabatini Coletti Coletti

Google Google

import java.util.ArrayList;

import java.io.Serializable;

public class DizDeMauroParavia implements Dizionario, Serializable { private String Diz_Url = new

String("http://www.demauro paravia.it/");

ArrayList<ArrayList> lista;

String parola;

import java.util.ArrayList;

import java.io.Serializable;

public class DizDeMauroParavia implements Dizionario, Serializable { private String Diz_Url = new

String("http://www.demauro paravia.it/");

ArrayList<ArrayList> lista;

String parola;

Internet Internet

(18)

• STRIDERSTRIDER

• Fonti di conoscenza esterne e strumenti linguisticiFonti di conoscenza esterne e strumenti linguistici

• Progetto ed estensione di STRIDERProgetto ed estensione di STRIDER

• Prove sperimentaliProve sperimentali

(19)

SchemiSchemi SQL SQL

Valutazione dell’Valutazione dell’efficaciaefficacia

PrecisionPrecision P(M): numero di termini corretti entro l’m-esima P(M): numero di termini corretti entro l’m-esima posizione

posizione

Dizionari Dizionari

Il dizionario 3 non è sempre applicabile a tutti gli schemiIl dizionario 3 non è sempre applicabile a tutti gli schemi monotematici

monotematici politematici politematici

P(1) P(2) P(3)P(1) P(2) P(3)

1: De Mauro Paravia 2: Il Sabatini Coletti 3: di Google

(20)

 Confronto dell’efficacia dei tre diversi Confronto dell’efficacia dei tre diversi dizionaridizionari

 Valutazione del contributo degli Valutazione del contributo degli esempiesempi nelle definizioni nelle definizioni

 Stima dell’efficacia al variare della Stima dell’efficacia al variare della dimensione deldimensione del contestocontesto del grafo del grafo

 Effetti della variazione nella Effetti della variazione nella navigazionenavigazione del grafo del grafo

 Stima dell’efficacia variando i Stima dell’efficacia variando i pesi degli archipesi degli archi del grafo del grafo

(21)

Maggiore efficacia

Maggiore efficacia del dizionario del dizionario 22 rispetto al dizionario 1 rispetto al dizionario 1 Anche il numero

Anche il numero 3 3 ha ha efficacia paragonabile a quella efficacia paragonabile a quella dei dizionari classici

dei dizionari classici Dizionario

Dizionario 2 2 raggiunge raggiunge P(3) = 1P(3) = 1

(22)

Gli Gli esempi esempi forniscono un forniscono un

contributo contributo

fondamentale fondamentale

Il Dizionario 2 è Il Dizionario 2 è

sempre più sempre più

efficace

efficace del del Dizionario 1 Dizionario 1

(23)

 adattamento di STRIDER al multilinguismo, mantenendo nella stessa versione implementazioni per lingue diverse;

 ricerca ed analisi dei dizionari e degli strumenti linguistici per la lingua italiana;

 creazione di un “POS Tagger” utilizzando Morph-it!;

 implementazione modulare dell’estensione per la lingua italiana, utilizzando tre dizionari differenti;

 valutazione dell’efficacia della nuova versione su schemi SQL di molteplici argomenti e dimensioni, variando il contesto dei termini.

 implementazione di estensioni per qualsiasi altra lingua, seguendo i ragionamenti già effettuati per l’italiano;

 valutazione dell’efficacia utilizzando dizionari in lingua inglese non strutturati ad ipernimi;

 valutazione dell’efficacia utilizzando dizionari strutturati ad ipernimi in lingua italiana;

 valutazione dell’efficacia utilizzando i dizionari collaborativi;

 implementazione di funzionalità di feedback per gli algoritmi che non utilizzano la struttura ad ipernimi.

(24)

Riferimenti

Documenti correlati

public class PersistentClock implements Serializable, Runnable { private static final long serialVersionUID = 1;. private transient

Given a dictionary D of K strings, of total length N, store them in a way that we can efficiently support prefix searches for a pattern P over them... Front-coding:

**This demonstration is easier to set up with a Sine Wave Generator (ME-9867), or another ±10 V, 1 A function generator in place of the fixed-frequency power supply, because it

Il primo argomento tra parentesi indica la posizione da cui deve iniziare l'estrazione dei caratteri; il secondo argomento è il numero di caratteri da sostituire nella stringa

„ Il metodo String substring(int inizio, int fine) della classe String crea e restituisce un nuovo oggetto String composto dai caratteri della stringa su cui il metodo è

Based on this standardized and purified polyphenols complex, we have been performed in vitro studies to test its antimicrobial activity against a large panel of microorganisms,

The solvent used is 90% methanol and 10% tetrahydrofuran (dichloromethane) for Cr 3 (Cr 2 Ni). Concerning the ionization temperature, the best conditions were reached by heating the

Abstract—This work presents a novel haptic device to study human grasp, which integrates different technological solutions thus enabling, for the first time, to achieve: (i) a