Modelo do Espaço Vetorial
Geraldo Xexéo, D.Sc.
Motivação
Introdução
Geraldo Xexéo - xexeo@cos.ufrj.br
2
47
Motivação p/ Modelo Vetorial
• Modelo booleano
• Pesos binários são limitadores
• Termos não binários ajudam casamentos parciais
• Necessidade de ordenar os documentos encontrados
• Necessidade de calcular um grau de similaridade entre a consulta e o documento
Geraldo Xexéo - xexeo@cos.ufrj.br
3
47
Modelo do Espaço Vetorial
• Considera um espaço de documentos
• Cada documento é identificado por um ou mais termos Tj
• Termos podem ter um peso, de acordo com sua importância
• Representa documentos como vetores
• As dimensões são os termos (índices)
• Consultas são documentos
• Di = (wi1,wi2,…,wit)
• wij representa o peso do j-ésimo termo no documento i
• Similaridade  inverso da distância
Geraldo Xexéo - xexeo@cos.ufrj.br
4
ATP
47
Geometricamente?
Geraldo Xexéo - xexeo@cos.ufrj.br
5
Doc B
Doc A
Doc C
Significado
2
Significado 1
Doc D
Query a
Query b
47
Definições (Vetorial)
• wij > 0 sempre que ki  dj
• wiq >= 0 associado ao par (ki,q)
• dj = (w1j, w2j, ..., wtj)
• q = (w1q, w2q, ..., wtq)
• Para cada termo 𝑘𝑖é associado um vetor unitário 𝑖 = [0,0, … , 1, … , 0]
• Ԧ
𝑖 e Ԧ
𝑗, vetores unitários, são considerados ortonormais
• Isso significa que consideramos que os termos ocorrem nos documentos de forma
independente.
• Isso é uma decisão importante
Geraldo Xexéo - xexeo@cos.ufrj.br
6
ATP
47
Modelo do Espaço Vetorial
• Podemos descrever documentos e consultas por sua relação com o conjunto de
termos, cada termo t associado a um vetor de termos Ti
• Um espaço vetorial é definido quando os vetores T são linearmente independentes
Geraldo Xexéo - xexeo@cos.ufrj.br
7

=
=
t
i
i
ri
r T
a
D
1
ATP
47
Matrix termo x documento
Representação Vetorial
Geraldo Xexéo - xexeo@cos.ufrj.br
9
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1
47
Definição Formal
1. Ambos documento 𝐷 = 𝑡0, 𝑤𝑑0 ; 𝑡1, 𝑤𝑑1; … ; 𝑡𝑡, 𝑤𝑑𝑡 e consulta 𝑄 = 𝑞0, 𝑤𝑞0 ; 𝑞1, 𝑤𝑞1; … ; 𝑞𝑡, 𝑤𝑞𝑡 são elementos do
espaço euclidiano 𝐸𝑛, 𝑛 = 𝑡 + 1.
2. Cada termo 𝑡𝑖 corresponde a um vetor base 𝑒𝑖 do espaço 𝐸𝑛.
3. O grau de relevância 𝑟 de um documento 𝐷 representado por um vetor 𝑤 relativo a consulta Q representada pelo vetor Ԧ
𝑞 é
baseado no produto escalar < 𝑤, Ԧ
𝑞 >.
4. Se < 𝑤, Ԧ
𝑞 >= 0, então o documento não é relevante e não é recuperado.
5. Se < 𝑤, Ԧ
𝑞 > ≠ 0, então o documento é considerado relevante e é recuperado.
6. Seja < 𝑤𝑖, Ԧ
𝑞 > ≠ 0, 𝑖 = 1, … , 𝑚 correspondente aos documentos 𝐷𝑖. Então os documentos 𝐷1, … , 𝐷𝑚 são usados para
construir a lista de acertos: 𝐷1, … , 𝐷𝑚 são ordenados descendentemente em ordem do grau de relevância e são
apresentados ao usuário nessa ordem.
Geraldo Xexéo - xexeo@cos.ufrj.br
10
47
Resultado: Bag of Words
• A representação de vetores não considera a ordem de palavras no documento
• Maria é maior que João
• João é maior que Maria
• Tem o mesmo vetor
Geraldo Xexéo - xexeo@cos.ufrj.br
11
47
O que o MV não define
• Quais são os termos
• Como são calculados os pesos
• Como são calculadas as distâncias
• É um framework
Geraldo Xexéo - xexeo@cos.ufrj.br
12
47
Um modelo simples
• Dimensões: palavra
• Peso: 1 se aparece, 0 se não aparece
• Similaridade: produto escalar
• 𝑠𝑖𝑚 𝑞, 𝑑 = 𝑞 ⋅ 𝑑 = σ𝑖=1
𝑁
(𝑞𝑖 × 𝑑𝑖)
Geraldo Xexéo - xexeo@cos.ufrj.br
13
Medindo a Distância
Geraldo Xexéo - xexeo@cos.ufrj.br
14
47
Distância no Modelo Vetorial
• O Modelo Vetorial não exige uma distância específica
• Podemos colocar a distância que quisermos
• Porém...
Geraldo Xexéo - xexeo@cos.ufrj.br
15
47
Distância entre vetores (má idéia)
• A distância da consulta (q) para d2 é
maior que para d1 ou d3, mesmo que as
distribuições dos termos de d1 seja
mais similar a d3 do que a d1 ou d3
Geraldo Xexéo - xexeo@cos.ufrj.br
16
47
Similaridade como Coseno
• Qual a similaridade entre dois vetores?
• Quanto mais o ângulo é próximo de zero
• Coseno do ângulo entre os vetores
• Quanto mais junto, mais perto de 1
• O tamanho do vetor não influencia
• Só exige a mesma proporção entre os valores das
dimensões dos vetores
• Evita problemas de tamanho
Geraldo Xexéo - xexeo@cos.ufrj.br
17
ATP
http://www.miislita.com/information-retrieval-tutorial/cosine-similarity-tutorial.html
47
Cos(θ)!
• O Coseno do ângulo é uma medida de similaridade normalizada
• Não interessa o tamanho dos vetores
• Documentos maiores têm pesos maiores para seus termos
Geraldo Xexéo - xexeo@cos.ufrj.br
18
2
2
)
cos(
B
A
B
A•
=

No booleano:
Y
X
Y
X


47
Coseno da Diferença
Geraldo Xexéo - xexeo@cos.ufrj.br
19
)
(
)
(
)
cos(
)
cos(
)
cos(
)
cos(







sen
sen
+
=
=
−
=
2
1
2
1
1
2
1
2
1
1
)
(
)
cos(
y
x
y
sen
y
x
x
+
=
+
=


2
1
2
1
2
1
2
1
2
1
2
1
2
2
2
2
2
2
1
2
1
1
2
2
2
2
2
2
1
2
1
1
)
cos(
y
x
y
x
y
y
x
x
y
x
y
y
x
y
y
x
x
y
x
x
+

+
+
=
=
+

+
+
+

+
=
=

β
α
θ
A=(x1,y1)
B=(x2,y2)
y1
y2
x1
x2
2
2
2
2
y
x
+
2
1
2
1
y
x
+
2
2
2
2
2
2
2
2
2
2
)
(
)
cos(
y
x
y
sen
y
x
x
+
=
+
=


Você quer a prova ? http://www.themathpage.com/aTrig/sum-proof.htm
)
(
)
(
)
cos(
)
cos(
)
cos( 




 sen
sen
+
=
−
47
Coseno (sim)
Geraldo Xexéo - xexeo@cos.ufrj.br
20
 

= =
=

t
i
t
i
i
i
t
i
i
i
y
x
y
x
1 1
2
2
1
Y
X
Y
X


No booleano:
ATP
d
d
q
q
d
q
d
q
d
q 









•
=
•
=
)
,
cos(
47
Similaridade Doc x Consulta
• A similaridade entre documento e consulta pode ser calculada:
Geraldo Xexéo - xexeo@cos.ufrj.br
21
j
t
j
i
i
sj
ri
s
r T
T
q
a
Q
D •
=
• 
=1
,
?
ATP
47
Conhecendo Ti • Tj
• Porém isso exigiria que os vetores de documentos fossem ortogonais (não
similares), o que não é possível de se considerar razoável em qualquer coleção de
documentos
Geraldo Xexéo - xexeo@cos.ufrj.br
22
ATP
47
Correlação entre os Vetores T
• Geralmente isto é feito considerando que os termos não são relacionados, do modo
que
• Ti • Tj = 0, ij
• Ti • Tj = 1, i=j
• Isto simplifica tremendamente a operação
Geraldo Xexéo - xexeo@cos.ufrj.br
23

=
=
t
i
si
ri
s
r q
a
Q
D
sim
1
)
,
(
ATP
47
Exemplo Inicial
• Vamos imaginar uma revista Computação
• Os artigos dessa revistas são cadastrados com apenas 3 palavras:
• Hardware
• Software
• Documentação
• Alguns artigos:
• O artigo 1 é apenas sobre Hardware
• O artigo 2 é apenas sobre Software
• O artigo 3 é 70% sobre Software e 30% sobre Documentação
• Todas as divisões do espaço de artigo entre as três palavras chave são possíveis
Geraldo Xexéo - xexeo@cos.ufrj.br
24
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Tranformando em Vetores
• Usamos vetores e matrizes para descrever como um mecanismo baseado no
modelo vetorial processa uma consulta.
• Para cada documento usamos um vetor coluna
• Cada linha corresponde a uma palavra chave.
• Cada célula corresponde a percentagem daquele artigo devotada a palavra chave na linha.
• Então temos
• Para o Artigo 1
• Para o Artigo 3
Geraldo Xexéo - xexeo@cos.ufrj.br
25










%
30
%
70
0










3
,
0
7
,
0
0
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1










0
0
1
47
Todos os documentos
7
6
5
4
3
2
1 d
d
d
d
d
d
d
Geraldo Xexéo - xexeo@cos.ufrj.br
26
• Vamos supor 7 documentos e só estas três palavras
chaves










=
0
0
0
4
,
0
3
,
0
0
0
1
,
0
5
,
0
35
,
0
4
,
0
7
,
0
1
0
9
,
0
5
,
0
65
,
0
2
,
0
0
0
1
ão
documentaç
software
hardware
A
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Vetores no Espaço
Geraldo Xexéo - xexeo@cos.ufrj.br
27
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Agora uma Consulta
• Queremos artigos sobre “Documentação”
• Qual o vetor?
Geraldo Xexéo - xexeo@cos.ufrj.br
28










1
0
0
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
A consulta como vetor
Geraldo Xexéo - xexeo@cos.ufrj.br
29
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Executando uma medida
Geraldo Xexéo - xexeo@cos.ufrj.br
30
2
2
)
cos(
y
x
y
x•
=

( )
39
,
0
762
,
0
3
,
0
58
,
0
3
,
0
09
,
0
49
,
0
3
,
0
1
3
,
0
7
,
0
3
,
0
1
0
0
3
,
0
7
,
0
0
1
0
0
3
,
0
7
,
0
0
)
cos(
2
2
2
2
2
2
2
3
3
2
2
3
3
=
=
=
=
+
=
=

+
=
=
































=

=
•
=
q
d
q
d
q
d
q
d
T

Para d3
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
MRI
47
Para todos os artigos
Geraldo Xexéo - xexeo@cos.ufrj.br
31
Documento Cos(θ)
d1 0
d2 0
d3 0,39
d4 0,67
d5 0
d6 0
d7 0
Ranking Cos(θ)
d4 0,67
d3 0,39
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
E para outra consulta?
Geraldo Xexéo - xexeo@cos.ufrj.br
32










0
5
,
0
5
,
0
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Resultados da Consulta 2
Geraldo Xexéo - xexeo@cos.ufrj.br
33
Documento Cos(θ) Ranking
d1 0,707 4
d2 0,707 4
d3 0,650 7
d4 0,707 4
d5 0,958 2
d6 1,0 1
d7 0,781 3
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Valores de Corte
• Não estamos interessados em similaridades pequenas
• Por exemplo, ângulos maiores que 45º
• Uma solução simples diz que esse valor é 0,7071
Geraldo Xexéo - xexeo@cos.ufrj.br
34
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
47
Resultados Visuais
Geraldo Xexéo - xexeo@cos.ufrj.br
35
Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
Similaridade Entre Documentos
Geraldo Xexéo - xexeo@cos.ufrj.br
36
47
Similaridade entre Docs
• Podemos usar a mesma fórmula anterior para fazer classificação de documentos
Geraldo Xexéo - xexeo@cos.ufrj.br
37

=
=
t
i
si
ri
s
r a
a
D
D
sim
1
)
,
(
ATP
47
Conhecendo Ti • Tj
• Quando conhecemos as similaridades entre termos podemos aplicar a fórmula
original
• Note que poderíamos pensar em calcular a similaridade entre termos a partir da
matriz documentos x termos, tendo algo como
Geraldo Xexéo - xexeo@cos.ufrj.br
38
j
t
j
i
i
sj
ri
s
r D
D
b
b
T
T •
=
• 
=1
,
ATP
Algoritmo de Cálculo do
Resultado
47
Algoritmo Cálculo dos Scores
Geraldo Xexéo - xexeo@cos.ufrj.br
40
47
Mais rápido
Geraldo Xexéo - xexeo@cos.ufrj.br
41
47
O Modelo Vetorial É Bom
• O modelo vetorial com pesos tf-idf é uma boa estratégia de ranking para coleções
gerais
• O modelo vetorial é normalmente tão bom quanto as alternativas.
• Simples e fácil de calcular
Geraldo Xexéo - xexeo@cos.ufrj.br
42
47
Análise
• Vantagem
• Dar pesos aos termos melhora o resultado
• É possível o casamento parcial
• Existe um ranking
• Desvantagem
• Assume independência dos termos
• Existem tratamentos para isso
Geraldo Xexéo - xexeo@cos.ufrj.br
43
MRI
47
Como melhorar
• Escolher termos
• Leva inclusive a outros modelos
• Escolher pesos
• Escolher distância
• Mais avançado
• Relevance Feedback
• Expansão da consulta
• Query expansion
Geraldo Xexéo - xexeo@cos.ufrj.br
44
FIM
47
Bibliografia
• Ricardo Baeza-Yates and Berthier Ribeiro-Neto. 1999. Modern Information
Retrieval (1 ed.). ACM Press, USA.
• Ricardo Baeza-Yates and Berthier Ribeiro-Neto. 2011. Modern Information Retrieval:
The Concepts and Technology behind Search (2 ed.). Addison-Wesley Publishing
Company, USA.
• Christopher D. Manning, Prabhakar Raghavan, and Hinrich Schüze. 2008. Introduction
to Information Retrieval. Cambridge University Press, USA.
• ChengXiang Zhai and Sean Massung. 2016. Text Data Management and
Analysis: A Practical Introduction to Information Retrieval and Text Mining.
Association for Computing Machinery and Morgan & Claypool.
Geraldo Xexéo - xexeo@cos.ufrj.br
46
Geraldo Xexéo
xexeo@ufrj.br
http://xexeo.net
http://line.cos.ufrj.br
Este obra está licenciado com uma Licença Creative Commons
Atribuição-NãoComercial-SemDerivações 4.0 Internacional.

BMT20231 300 200 Modelo Vetorial.pdf

  • 1.
    Modelo do EspaçoVetorial Geraldo Xexéo, D.Sc.
  • 2.
  • 3.
    47 Motivação p/ ModeloVetorial • Modelo booleano • Pesos binários são limitadores • Termos não binários ajudam casamentos parciais • Necessidade de ordenar os documentos encontrados • Necessidade de calcular um grau de similaridade entre a consulta e o documento Geraldo Xexéo - xexeo@cos.ufrj.br 3
  • 4.
    47 Modelo do EspaçoVetorial • Considera um espaço de documentos • Cada documento é identificado por um ou mais termos Tj • Termos podem ter um peso, de acordo com sua importância • Representa documentos como vetores • As dimensões são os termos (índices) • Consultas são documentos • Di = (wi1,wi2,…,wit) • wij representa o peso do j-ésimo termo no documento i • Similaridade  inverso da distância Geraldo Xexéo - xexeo@cos.ufrj.br 4 ATP
  • 5.
    47 Geometricamente? Geraldo Xexéo -xexeo@cos.ufrj.br 5 Doc B Doc A Doc C Significado 2 Significado 1 Doc D Query a Query b
  • 6.
    47 Definições (Vetorial) • wij> 0 sempre que ki  dj • wiq >= 0 associado ao par (ki,q) • dj = (w1j, w2j, ..., wtj) • q = (w1q, w2q, ..., wtq) • Para cada termo 𝑘𝑖é associado um vetor unitário 𝑖 = [0,0, … , 1, … , 0] • Ԧ 𝑖 e Ԧ 𝑗, vetores unitários, são considerados ortonormais • Isso significa que consideramos que os termos ocorrem nos documentos de forma independente. • Isso é uma decisão importante Geraldo Xexéo - xexeo@cos.ufrj.br 6 ATP
  • 7.
    47 Modelo do EspaçoVetorial • Podemos descrever documentos e consultas por sua relação com o conjunto de termos, cada termo t associado a um vetor de termos Ti • Um espaço vetorial é definido quando os vetores T são linearmente independentes Geraldo Xexéo - xexeo@cos.ufrj.br 7  = = t i i ri r T a D 1 ATP
  • 8.
    47 Matrix termo xdocumento Representação Vetorial Geraldo Xexéo - xexeo@cos.ufrj.br 9 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
  • 9.
    47 Definição Formal 1. Ambosdocumento 𝐷 = 𝑡0, 𝑤𝑑0 ; 𝑡1, 𝑤𝑑1; … ; 𝑡𝑡, 𝑤𝑑𝑡 e consulta 𝑄 = 𝑞0, 𝑤𝑞0 ; 𝑞1, 𝑤𝑞1; … ; 𝑞𝑡, 𝑤𝑞𝑡 são elementos do espaço euclidiano 𝐸𝑛, 𝑛 = 𝑡 + 1. 2. Cada termo 𝑡𝑖 corresponde a um vetor base 𝑒𝑖 do espaço 𝐸𝑛. 3. O grau de relevância 𝑟 de um documento 𝐷 representado por um vetor 𝑤 relativo a consulta Q representada pelo vetor Ԧ 𝑞 é baseado no produto escalar < 𝑤, Ԧ 𝑞 >. 4. Se < 𝑤, Ԧ 𝑞 >= 0, então o documento não é relevante e não é recuperado. 5. Se < 𝑤, Ԧ 𝑞 > ≠ 0, então o documento é considerado relevante e é recuperado. 6. Seja < 𝑤𝑖, Ԧ 𝑞 > ≠ 0, 𝑖 = 1, … , 𝑚 correspondente aos documentos 𝐷𝑖. Então os documentos 𝐷1, … , 𝐷𝑚 são usados para construir a lista de acertos: 𝐷1, … , 𝐷𝑚 são ordenados descendentemente em ordem do grau de relevância e são apresentados ao usuário nessa ordem. Geraldo Xexéo - xexeo@cos.ufrj.br 10
  • 10.
    47 Resultado: Bag ofWords • A representação de vetores não considera a ordem de palavras no documento • Maria é maior que João • João é maior que Maria • Tem o mesmo vetor Geraldo Xexéo - xexeo@cos.ufrj.br 11
  • 11.
    47 O que oMV não define • Quais são os termos • Como são calculados os pesos • Como são calculadas as distâncias • É um framework Geraldo Xexéo - xexeo@cos.ufrj.br 12
  • 12.
    47 Um modelo simples •Dimensões: palavra • Peso: 1 se aparece, 0 se não aparece • Similaridade: produto escalar • 𝑠𝑖𝑚 𝑞, 𝑑 = 𝑞 ⋅ 𝑑 = σ𝑖=1 𝑁 (𝑞𝑖 × 𝑑𝑖) Geraldo Xexéo - xexeo@cos.ufrj.br 13
  • 13.
    Medindo a Distância GeraldoXexéo - xexeo@cos.ufrj.br 14
  • 14.
    47 Distância no ModeloVetorial • O Modelo Vetorial não exige uma distância específica • Podemos colocar a distância que quisermos • Porém... Geraldo Xexéo - xexeo@cos.ufrj.br 15
  • 15.
    47 Distância entre vetores(má idéia) • A distância da consulta (q) para d2 é maior que para d1 ou d3, mesmo que as distribuições dos termos de d1 seja mais similar a d3 do que a d1 ou d3 Geraldo Xexéo - xexeo@cos.ufrj.br 16
  • 16.
    47 Similaridade como Coseno •Qual a similaridade entre dois vetores? • Quanto mais o ângulo é próximo de zero • Coseno do ângulo entre os vetores • Quanto mais junto, mais perto de 1 • O tamanho do vetor não influencia • Só exige a mesma proporção entre os valores das dimensões dos vetores • Evita problemas de tamanho Geraldo Xexéo - xexeo@cos.ufrj.br 17 ATP http://www.miislita.com/information-retrieval-tutorial/cosine-similarity-tutorial.html
  • 17.
    47 Cos(θ)! • O Cosenodo ângulo é uma medida de similaridade normalizada • Não interessa o tamanho dos vetores • Documentos maiores têm pesos maiores para seus termos Geraldo Xexéo - xexeo@cos.ufrj.br 18 2 2 ) cos( B A B A• =  No booleano: Y X Y X  
  • 18.
    47 Coseno da Diferença GeraldoXexéo - xexeo@cos.ufrj.br 19 ) ( ) ( ) cos( ) cos( ) cos( ) cos(        sen sen + = = − = 2 1 2 1 1 2 1 2 1 1 ) ( ) cos( y x y sen y x x + = + =   2 1 2 1 2 1 2 1 2 1 2 1 2 2 2 2 2 2 1 2 1 1 2 2 2 2 2 2 1 2 1 1 ) cos( y x y x y y x x y x y y x y y x x y x x +  + + = = +  + + +  + = =  β α θ A=(x1,y1) B=(x2,y2) y1 y2 x1 x2 2 2 2 2 y x + 2 1 2 1 y x + 2 2 2 2 2 2 2 2 2 2 ) ( ) cos( y x y sen y x x + = + =   Você quer a prova ? http://www.themathpage.com/aTrig/sum-proof.htm ) ( ) ( ) cos( ) cos( ) cos(       sen sen + = −
  • 19.
    47 Coseno (sim) Geraldo Xexéo- xexeo@cos.ufrj.br 20    = = =  t i t i i i t i i i y x y x 1 1 2 2 1 Y X Y X   No booleano: ATP d d q q d q d q d q           • = • = ) , cos(
  • 20.
    47 Similaridade Doc xConsulta • A similaridade entre documento e consulta pode ser calculada: Geraldo Xexéo - xexeo@cos.ufrj.br 21 j t j i i sj ri s r T T q a Q D • = •  =1 , ? ATP
  • 21.
    47 Conhecendo Ti •Tj • Porém isso exigiria que os vetores de documentos fossem ortogonais (não similares), o que não é possível de se considerar razoável em qualquer coleção de documentos Geraldo Xexéo - xexeo@cos.ufrj.br 22 ATP
  • 22.
    47 Correlação entre osVetores T • Geralmente isto é feito considerando que os termos não são relacionados, do modo que • Ti • Tj = 0, ij • Ti • Tj = 1, i=j • Isto simplifica tremendamente a operação Geraldo Xexéo - xexeo@cos.ufrj.br 23  = = t i si ri s r q a Q D sim 1 ) , ( ATP
  • 23.
    47 Exemplo Inicial • Vamosimaginar uma revista Computação • Os artigos dessa revistas são cadastrados com apenas 3 palavras: • Hardware • Software • Documentação • Alguns artigos: • O artigo 1 é apenas sobre Hardware • O artigo 2 é apenas sobre Software • O artigo 3 é 70% sobre Software e 30% sobre Documentação • Todas as divisões do espaço de artigo entre as três palavras chave são possíveis Geraldo Xexéo - xexeo@cos.ufrj.br 24 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 24.
    47 Tranformando em Vetores •Usamos vetores e matrizes para descrever como um mecanismo baseado no modelo vetorial processa uma consulta. • Para cada documento usamos um vetor coluna • Cada linha corresponde a uma palavra chave. • Cada célula corresponde a percentagem daquele artigo devotada a palavra chave na linha. • Então temos • Para o Artigo 1 • Para o Artigo 3 Geraldo Xexéo - xexeo@cos.ufrj.br 25           % 30 % 70 0           3 , 0 7 , 0 0 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1           0 0 1
  • 25.
    47 Todos os documentos 7 6 5 4 3 2 1d d d d d d d Geraldo Xexéo - xexeo@cos.ufrj.br 26 • Vamos supor 7 documentos e só estas três palavras chaves           = 0 0 0 4 , 0 3 , 0 0 0 1 , 0 5 , 0 35 , 0 4 , 0 7 , 0 1 0 9 , 0 5 , 0 65 , 0 2 , 0 0 0 1 ão documentaç software hardware A Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 26.
    47 Vetores no Espaço GeraldoXexéo - xexeo@cos.ufrj.br 27 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 27.
    47 Agora uma Consulta •Queremos artigos sobre “Documentação” • Qual o vetor? Geraldo Xexéo - xexeo@cos.ufrj.br 28           1 0 0 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 28.
    47 A consulta comovetor Geraldo Xexéo - xexeo@cos.ufrj.br 29 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 29.
    47 Executando uma medida GeraldoXexéo - xexeo@cos.ufrj.br 30 2 2 ) cos( y x y x• =  ( ) 39 , 0 762 , 0 3 , 0 58 , 0 3 , 0 09 , 0 49 , 0 3 , 0 1 3 , 0 7 , 0 3 , 0 1 0 0 3 , 0 7 , 0 0 1 0 0 3 , 0 7 , 0 0 ) cos( 2 2 2 2 2 2 2 3 3 2 2 3 3 = = = = + = =  + = =                                 =  = • = q d q d q d q d T  Para d3 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1 MRI
  • 30.
    47 Para todos osartigos Geraldo Xexéo - xexeo@cos.ufrj.br 31 Documento Cos(θ) d1 0 d2 0 d3 0,39 d4 0,67 d5 0 d6 0 d7 0 Ranking Cos(θ) d4 0,67 d3 0,39 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 31.
    47 E para outraconsulta? Geraldo Xexéo - xexeo@cos.ufrj.br 32           0 5 , 0 5 , 0 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 32.
    47 Resultados da Consulta2 Geraldo Xexéo - xexeo@cos.ufrj.br 33 Documento Cos(θ) Ranking d1 0,707 4 d2 0,707 4 d3 0,650 7 d4 0,707 4 d5 0,958 2 d6 1,0 1 d7 0,781 3 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 33.
    47 Valores de Corte •Não estamos interessados em similaridades pequenas • Por exemplo, ângulos maiores que 45º • Uma solução simples diz que esse valor é 0,7071 Geraldo Xexéo - xexeo@cos.ufrj.br 34 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 34.
    47 Resultados Visuais Geraldo Xexéo- xexeo@cos.ufrj.br 35 Baseado e com figuras de http://mathdl.maa.org/mathDL/4/?pa=content&sa=viewDocument&nodeId=636&pf=1
  • 35.
    Similaridade Entre Documentos GeraldoXexéo - xexeo@cos.ufrj.br 36
  • 36.
    47 Similaridade entre Docs •Podemos usar a mesma fórmula anterior para fazer classificação de documentos Geraldo Xexéo - xexeo@cos.ufrj.br 37  = = t i si ri s r a a D D sim 1 ) , ( ATP
  • 37.
    47 Conhecendo Ti •Tj • Quando conhecemos as similaridades entre termos podemos aplicar a fórmula original • Note que poderíamos pensar em calcular a similaridade entre termos a partir da matriz documentos x termos, tendo algo como Geraldo Xexéo - xexeo@cos.ufrj.br 38 j t j i i sj ri s r D D b b T T • = •  =1 , ATP
  • 38.
  • 39.
    47 Algoritmo Cálculo dosScores Geraldo Xexéo - xexeo@cos.ufrj.br 40
  • 40.
    47 Mais rápido Geraldo Xexéo- xexeo@cos.ufrj.br 41
  • 41.
    47 O Modelo VetorialÉ Bom • O modelo vetorial com pesos tf-idf é uma boa estratégia de ranking para coleções gerais • O modelo vetorial é normalmente tão bom quanto as alternativas. • Simples e fácil de calcular Geraldo Xexéo - xexeo@cos.ufrj.br 42
  • 42.
    47 Análise • Vantagem • Darpesos aos termos melhora o resultado • É possível o casamento parcial • Existe um ranking • Desvantagem • Assume independência dos termos • Existem tratamentos para isso Geraldo Xexéo - xexeo@cos.ufrj.br 43 MRI
  • 43.
    47 Como melhorar • Escolhertermos • Leva inclusive a outros modelos • Escolher pesos • Escolher distância • Mais avançado • Relevance Feedback • Expansão da consulta • Query expansion Geraldo Xexéo - xexeo@cos.ufrj.br 44
  • 44.
  • 45.
    47 Bibliografia • Ricardo Baeza-Yatesand Berthier Ribeiro-Neto. 1999. Modern Information Retrieval (1 ed.). ACM Press, USA. • Ricardo Baeza-Yates and Berthier Ribeiro-Neto. 2011. Modern Information Retrieval: The Concepts and Technology behind Search (2 ed.). Addison-Wesley Publishing Company, USA. • Christopher D. Manning, Prabhakar Raghavan, and Hinrich Schüze. 2008. Introduction to Information Retrieval. Cambridge University Press, USA. • ChengXiang Zhai and Sean Massung. 2016. Text Data Management and Analysis: A Practical Introduction to Information Retrieval and Text Mining. Association for Computing Machinery and Morgan & Claypool. Geraldo Xexéo - xexeo@cos.ufrj.br 46
  • 46.
    Geraldo Xexéo xexeo@ufrj.br http://xexeo.net http://line.cos.ufrj.br Este obraestá licenciado com uma Licença Creative Commons Atribuição-NãoComercial-SemDerivações 4.0 Internacional.