Indexação por Semântica Latente(Latent Semantic Indexing)
Joaquim Macedo
Fontes
• Apresentação de Berthier Neto • Outras apresentações disponíveis na
Internet
LeiturasScott Deerwester, Susan T. Dumais, George W. Furnas, Thomas K. Landauer, Richard Harshman, "Indexing by latent semantic analysis". Journal of the American Society for Information Science, Volume 41, Issue 6, 1990.
http://www3.interscience.wiley.com/cgi-bin/issuetoc?ID=10049584
Livro Modern Information RetrievalCap. 02: Modeling(Latent Semantic Indexing) 2.7.2, 2.7.3
Indexação por Semântica Latente
• A RI clássica pode conduzir a baixa eficácia na busca devido a
– Documentos não relacionados podem ser incluídos no conjunto da resposta
– Documentos relevantes que não contenham pelo menos um termo de índice da interrogação podem não ser devolvidos
• Raciocínio: Busca baseada em termos de índice é vaga e ruidosa.
Deficiências com indexação automática convencional
Sinónimos: Várias palavras e frases referenciam o mesmo conceito (diminui a cobertura)
Homógrafas: Palavras que têm mais que um significado (diminui a precisão)
Independência: Não é dada importância ao facto de 2 termos aparecerem em conjunto frequentemente
Indexação por Semântica Latente
Objectivo
Substituir índices que usam conjunto de termos de índice por índices que usam conceitos.
Abordagem
Estabelecer uma correspondência entre o espaço vectorial dos índices por um espaço de menor dimensão, usando a decomposição em valores singulares
t1
t2
t3
d1 d2
O espaço tem tantas dimensões como os termos da lista de palavras
Espaço vectorial dos termos de índice
PCA e SVD
• PCA ( Principle Component Analysis)– Análise em Componentes Principais
• SVD: Singular Value Decomposition– Decomposição em Valores Singulares
• Recursos– The Matrix Cookbook
• http://www.imm.dtu.dk/pubdb/views/edoc_download.php/3274/pdf/imm3274.pdf
Análise em Componentes Principais (PCA)
• Exemplo: Projectar dados 2D num PC 1D
• Variabilidade dos dados pode ser descrito usando um menor número de dimensões– Funciona bem quando as
facetas de entrada estão correlacionadas
– As novas dimensões são não correlacionadas.
xWy pca
Análise Discriminante LinearLinear Discriminant Analysis (LDA)
• A análise por componentes principais não é necessariamente boa para discriminação na classificação.
• A Análise disciminante linear procura encontrar uma transformação linear que maximiza a variância entre classes e minimizar a variância interna das classes– i.e. discriminação das facetas
Análise Discriminante Linear
• Projectar um espaço 2D num 1 PC
B
.2.0
1.5
1.0
0.5
0.5 1.0 1.5 2.0
..
..
. ...
...
. .
A
w
.Não descriminante
(from slides by Shaoqun Wu)
Análise Discriminante Linear
B
.
2.0
1.5
1.0
0.5
0.5 1.0 1.5 2.0 .. .... . . ... .. A
w
.
B
.
2.0
1.5
1.0
0.5
0.5 1.0 1.5 2.0
..
..
....
...
. .
Aw
.
PCA LDA: descobre uma discriminação linear
PCA e SVD• Fazer a PCA é equivalente ao SVD nos dados• Qualquer matriz X nxm pode ser descrita como:
– X=T·S·VT
– T é os vectores de valores próprios de X·XT (nxn)– S é a diag(eig(X·XT) (nxm)– V é os vectores de valores próprios dr XT·X (mxm)
n x m
terms
documents
X
Exemplo de Documentos: Títulos c1 Human machine interface for Lab ABC computer
applications c2 A survey of user opinion of computer system response time c3 The EPS user interface management system c4 System and human system engineering testing of EPS c5 Relation of user-perceived response time to error
measurementm1 The generation of random, binary, unordered treesm2 The intersection graph of paths in treesm3 Graph minors IV: Widths of trees and well-quasi-ordering m4 Graph minors: A survey
Exemplo : Termos e Documentos
Terms Documentsc1 c2 c3 c4 c5 m1 m2 m3 m4
human 1 0 0 1 0 0 0 0 0interface 1 0 1 0 0 0 0 0 0computer 1 1 0 0 0 0 0 0 0user 0 1 1 0 1 0 0 0 0system 0 1 1 2 0 0 0 0 0response 0 1 0 0 1 0 0 0 0time 0 1 0 0 1 0 0 0 0EPS 0 0 1 1 0 0 0 0 0survey 0 1 0 0 0 0 0 0 1trees 0 0 0 0 0 1 1 1 0graph 0 0 0 0 0 0 1 1 1minors 0 0 0 0 0 0 0 1 1
Dimensão das matrizes
X = T0
D0'S0
t x d t x m m x dm x m
m é o rank de X < min(t, d)
Latent Semantic Indexing
t x d
terms
documents
X =
t x m
m x m m x d
* * * * *
DST0
0 0
Singular Value Decomposition
t x d t x k
k x k k x d =terms
documents* * * * *X
DST
Select first k singular values
^
T0
S0
D0
Rank Reduzido
Os elementos da diagonal de S0 são positivos e decrescem em magnitude. Considere apenas os k maiores e coloque os restantes a zero.
Apague as colunas e as filas a zero de S0 e as filas correspondentes de T0 e D0. Isto dá:
X X = TSD'
Interpretação
Se o valor k for bem seleccionado, espera-se que X retenha a informação semântica de X, mas elemine o ruído de sinónomos, homografias e reconhece a dependência.
~~^
^
Selecção de valores singulares
X =
t x d t x k k x dk x k
k é o número de valores singulares escolhidos para representar os conceitos no conjunto de documentos
Normalmente k « m.
T
S D'
^
SVD com os termos menores descartados
TS define coordenadas para documentos no espaço latente
Termos Graficados em 2 dimensões
LSA2.SVD.2dimTrmVectors[,1]
-2.0 -1.5 -1.0 -0.5 0.0
-0.5
0.0
0.5
1.0
1.5
humaninterface
computeruser
system
responsetime
EPS
survey
trees
graph
minors
Documentos e Termos
LSA2.SVD.2dimTrmVectors[,1]
-2.0 -1.5 -1.0 -0.5 0.0
-0.5
0.0
0.5
1.0
1.5
humaninterface
computeruser
system
responsetime
EPS
survey
trees
graph
minors
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
c1
c2
c3
c4
c5
m1
m2
m3
m4
Comparação de dois termos
XX' = TSD'(TSD')'
= TSD'DS'T'
= TSS'T Uma vez que D é ortonormal
= TS(TS)'
Para calcular a posição i, j, calcule o produto interno entre a fila i e j de TS
Uma vez que S é diagonal, TS difere apenas de T pela mudança do sistema de coordenadas.
^
^
O produto interno de duas filas de X reflecte em que medida dois termos têm um padrão similar de ocurrências.
^
Comparação entre 2 documentos
X'X = (TSD')'TSD'
= DS(DS)'
Para calcular a posição i, j, obtenha o produto interno entre as colunas i e j de DS.
Uma vez que S é diagonal DS difere D apenas pela mudança do sistema de coordenadas.
^^
O produto interno de duas colunas de X reflecte a medida em que dois documentos têm um padrão similar de ocurrências.
^
Comparação de um termo e um documento
A comparação entre um termo e um documento duma célula individual de X.
X = TSD'
= TS(DS)'
Onde S é uma matriz diagonal cujos valores são a raiz quadrada dos correspondentes valores de S.
^
- -
-
Exemplo duma Memo técnica: Interrogação
Terms Query xq
human 1interface 0computer 0user 0system 1response 0time 0EPS 0survey 0trees 1graph 0minors 0
Interrogação: "human system interactions on trees"
No espaço termo-documento, uma interrogação é representada por xq, um vector t x 1.
No espaço de conceitos, uma interrogação é representada por dq, um vector 1 x k.
Interrogação
A forma sugerida de dq é :
dq = xq'TS-1
Exemplo de uso. Para comparar uma interrogação com um documento i, tome o elemento iésimo do produto de DS e dqS, que é iésimo elemento do produto de DS e xq'T.
Observe que dq é um vector coluna.
Interrogação
Seja xq um vector de termos para a interrogação q.
No espaço de dimensão reduzido, q, é representado pelo pseudo-documento, dq, no centroides de termos, com aapropriada mudança de escala dos eixos.
dq = xq'TS-1
Resultados Experimentais
Deerwester, et al. ensaiaram o LSI em duas colecções de teste MED e CISI, com interrogações e julgamentos de relevância disponíveis.
Documentos eram compostos por títulos e resumos.
Listas de Stopwords de 439 palavras, sem stemming, etc.
Comparação com: (a) unificação simples de termos , (b) SMART, (c) método de Voorhees.
Resultados Experimentais: 100 Factores
Resultados Experimentais: Nº de Factores
Conclusões
• O Latent semantic indexing fornece uma diferente conceptualização do problema da RI(IR)
• Permite a redução da complexidade do quadro de representação subjacente o que pode ser explorado por exemplo com o propósito de interface com o utilizador