Università degli Studi del MoliseTesi di Laurea in Informatica
Applicazioni di modelli matematici alla ricerca
semantica
CandidatoDario Di Nucci130804
RelatoreProf. Giovanni Capobianco
Internet è una rete di computer mondiale ad accesso pubblico che attualmente rappresenta il principale mezzo di comunicazione di massa.
I suoi utenti nel 2010 hanno raggiunto quota 1,97 miliardi in crescita del 14% rispetto all’anno precedente.
Il numero dei siti web nel 2010 ha raggiunto quota 255 milioni, di cui 21,4 aperti nell’ultimo anno.
Contesto applicativoEVOLUZIONE DI INTERNET
Cosa è?Insieme delle tecniche atte al recupero mirato dell’informazione in formato elettronico.
Cosa fa?Le tecniche di IR basate su modelli vettoriali, applicano il concetto di somiglianza testuale tra una base di dati e una query, restituendo una serie di documenti pertinenti.
Modelli matematici più importanti? Vector Space Model Latent Semantic Indexing …
Applicazioni più note?Motori di ricerca.
Contesto applicativoINFORMATION RETRIEVAL
Dati due vettori:rappresentante una queryrappresentante un
documentola loro similarità può essere calcolata attraverso il coseno dell’angolo , compreso tra essi.
.
Contesto applicativoVECTOR SPACE MODEL
Problema: l’utente va alla ricerca delle informazioni basandosi su concetti e non su singole parole.Il cuore del LSI è rappresentato dalla decomposizione ai valori singolari (SVD).
𝑿La matrice rappresenta i concetti ordinati in ordine di importanza.
𝑼 𝟎
𝜮𝟎 𝑽 𝟎
Contesto applicativoLATENT SEMANTIC INDEXING
Nella fruizione dei documenti presenti sul web è fondamentale per l’utente un motore di ricerca che restituisca risultati corretti.
Nella sua realizzazione tre problemi che sicuramente incidono negativamente sulla bontà dei risultati sono:polisemiasinonimiaquery malformate
MotivazioniPROBLEMATICHE COMUNI
Molte parole hanno più di un significato, quindi una query potrebbe condividere dei termini con un documento, sebbene quest’ultimo non sia rilevante.
Conte
MotivazioniPOLISEMIA
Esistono diversi modi per esprimere uno stesso concetto; ciò implica che una query potrebbe non condividere termini con un documento, sebbene quest’ultimo sia rilevante per la query stessa.
Automobile Macchina Auto
MotivazioniSINONIMIA
Spesso l’utente inserisce, per errore, query non valide o che non rappresentano bene l’informazione ricercata.
Conta
MotivazioniQUERY MALFORMATE
Obiettivi
Migliorare l’accuratezza dei risultati forniti da un motore di ricerca, attraverso il profiling degli utenti.
Profiling?!Attraverso le query fornite dall’utente e i risultati da questi selezionati, il sistema acquisisce esperienza.In questo modo restituisce risultati con un grado di correttezza crescente.
PROFILING
E’ stato realizzato un motore di ricerca basato su una nota libreria di Information Retrieval, Lucene.Lucene è un progetto open source promosso dalla Apache Software Foundation.
docs HoundINTRODUZIONE
Si occupa di analizzare le pagine web.Per ogni documento:estrapola informazioni testualiindividua le categorie inerentiaggiorna le definizioni delle categorie
Ogni categoria è identificata da un vocabolario, costituito da un insieme di termini.
docs HoundINDEXER
Ad ogni utente è associato un profilo di ricerca, sotto forma di distribuzione di probabilità.
Il valore della preferenza di una categoria aumenta seguendo l'andamento di una funzione logistica.
I valori delle categorie non scelte sono decrementati in modo proporzionale.
docs HoundPROFILING UTENTE
Scelte occasionali per una categoria modificano soltanto lievemente il profilo, mentre scelte consecutive hanno effetto via via maggiore.
Quando la preferenza per una categoria raggiunge un valore sufficientemente più elevato rispetto alle altre, si stabilizza su tale posizione.
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.00.0
0.2
0.4
0.6
0.8
1.0
docs HoundFUNZIONE LOGISTICA
Restituisce le pagine web ordinandole per punteggio.Il punteggio è calcolato in funzione dell'attinenza della pagina web con la query e il profilo dell'utente.
In particolare: punteggio = punteggio query * (1 + punteggio profilo)
Per ridurre i problemi causati da query malformate, il parser delle query applica a queste un grado di casualità utilizzando tecniche fuzzy.
docs HoundSEARCHER
docs HoundTESTING
Query
1Query
2Query
3Query
4Query
5Tot diff
Utente 1
110
110
110
32-1
110
-1
Utente 2
31-2
220
110
110
110
-2
Utente 3
110
110
21-1
220
110
-1
Utente 4
110
110
21-1
21-1
21-1
-3
Utente 5
110
220
110
110
110
0
Al termine della sperimentazione si può affermare che le tecniche di profiling sono una buona soluzione per il problema della polisemia.
Il problema delle query malformate è stato mitigato applicando un grado di casualità ad esse.
CONCLUSIONI
Integrazione di un crawler nel sistema al fine di renderlo operativo.
Miglioramento della categorizzazione di utenti e pagine attraverso una crescente accuratezza dei vocabolari che ne costituiscono le definizioni.
Gestione automatica della funzione logistica in base al numero di categorie.
Testing approfondito con un maggior numero di utenti.
SVILUPPI FUTURI
Grazie per l’attenzione