modelo espaço vetorial - informáticamberger/disciplinas/2011_2/edii/slides/... · atribuição de...
TRANSCRIPT
![Page 1: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/1.jpg)
Modelo Espaço Vetorial
Mariella Berger
![Page 2: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/2.jpg)
Agenda
Introdução Atribuição de Pesos
– Frequência– TF-IDF
Similaridade Exemplo Vantagens e Desvantagens
![Page 3: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/3.jpg)
Modelo Espaço Vetorial
Introdução
![Page 4: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/4.jpg)
Modelo Espaço Vetorial
O modelo espaço-vetorial foi desenvolvido por Gerard Salton.
![Page 5: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/5.jpg)
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
![Page 6: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/6.jpg)
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
![Page 7: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/7.jpg)
Modelo Espaço Vetorial
Atribuição de Pesos
![Page 8: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/8.jpg)
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
![Page 9: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/9.jpg)
Atribuição de Pesos
Frequência
![Page 10: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/10.jpg)
Exemplo
Documento A– “A dog and a cat.”
Documento B– “A frog.”
1112
catanddoga
11
froga
![Page 11: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/11.jpg)
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
![Page 12: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/12.jpg)
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
![Page 13: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/13.jpg)
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)
![Page 14: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/14.jpg)
Atribuição de Pesos
Balanceamento de características
(tf-idf)
![Page 15: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/15.jpg)
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
![Page 16: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/16.jpg)
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.
![Page 17: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/17.jpg)
Exemplo
![Page 18: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/18.jpg)
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
![Page 19: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/19.jpg)
Modelo Espaço Vetorial
Similaridades
![Page 20: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/20.jpg)
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).
![Page 21: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/21.jpg)
Similaridade
![Page 22: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/22.jpg)
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).
![Page 23: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/23.jpg)
Similaridade
![Page 24: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/24.jpg)
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.
![Page 25: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/25.jpg)
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
![Page 26: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/26.jpg)
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
![Page 27: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/27.jpg)
Coseno entre vetores
Para 2 vetores d e d’, a similaridade é calculada pelo coseno, ou seja:
'
'
dd
dd
![Page 28: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/28.jpg)
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.
![Page 29: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/29.jpg)
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
![Page 30: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/30.jpg)
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 )½
![Page 31: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/31.jpg)
Modelo Vetorial
Exemplos
![Page 32: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/32.jpg)
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"
![Page 33: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/33.jpg)
![Page 34: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/34.jpg)
Análise da similaridade
![Page 35: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/35.jpg)
Análise da similaridade
![Page 36: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/36.jpg)
Análise da similaridade
![Page 37: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/37.jpg)
Análise da similaridade
Resultado obtido:– Rank 1: Doc 2 = 0.8246– Rank 2: Doc 3 = 0.3271– Rank 3: Doc 1 = 0.0801
![Page 38: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/38.jpg)
Modelo Vetorial
Vantagens e Desvantagens
![Page 39: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/39.jpg)
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
![Page 40: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/40.jpg)
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;
![Page 41: Modelo Espaço Vetorial - Informáticamberger/Disciplinas/2011_2/EDII/Slides/... · Atribuição de Peso Os pesos são usados para computar a ... lista ordenada (ranking) de todos](https://reader033.vdocuments.pub/reader033/viewer/2022052517/5c4e58e293f3c350ba7ee5b5/html5/thumbnails/41.jpg)
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