Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de...
Transcript of Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de...
Modelo Espaço Vetorial
Mariella Berger
Agenda
Introdução Atribuição de Pesos
– Frequência– TF-IDF
Similaridade Exemplo Vantagens e Desvantagens
Modelo Espaço Vetorial
Introdução
Modelo Espaço Vetorial
O modelo espaço-vetorial foi desenvolvido por Gerard Salton.
Modelo Espaço Vetorial
Documentos e queries são representados por um vetor com n dimensões, onde n é o numero de termos diferentes na coleção de documentos.
Achar documentos é comparar o vetor
de documentos com o vetor query do usuário
Modelo Espaço Vetorial
0 indica a ausência de um termo wit : Peso que indica a importância do termo
good
tutorial
on
java
sun
site
w11
doc1
w12
w13
w14
0
0
0
doc2
w22
0
w24
0
0
0
doc3
0
0
w34
w35
w36
0
query
0
0
w4
0
0
termos
Modelo Espaço Vetorial
Atribuição de Pesos
Atribuição de Peso
Os pesos são usados para computar a similaridade
O peso de um termo em um documento pode ser calculado de diversas formas:– Frequência no documento– Balancear características em comum (intra-
documentos) e características para fazer a distinção entre documentos (inter-documentos) – Salton e Buckey
Atribuição de Pesos
Frequência
Exemplo
Documento A– “A dog and a cat.”
Documento B– “A frog.”
1112
catanddoga
11
froga
Exemplo
O vocabulário contém todas as palavras utilizadas– a, dog, and, cat, frog
O vocabulário necessita ser ordenado– a, and, cat, dog, frog
Exemplo
Documento A: “A dog and a cat.”
– Vetor: (2,1,1,1,0) Documento B: “A frog.”
– Vetor: (1,0,0,0,1)
1
dog
1
cat
012
froganda
0
dog
0
cat
101
froganda
Exemplo: Queries
Queries também podem ser representadas como vetores:– Dog = (0,0,0,1,0)– Frog = (0,0,0,0,1)– Dog and frog = (0,1,0,1,1)
Atribuição de Pesos
Balanceamento de características
(tf-idf)
TF-IDF
Onde:– tf
i(frequência do termo) = o número de
vezes que o termo i ocorre no documento (reflete a informação local)
– dfi(frequência do documento) = o número de
documentos que contém o termo i.– D = número total de documentos
TF-IDF
A fração dfi/D é a probabilidade de selecionar
um documento que contém o termo i.
log(D/dfi) é o Inverse Document Frequency
(IDFi ), e reflete a informação global
Se o termo aparece pouco nos documentos, então este é mais relevante.
Exemplo
Uma outra definição
TF = freq(k,S) (frequência do termo k no documento/consulta S)
IDF = log (N/nk) (Inverse Document
Frequency), onde:– N: é o número de termos na coleção
– Nk : é o número de vezes que o termo
ocorre na coleção
Modelo Espaço Vetorial
Similaridades
Similaridade
Cada elemento do vetor de termos é considerado uma coordenada dimensional.
Assim, os documentos podem ser colocados em um espaço euclidiano de n dimensões (onde n é o número de termos) e a posição do documento em cada dimensão é dada pelo seu peso (figura no próximo slide).
Similaridade
Similaridade
Cada dimensão corresponde a um termo, e o valor do documento em cada dimensão varia entre 0 (irrelevante ou não presente) e 1 (totalmente relevante).
Similaridade
Similaridade
As distâncias entre um documento e outro indicam seu grau de similaridade– ou seja, documentos que possuem os
mesmos termos acabam sendo colocados em uma mesma região do espaço e, em teoria, tratam de assuntos similares.
Similaridade - Consulta
Os vetores dos documentos podem ser comparados com o vetor da consulta e o grau de similaridade entre cada um deles pode ser identificado.
Os documentos mais similares (mais próximos no espaço) à consulta são considerados relevantes para o usuário e retornados como resposta
Similaridade - Consulta
Uma das formas de calcular a proximidade entre os vetores é testar o ângulo entre estes vetores.
No modelo original, é utilizada uma função batizada de cosine vector similarity
Coseno entre vetores
Para 2 vetores d e d’, a similaridade é calculada pelo coseno, ou seja:
'
'
dd
dd
Similaridade
Depois dos graus de similaridade terem sido calculados, é possível montar uma lista ordenada (ranking) de todos os documentos e seus respectivos graus de relevância à consulta, da maior para a menor relevância.
Exemplo
Brasil 0.3Olimpíadas 0.5Sidney 0.2
ddii
Brasil 0.2Olimpíadas 0.4Sidney 0.4
ddjjBrasil
Olimpíadas
Sidney
di0.2
0.50.3
dj
di = 0.3 Brasil + 0.5 Olimpiadas + 0.2 Sidney
dj = 0.2 Brasil + 0.4 Olimpiadas + 0.4 Sidney
Exemplo
Similaridade: produto interno / produto das normas
Sim= = = 0.28
di • dj
|di| · |dj| 0.3 · 0.2 + 0.5 · 0.4 + 0.2 · 0.4
( 0.09 + 0.25 + 0.04 )½ · ( 0.04 + 0.16 + 0.16 )½
Modelo Vetorial
Exemplos
Exemplo 1
Query: "gold silver truck" A coleção possui 3 documentos (D = 3) D1: "Shipment of gold damaged in a fire" D2: "Delivery of silver arrived in a silver
truck" D3: "Shipment of gold arrived in a truck"
Análise da similaridade
Análise da similaridade
Análise da similaridade
Análise da similaridade
Resultado obtido:– Rank 1: Doc 2 = 0.8246– Rank 2: Doc 3 = 0.3271– Rank 3: Doc 1 = 0.0801
Modelo Vetorial
Vantagens e Desvantagens
Vantagens
Oferecer um framework simples e elegante Atribuir pesos aos termos melhora o desempenho É uma estratégia de encontro parcial (função de
similaridade), que é melhor que a exatidão do modelo booleano;
Os documentos são ordenados de acordo com seu grau de similaridade com a consulta.
Em geral, seu desempenho (precisão e recall) supera todos os outros modelos
Desvantagens
Ausência de ortogonalidade entre os termos. Isso poderia encontrar relações entre termos que aparentemente não têm nada em comum;
É um modelo generalizado; Um documento relevante pode não
conter termos da consulta; Documentos muito longos podem
dificultar na medida da similaridade;
Idéias para melhorá-lo
Apontar um conjunto de palavras-chaves nos documentos
Eliminar palavras muito comuns (como exemplo artigos)
Limitar o vetor espaço em substantivos e poucos verbos ou adjetivos
Criar subvetores para documentos muito grandes