Sei sulla pagina 1di 13

l modello vettorial

dell'nformation Retrieval
ntroduzione
l Vector-Space Model (VSM) (modello vettoriale)
per l'nformation Retrieval (R) una tecnica di
ricerca piuttosto recente (1980)
Basato su un modello matematico formale per il recupero
delle informazioni
documenti sono formalizzati come un insieme di termini
che possono essere pesati e manipolati
Le query sono effettuate confrontando la rappresentazione
della query con la rappresentazione di ciascun documento
(in uno specifico spazio vettoriale)
Recupera documenti che non contengono necessariamente
le parole chiave specificate per effettuare la ricerca
ntroduzione: idea di base
l VSM si basa sull'idea che il significato di un
documento pu essere derivato dai termini
che costituiscono il documento stesso
documenti vengono rappresentati come
vettori di termini d=(t
1
,t
2
, ,t
n
) in cui ogni t
i

un valore non-negativo indicante l'occorrenza
(singola o multipla) del termine i-simo nel
documento d
ogni termine della collezione di documenti
corrisponde a una dimensione dello spazio
ntroduzione: idea di base
Analogamente una query rappresenta come
un vettore q=(t
1
, t
d
) in cui ciascun elemento
un valore non negativo che denota il numero di
occorrenze di un termine nella query
vettori documento e i vettori query forniscono
la posizione di un oggetto nello spazio termini-
documenti.
Calcolando la distanza tra la query e un altro
oggetto nello spazio possibile recuperare
oggetti con un contenuto semantico simile a
quello della query
ntroduzione: misure di similarit
Per confrontare una query con un documento si
possono applicare diverse misure di similarit
La misura scelta permette di enfatizzare o sminuire
alcune propriet della collezione di documenti
il prodotto scalare permette di calcolare la distanza Euclidea
tra la query e un documento nello spazio
la misura di similarit basata sul coseno calcola (invece
della distanza) l'angolo formato dalla query e dal documento
eliminando in questo modo la dipendenza dalla lunghezza
dei vettori
in alcuni casi si utilizzano le direzioni dei vettori come
indicatori della similarit semantica degli oggetti nello spazio
termini-documenti
ntroduzione: problematiche
l VSM stato sviluppato per eliminare molti dei
problemi associati con le tecniche di matching
lessicali esatte
Polisemia (parole con pi significati): difficolt di distinguere
due documenti che utilizzano una stessa parola (utilizzata in
modo diverso) senza comprendere il contesto in cui tale
parola utilizzata
Sinonimia (parole con significato simile): difficolt di
individuare documenti simili che non utilizzano la stessa
terminologia per descrivere lo stesso concetto.
Una query che adotta la terminologia di uno specifico
documento non sar utile per recuperare documenti simili
Nei metodi di maching lessicale una query che adotta una
terminologia diversa da tutti i documenti della collezione
potrebbe non permettere il recupero di alcun documento.
ntroduzione: vantaggi del VSM
Modella termini, documenti e query in uno stesso spazio termini-
documenti e calcola un grado di similarit tra le query e i
documenti che permette di classificare i documenti pi simili alla
query
le tecniche di matching lessicale non forniscono alcuna classifica
(pi esattamente classificano un documenti prima di un altro solo
nel caso in cui il primo contiene pi occorrenze di un termine)
Le misure di similarit basate sulla distanza Euclidea o sul
coseno permettono di estrarre automaticamente i documenti
potenzialmente pi simili in termini di contenuto semantico
Metodo elegante per implementare i meccanismi di feedback
basati sulla rilevanza (grazie alla rappresentazione dei termini e
dei documenti nello stesso spazio)
Relevance feedback: utilizzare i termini e i documenti rilevati per
migliorare una query aumentando la precisione di questa e
aiutando un utente a specificare in modo pi accurato ci che
desidera ricercare
ntroduzione: performance di un
sistema di R
Le performance di un modello di R si esprimono
(generalmente) utilizzando le quantit note come
precision e recall
Precision: rapporto tra il numero di documenti rilevanti
recuperati dal sistema di retrieval e il numero totale di documenti
ritrovati
Recall: rapporto tra il numero di documenti rilevanti rispetto una
query recuperati dal sistema di retrieval e il numero totale di
documenti rilevanti nell'intera collezione
Precision e recall sono valori compresi tra 0 e 1
Sistema di retrieval ottimo avr precision e recall pari a 1
La precision tende a decrescere quando di considerano
real-world system
Latent Semantic ndexing
Una recente variante del VSM modello del
Latent Semantic ndexing
uso della SVD per ridurre la dimensione dello
spazio termini-documenti e cercare di risolvere i
problemi di sinonimia e polisemia
LS rappresenta esplicitamente termini e
documenti in uno spazio a molte dimensioni
sfruttando durante la ricerca le relazioni
semantiche ``latenti''
Latent Semantic ndexing
LS si basa sull'idea che i termini costituenti un
documento suggeriscono il contenuto semantico del
documento
Nel modello LS i termini sono considerati come
indicatori di "inaffidabili dei concetti contenuti nel
documento
assunzione: la variabilit della scalta di una parola nasconde
parzialmente la struttura semantica di un documento
risoluzione: riduzione della dimensionalit dello spazion
termini-documenti in modo da scoprire le relazioni
semantiche tra documenti
eliminazione del cosiddetto il ``rumore'' (differenze nell'uso
delle parole, termini simili, ecc.)
Latent Semantic ndexing
LS analizza statisticamente la struttura delle
parole in tutta la collezione di documenti e
colloca i documenti con la stessa struttura
nella stessa regione dello spazione termini-
documenti
n questo modo i documenti semanticamente
relazionati risultano "vicini anche se non
condividono gli stessi termini
LS: peculiarit
LS rappresenta i documenti in uno spazio di grandi
dimensioni
termini e i documenti sono esplicitamente rappresentati
nello stesso spazio
Nessuna interpretazione del significato delle singole
dimensioni
Ogni dimensione rappresenta semplicemente una o pi
relazioni semantiche nello spazio termini-documenti
Permette di rappresentare e manipolare dataset di
grandi dimensioni
applicazioni real-world
Ottime performance se confrontato con altre tecniche
di R
Rappresentazione
dell'informazione come spazio
vettoriale
Lo spazio termini-documenti
l VSM (e quindi il modello LS), rappresenta i termini e i documenti
utilizzando una matrice A di dimensioni m!n detta matrice di
incidenza o matrice termini-documenti.
A ciascuno degli m termini utilizzati per descrivere la collezione di
documenti corrisponde una riga della matrice
Ogni termine utilizzato unico
A ognuno degli n documenti nella collezione corrisponde una
colonna della matrice
Ogni elemento a
if
0 indica che
il termine i si trova nel documento j
in numero di volte che il termine compare nel documento
La matrice A fortemente "sparsa
il numero di termini in un dato documento generalmente inferiore ai
termini in tutta la collezione di documenti
Lo spazio termini-documenti
Per aumentare o diminuire l'importanza relativa di un
termine all'interno di un singolo documento e in tutta
la collezione di documenti si utilizza uno meccanismo
di pesi locali e globali
Ogni elemento non nullo della matrice A costituito
dal prodotto di due fattori a
ij
= l
ij
g
ij
l
ij
rappresenta una funzione di peso locale del termine i nel
documento j
g
ij
rappresenta una funzione di peso globale del termine i
Molto utilizzate le funzioni peso di tipo log-entropy
Lo spazio termini-documenti
La relazione tra il numero dei termini n e
quello dei documenti dipende dal tipo di
collezione di documenti che si vuole
indicizzare
collezione di testi (enclicopedia) nm
pagine web mn
Le query
Una query q formulata da un utente
rappresentata come un vettore i cui
elementi non nulli misurano la
frequenza pesata di un termine
si utilizza lo stesso meccanismo di pesi
locali e globali adottato per rappresentare
l'occorrenza di un termine in un documento
l processo di query matching
Assegnata una query q si utilizza una misura di
similarit per confrontare la sua posizione nello
spazio termini-documenti con la posizione dei
documenti della collezione nello stesso spazio
Misura di similarit basata sul coseno
calcolo dell'angolo tra la query e i documenti
le lunghezze dei documenti e della query sono generalmente
normalizzate
Calcolate tutte le misure di similarit si costruisce la
classifica dei documenti pi simili alla query (in
genere si fissa un valore soglia e si restituiscono solo
i documenti che superano tale soglia)
l processo di query matching
A[A
*1
,A
*2
,.,A
*m
] matrice termini-documenti
q[q
1
,.,q
m
]
T
vettore query
Similarit del coseno:
2 2 *
|| || || ||
) cos(
*
q A
q A
f
T
f
= u
VSM: interpretazione geometrica
Per spiegare la geometria del modello
vettoriale utilizziamo la fattorizzazione QR
della matrice termini-documenti
Sia r
A
=rank(A)
r
A
rappresenta la dimensione dello spazio termini-
documenti
r
A
dimensione dello spazio colonna di A
la fattorizzazione QR determina una base dello
spazio colonna di A
VSM: interpretazione geometrica
AQR
Qe
m!m
ortogonale (le colonne formano un
insieme di vettori ortogonali)
R e
m!n
triangolare superiore a blocchi
le colonne della matrice A sono combinazione
lineare delle colonne della matrice Q
un sottoinsieme di r
A
colonne della Q costituisce
una base per lo spazio colonna di A
il contenuto semantico della collezione di
documenti descritto completamente da una base
dello spazio colonna di A
VSM: interpretazione geometrica
rank(A) rank(R) rank(R
A
)
l coseno dell'angolo tra una query e un generico
vettore documento dato da
A A
A
A A
R Q
R
Q Q A =
|
|
.
|

\
|
=

0
) , (
2 2
2 2 2 2 *
*
|| || || ||
) (
|| || || ||
) (
|| || || ||
) cos(
q R Q
q Q R
q R Q
q R Q
q A
q A
f A
T
A
T
f
f A
T
f A
f
T
f
-
-
-
-
=
= = 0
VSM: interpretazione geometrica
Si osservi che:
T
A A
T
A A
T
A
T
A
A A
T
Q Q Q Q
Q
Q
Q Q QQ I
) (
) (
) , (

+ =
|
|
.
|

\
|
= =
Possiamo quindi riscrivere la query:


+ =
+ = =
A A
T
A A
T
A A
q q
q Q Q q Q Q Iq q ) (
q
A
soluzione del problema ai minimi quadrati min
x
||q-x||
2
q
A
proiezione della query nello spazio generato dalle
colonne di Q
A
VSM: interpretazione geometrica
2 2 *
*
2 2 *
* *
2 2 *
*
2 2 *
*
|| || || || || || || ||
) (
|| || || ||
) (
|| || || ||
) cos(
q A
q A
q A
q Q Q A q A
q A
q q A
q A
q A
f
A
T
f
f
T
A A
T
f A
T
f
f
A A
T
f
f
T
f
=
+
=
+
= =

0
La query imperfetta fornita da un utente
automaticamente sostituita dalla sua migliore
approssimazione in termini del contenuto semantico della
collezione di documenti
VSM: esempio
Termini del vocabolario: 6
bak (e, ing)
recipes
bread
cake
pastr (y, ies)
pie
Generalmente il vocabolario dei termini viene costruito
effettuando delle semplificazioni
processo di stoplisting: esclusione dei termini la cui frequenza
alta (articoli deter./indet., proposiz, ecc)
processo di stemming: identificazione dei termini mediante la loro
radice (riduzione dello spazio richiesto per immagazzinare i termini)
VSM: esempio
Documenti indicizzati: 5
(d1) How to bake bread without recipes
(d2) The classic art of viennese pastry
(d3) Numerical recipes: the art of scientific
computing
(d4) Breads, pastries, pies and cakes:
quantity baking recipes
(d5) Pastry: a book of best french recipes
VSM: esempio
Matrice termini-documenti
5 6
0 1 0 0 0
1 1 0 1 0
0 1 0 0 0
0 1 0 0 1
1 1 1 0 1
0 1 0 0 1

e
(
(
(
(
(
(
(

= R A
VSM: esempio
Matrice termini-documenti normalizzata
(
(
(
(
(
(
(

=
0 4082 . 0 0 0 0
7071 . 0 4082 . 0 0 1 0
0 4082 . 0 0 0 0
0 4082 . 0 0 0 5774 . 0
7071 . 0 4082 . 0 1 0 5774 . 0
0 4082 . 0 0 0 5774 . 0
A
VSM: esempio
Query fornita dall'utente: "baking bread
(
(
(
(
(
(
(

=
0
0
0
1
0
1
) 1 (
q
VSM: esempio
Un documento ritenuto rilevante e restituito
se il coseno dell'angolo formato dal
documento e dalla query maggiore di un
valore soglia
Nelle implementazioni pratiche il valore di
threshold utilizzato 0.9, nel nostro esempio
usiamo il valore 0.5
Per q
(1)
risulta
cos(
1
)=0.8165 doc 1 rilevante
cos(
1
)=0.5774 doc 4 rilevante
VSM: esempio
Utilizziamo una nuova query "baking
(
(
(
(
(
(
(

=
0
0
0
0
0
1
) 2 (
q
0 ) cos(
4082 . 0 ) cos(
0 ) cos(
0 ) cos(
5774 . 0 ) cos(
5
4
3
2
4
=
=
=
=
=
0
0
0
0
0
il doc 4 che
sembra pi
rilevante non viene
restituito
VSM: esempio
Applichiamo la QR per identificare e
rimuovere le informazioni ridondanti
nella rappresentazione matriciale del
database
in termini di algebra lineare identifichiamo il
rango della matrice
per l'esempio: rank(A)=4
VSM: esempio
(
(
(
(
(
(
(


=
7071 . 0 0 7071 . 0 0 0 0
0 0 0 0 1 0
7071 . 0 0 7071 . 0 0 0 0
0 7071 . 0 0 4082 . 0 0 5774 . 0
0 0 0 8165 . 0 0 5774 . 0
0 7071 . 0 0 4082 . 0 0 5774 . 0
Q
(
(
(
(
(
(
(



=
0 0 0 0 0
0 0 0 0 0
0 5774 . 0 0 0 0
5774 . 0 0 8165 . 0 0 0
7071 . 0 4082 . 0 0 000 . 1 0
4082 . 0 7070 . 0 5774 . 0 0 0001 . 1
R
VSM: esempio
(

=
22
12 11
0 R
R R
R
Relativamente
piccola rispetto a R
2582 . 0
2361 . 2
5774 . 0
|| ||
|| ||
22
= =
R
R
Creiamo una nuova matrice triangolare superiore ponendo
R
22
0 la nuova matrice ha rango 3
R Q E A
~
= +
(

= + =
22
0
0 0
R
Q A E A E
VSM: esempio
Effettuando un cambio relativo del 26% nella matrice
R si ottiene un cambio analogo in A
E' accettabile usare l'approsimazione di rango 3 (A+E) al
posto della matrice A
Usando l'approssimazione low-rank le misure di similarit per
le due query sono
q
(1)
0.8165 ,0, 0, 0.7071, 0
q
(2)
0.5774, 0, 0, 0.5, 0
A+E una migliore rappresentazione del database rispetto
alla matrice A
2582 . 0
|| ||
|| ||
|| ||
|| ||
|| ||
|| ||
|| || || ||
22 22
= = =
=
F
F
F
F
F
F
F F
R
R
A
R
A
E
R A
Calcolo della SVD nel LS
Considerata la matrice termini-documenti A si calcola la SVD
l teorema di Eckart-Young fornisce la migliore approssimazione
(in norma di Frobenius) di rango k< r
A
A
k
la TSVD (truncated SVD)
Riducendo la dimensionalit di A, la maggior parte del "rumore
(causa degli errori nel processo di recupero) eliminato
vettori singolari destri e sinistri specificano la posizione dei
termini e dei documenti in uno spazio termini-documenti ridotto
valori singolari sono utilizzati per scalare i vettori termini e
documenti per poter effettuare un clustering di termini e doc.
La SVD permette di derivare la struttura semantica dello spazio
termini-documenti
nello spazio termini-documenti ridotto i documenti semanticamente
relazionati sono "vicini
LS: proiezione della query
Una query viene trasformata in uno pseudo-
documento che specifica la posizione di quella
query nello spazio termini-documenti ridotto
Uno pseudo-documento costituito dalla
somma dei vettori termini che corrispondono ai
termini specificati nella query scalati dalla
matrice dei valori singolari (
k
Q
k
T
q)
valori singolari sono utilizzati per pesare
ciascuna dimensione dello spazio termini-
documenti
l processo di matching
Dopo aver proiettato la query nello spazio
termini-documenti ridotto si usa una misura di
similarit per confrontare per la posizione
dello pseudo-documento con i documenti
della collezione
coseno dell'angolo tra due vettori
Calcolate le misure di similarit tra lo pseudo-
documento e tutti i termini e documenti si
classificano risultati in base ad un valore di
soglia (threshold)
l ranking ottenuto restituito all'utente
l processo di matching
2 2
2 2 2 2
|| || || ||
) (
|| || || ||
) (
|| || || ||
) (
) cos(
q e J
q U e J
q e J U
q e J U
q e A
q e A
f
T
k k
T
k k f k
f
T
k k k
T
f
T
k k k
f k
T
f k
E
E
=
E
E
= = 0
Gli elementi del vettore J
k
T
e
f
sono le coordinate della j-ima
colonna di A
k
nella base definita dalle colonne di Q
k
Gli elementi del vettore U
k
T
q rappresentano le coordinate
della proiezione della query nello spazio colonna di A
k
Confronto di termini
l modello VSM-LS permette di
effettuare il confronto tra una query e i
documenti della collezione
L'uso della SVD permette di effettuare
anche un confronto termini-termini
tale confronto permette di raffinare
risultati di ricerca
relevance feedback
Confronto di termini
Si crea una nuova matrice termini-documenti G le cui
colonne rappresentano i documenti rilevanti restituiti
durante in processo di query-matching
l confronto termine-termine si effettua calcolando il
coseno dell'angolo formato tra tutte le coppie di termini
coseni diventano gli elementi di una matrice
simmetrica C
c
if
forniscono informazioni su quanto il termine i-simo vicino
al termine j-simo
c
if
1 indica che i due termini sono strettamente relazionati
La separazione geometrica dei vettori termini permette
di individuare gruppi di termini semanticamente
indipendenti (clustering per risolvere la polisemia)
Confronto di termini
A
k
U
k

k
J
k
T
colonne di U
k
formano una base per lo spazio
colonna
righe di J
k
formano una base per lo spazio riga:
quindi si possono utilizzare per effettuare un
confronto termine-termine
2 2
2 2
|| || || ||
) )( (
|| || || ||
) )( (
) cos(
f
T
k k i
T
k k
f
T
k k k
T
k k k
T
i
f
T
i
T
f
T T
i
e U e U
e U J J U e
e G e G
e G G e
E E
E E
=
= = 0
Confronto di termini
Le informazioni derivanti dal processo di
clustering possono essere utilizzate per
generare "dizionari dei sinonimi in cui i
termini sono raggruppati in funzione di quanto
spesso co-occorrono nell'ipotesi che ai
termini che si trovano insieme si associano
concetti simili
Tali "dizionari dei sinonimi possono essere
utilizzati per espandere e/o raffinare una
query
Relevance Feedback
l feedback basato su rilevanza (Relevance feedback)
rappresenta un meccanismo iterativo che permette di
migliorare una query senza un incremento del costo
computazionale necessario a ripetere una query.
Uso dei termini contenuti nei documenti rilevanti per sopperire
e arricchire le parole chiave fornite da un utente
ncrementa le performance (in termini di precision e recall)
LS rappresenta termini e documenti nello stesso
spazio
una relevance feedback query quindi costruita come una
semplice query.
Relevance feedback
Poich siamo interessati solo alle informazioni
contenute nello spazio colonna di A
k
assumiamo che
il vettore query originale q si trovi in tale spazio
se ci non accade il vettore di query viene proiettato in tale
spazio (qU
k
U
k
T
q )
Query e vettori documenti sono rappresentati nella
base fornita dalle prime k colonne di U
k
le coordinate del vettore query sono gli elementi del vettore
U
k
T
q
le coordinate della j-sima colonna U
k

k
J
k
T
e
f
della matrice A
k
sono gli elementi del vettore
k
J
k
T
e
f
Relevance feedback
Supponendo che un singolo documento
sia restituito come il pi rilevante
rispetto la query assegnata
La nuova query calcolata come:
) (
) (
*
f
T
k k
T
k k
f
T
k k k
T
k k
f k
T
k k new
e J q U U
e J U q U U
A q U U q
E + =
E + =
+ =
Relevance feedback
Se si ha un insieme di d diversi documenti rilevanti
rispetto la query assegnata
La nuova query calcolata come:
) (
) (
1
w J q U U
A w q q
T
k k
T
k k
d
f
f k f new
E + =
+ =

=
l vettore w ha elementi 1 se il documento rilevante e 0
altrimenti
Manipolare collezioni di
documenti dinamiche
Le informazioni sono spesso aggiunte e/o
rimosse
cataloghi e indici divengono obsoleti o incompleti
Approccio pi ovvio nel LS basato sul
ricalcolo della SVD della nuova matrice
termini-documenti
alto costo computazionale per grandi database
Procedure alternative
Folding-n
SVD-updating
Folding-n
Meccanismo che prevede l'inserimento di un
nuovo vettore documento nello spazio
colonna della esistente matrice termini-
documenti
equivale a calcolare le coordinate di tale
documento nella base U
k
n modo analogo si pu effettuare
l'inserimento di un nuovo termine
si modifica lo spazio righe
Bibliografia
M.W.Berry, Z. Drmac, E.JR. Jessup,
"Matrices,Vector Spaces, and nformation
Retrieval, SAM Review 41(2), 335-362, 1999
M.W.Berry, S.T.Dumais, G.W. O'Brien, "Using
linear algebra for intelligence information
retrieval, SAM Review 37 573-595, 1995
G. Kowalski, "nformation Retrieval System:
theory and implementation, Kluver Academic
Publishers, 1997
Folding-n
Sia il nuovo documento da inserire
1 passo: proiettare nello spazio colonna g
=U
k
U
k
T

le coordinate di g nella base U


k
sono gli elementi del
vettore U
k
T

2 passo: inserire il nuovo vettore g come nuova


colonna della matrice
k
J
k
T
effettivamente si aggiunge il vettore U
k

k
-1
come nuova
riga della matrice J
k
per formare una nuova matriceJ
k

il risultato desiderato dato dal prodotto implicito


k
J
k

J
k
non ortogonale
Lo spazio righe di J
k
non rappresenta lo spazio righe
della collezione di documenti