L’obiettivo di questo lavoro è migliorare l’accuratezza dei risultati forniti da un motore di
ricerca, attraverso il profiling degli utenti.
Attraverso le query fornite dall’utente e i risultati da questo selezionati, il sistema acquisisce esperienza in modo da restituire, in seguito, risultati con un grado di correttezza crescente.
Nella tesi sono messi in evidenza i modelli matematici utili al profiling.
Applicazioni di modelli matematici alla ricerca semantica
1. Università degli Studi del Molise
Tesi di Laurea in Informatica
Applicazioni di modelli matematici
alla ricerca semantica
Candidato
Dario Di Nucci
130804
Relatore
Prof. Giovanni Capobianco
2. 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 applicativo
EVOLUZIONE DI INTERNET
3. 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 applicativo
INFORMATION RETRIEVAL
4. Dati due vettori:
𝑄, rappresentante una query
𝐷, rappresentante un documento
la loro similarità può essere calcolata
attraverso il coseno dell’angolo 𝜃 ,
compreso tra essi.
𝑆𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦 (𝐷, 𝑄) ∈ [−1,1].
Contesto applicativo
VECTOR SPACE MODEL
5. 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 Σ0 rappresenta i concetti ordinati in ordine di importanza.
𝑼 𝟎
𝜮 𝟎 𝑽 𝟎
Contesto applicativo
LATENT SEMANTIC INDEXING
6. 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:
polisemia
sinonimia
query malformate
Motivazioni
PROBLEMATICHE COMUNI
7. Molte parole hanno più di un significato, quindi una query potrebbe
condividere dei termini con un documento, sebbene quest’ultimo non sia
rilevante.
Conte
Motivazioni
POLISEMIA
8. 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
Motivazioni
SINONIMIA
9. Spesso l’utente inserisce, per errore, query non valide o che non
rappresentano bene l’informazione ricercata.
Conta
Motivazioni
QUERY MALFORMATE
10. 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
11. 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 Hound
INTRODUZIONE
12. Si occupa di analizzare le pagine web.
Per ogni documento:
estrapola informazioni testuali
individua le categorie inerenti
aggiorna le definizioni delle categorie
Ogni categoria è identificata da un vocabolario, costituito da
un insieme di termini.
docs Hound
INDEXER
13. 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 Hound
PROFILING UTENTE
14. 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,2
0,4
0,6
0,8
1,0
0,0 0,2 0,4 0,6 0,8 1,0
docs Hound
FUNZIONE LOGISTICA
15. 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 Hound
SEARCHER
17. 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
18. 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