1
Modelo Probabilista
Objetivo
Trata o problema de RI usando um arcabouço
probabilístico Idéia fundamental
Dada uma consulta, existe um conjunto de
documentos que contém exatamente os documentos relevantes para o usuário
O conjunto resposta ideal
Como o conjunto ideal não é conhecido, as
probabilidades são estimadas usando um conjunto inicial de documentos avaliados pelo usuário
Um conjunto inicial de documentos é recuperado
através de uma consulta
O usuário inspeciona esses documentos e determina
aqueles que são relevantes e não-relevantes
O Modelo usa essa informação para tentar
caracterizar o conjunto ideal de forma probabilística: modificando as probabilidades de cada termo de
indexação estar presente nos documentos do
Modelo Probabilista
Modelo Probabilista
Quais termos de indexação distingue os
documentos relevantes dos demais
documentos do corpus?
As características dos documentos não são conhecidas no
momento da primeira busca.
O usuário tenta adivinhar as características dos documentos
no conjunto ideal por meio da formulação de uma expressão de busca, gerando uma primeira descrição probabilística desse conjunto.
É possível gradativamente melhorar os resultados (o
conjunto de documentos recuperados) por meio de interações com o usuário onde o mesmo marca os documentos retornados relevantes, o que reflete no
Modelo Probabilista
Proposto inicialmente por Maron e Kuhns (1960)
Veremos a variação do modelo proposto por Robertson e Jones (1976), denominado Binary Independence Retrieval.
Dado um corpus e uma expressão de busca, o conjunto de documentos pode ser divido em 4 subconjuntos distintos:
Representação do documento
Dado o conjunto de n termos representativos para o corpus em questão (Vocabulário do Sistema)
V = {t1, t2,...,tn}
Os documentos são representados como vetores de pesos binários de tamanho n
Cada posição no vetor corresponde a um termo usado
na indexação dos documentos da base
Cada valor indica se o termo está ou não presente no
Representação do documento
Por exemplo: documento d1 contém os
termos t1 e t3, e não contém o termo t2
t1 t2 t3 d1 1 0 1
d2 1 0 0
d3 0 1 1
d4 1 0 0
d5 1 1 1
d6 1 1 0
Representação da Consulta
A expressão de busca informada pelo usuário
consiste em um conjunto de termos separados por espaço em branco
A Consulta (q) é representada como um conjunto de termos também associados a pesos binários.
A consulta é representada pelo sistema como um vetor
binário de termos de indexação
Exemplo: dada a consulta q: t1 t3
t1 t2 t3
Representação dos documentos e da
Consulta
t1
t2
t3
d1
1
0
1
d2
1
0
0
d3
0
1
1
d4
1
0
0
d5
1
1
1
d6
1
1
0
d7
0
1
0
Função de Busca
Seja Rel o conjunto de documentos relevantes
considerando uma consulta q
R é um subconjunto da base de documentos
Seja ~Rel o complemento de R
ou seja, documentos não-relevantes para a
Função de Busca
Como calcular a similaridade entre consulta e documento?
Seja P(dj|Rel) a probabilidade de que dj seja selecionado
entre os documentos relevantes
Seja P(dj|~Rel) a probabilidade de que dj seja
selecionado entre os documentos não-relevantes
Sim(dj,q) ~
O resultado da consulta é o conjunto de documentos ordenados que maximiza a razão entre a probabilidade do documento estar no conjunto de relevantes e a
probabilidade do documento estar no conjunto de irrelevantes
Probabilidades estimadas para cada termo de indexação a partir dos conjuntos Rel e ~Relmarcados manualmente pelo usuário (corpus etiquetado ou marcado)
P(ti | Rel) = Número de documentos de Rel quecontêm o termo ti dividido pelo número total de
documentos de Rel
P(ti | ~Rel) = Número de documentos de ~Rel quecontêm o termo ti dividido pelo número total de
Função de Busca
Exemplo: Consulta q: Recuperação Informação
• Conjunto Rel (10 documentos)
- t1: Recuperação – 9 docs - t2: Informação – 6 docs
• Conjunto
~
Rel (10 documentos)- t1: Recuperação – 2 docs - t2: Informação – 4 docs
P(t1|Rel) = 0.9
P(t2|Rel) = 0.6
P(t1|
~
Rel) = 0.2P(t2|
~
Rel) = 0.4• Documentos que contêm ambos os termos são provavelmente os mais relevantes
Função de busca
P(ti | Rel) indica a probabilidade do termo ti estar presente entre os documentos relevantes
Valor alto aumenta a probabilidade de relevância de
documentos que contêm o termo ti
P(ti|~Rel) indica a probabilidade do termo ti estar presente nos documentos não-relevantes
Valor alto diminui a probabilidade de relevância de
documentos que contêm o termo ti
Função de Busca
Estimando as probabilidades por meio de
contagens
Dados:
t termos presentes na consulta e no
documento
N documentos na coleção
n documentos contendo o termo ti
R documentos marcados como relevantes
Função de busca
A similaridade entre documento e consulta pode ser expressa por:
Função de busca
Portanto, a similaridade entre documentos e consulta pode então ser calculada para os t termos da consulta utilizando a fórmula
Onde wik é o peso de cada termo, sendo:
Na primeira interação
Nas demais interações
(com feedback de relevância)
t i i iik
q
d
w
d
q
sim
1)
(
)
,
(
n
N
IDF
w
i0 ilog
Exemplo
d1 d2 d3 d4 d5 d6 LondresBrasil Olimpíada Londres Consulta q :
Documento d5 :
Brasil em Londres 2012
O Brasil não foi bem no quadra das medalhas da Olimpíada de Londres 2012 ...
Brasil 1 Olimpíada 1 Londres 1
Brasil 1
Olimpíada 1
Londres 1
Representação de q
Representação de d5
Brasil 0.5
Olimpíada 0.2
Londres 0.1
Peso dos termos
Exemplo 1
Segundo o modelo probabilista, especifique a lista de documentos retornados para a consulta: t1 t2 t3.
t1 t2 t3
d1 1 0 1
d2 1 0 0
d3 0 1 1
d4 1 0 0
d5 1 1 1
d6 1 1 0
d7 0 1 0
Exemplo 1
Consulta: t1 t2 t3, Primeira interação (peso = IDF)
Resposta: d5, d3, d1, d6, [d2, d4]
t1 t2 t3 Sim
d1 1 0 1 0,51
d2 1 0 0 0,15
d3 0 1 1 0,61
d4 1 0 0 0,15
d5 1 1 1 0,76
d6 1 1 0 0,39
d7 0 1 0 0,24
q 1 1 1
n 5 4 3
peso 0,15 0,24 0,37
t1 t2 t3
IDF 0,15 0,24 0,37
Exemplo 1
Consulta: t1 t2 t3 ,
segunda interação com d3 e d5 marcados como RELEVANTES No cálculo de peso para um termo, para evitar divisão por zero e log de número negativo subtraia 0,1 de r se r > 0 e some 1 a N.
t1 t2 t3 Rel
d1 1 0 1 0
d2 1 0 0 0
d3 0 1 1 1
d4 1 0 0 0
d5 1 1 1 1
d6 1 1 0 0
d7 0 1 0 0
q 1 1 1
n 5 4 3 R= 2
r 0,9 1,9 1,9 N= 8
peso -0,42 1,55 1,93
42 . 0 ) 38 , 0 log( 51 . 4 71 . 1 log ) 1 . 1 ( ) 1 . 4 ( 9 . 1 9 . 0 log ) 9 . 0 2 ( ) 9 . 0 5 ( 9 . 0 5 2 8 9 . 0 log ) ( ) ( log
1
Exemplo 1
Consulta: t1 t2 t3 ,
segunda interação com d3 e d5 marcados como RELEVANTES No cálculo de peso para um termo, para evitar divisão por zero e log de número negativo subtraia 0,1 de r se r > 0 e some 1 a N.
Resposta: d3, d5, d7, d1, d6
t1 t2 t3 Rel Sim
d1 1 0 1 0 1,51
d2 1 0 0 0 -0,42
d3 0 1 1 1 3,48
d4 1 0 0 0 -0,42
d5 1 1 1 1 3,05
d6 1 1 0 0 1,13
d7 0 1 0 0 1,55
q 1 1 1
n 5 4 3 R= 2
r 0,9 1,9 1,9 N= 8
peso -0,42 1,55 1,93
Modelo Probabilista
Vantagens
Trabalha com o conceito de probabilidade de relevância de
documentos em relação à expressão de busca
Ordena a lista de documentos: documentos ordenados em
ordem decrescente de probabilidade de relevância
Permite ao usuário selecionar os documentos relevantes e
usa esta marcação para melhorar a ordenação dos
resultados (relevance feedback), através da atribuição de pesos aos termos na busca
Desvantagens
Assume independência entre os termos usados na indexação Assume que a distribuição dos termos de indexação nos
documentos é uniforme => probabilidade de ocorrer é igual
Todos os termos de indexação tem a mesma importância na
Outros Modelos Probabilistas
Okapi BM25
modelo não-binário com suporte a feedback
de relevância.
Criado para pesquisa em texto completo
Leva em conta a frequência de termo e
comprimento dos documentos
A fórmula de ponderação de termo BM25 têm sido
Outros Modelos Probabilistas
Okapi BM25
Detalhes em:
https://nlp.stanford.edu/IR-book/html/htmledition/okapi-bm25-a-non-binary-model-1.html
Jones, Karen Spärck; Walker, S.; Robertson , S. E. A probabilistic model of information retrieval: Development and comparative experiments.
Information Processing and Management 36 (6): 779-808, 809-840, 2000.
Robertson, S. E.; Zaragoza, H. The Probabilistic Relevance Framework: BM25 and Beyond.
suportando Okapi BM25
Lemur
https://www.lemurproject.org/
Lucene
http://lucene.apache.org/
https://opensourceconnections.com/blog/2015/10/16/bm25-the-next-generation-of-lucene-relevation/
MG4J
http://mg4j.di.unimi.it/
Terrier
http://terrier.org/
Zettair
http://www.seg.rmit.edu.au/zettair/
Xapian
https://xapian.org/
Wumpus
http://www.wumpus-search.org/
OKAPI-PACK
1) Para o exemplo 1, utilizando o modelo
probabilista, qual o resultado das buscas na
primeira interação:
a) t2 t3
b) t2
2) Levando em conta que os documentos d5
e d6 são marcados como relevantes pelo
usuário, recalcule a lista de resultados para
cada consulta da questão anterior (segunda
interação).
1) Para o exemplo 1, utilizando o modelo
probabilista, qual o resultado das buscas:
a) t2 t3
Resposta: [d3,d5],d1,[d6,d7]
t1 t2 t3 Sim
d1 1 0 1 0,37
d2 1 0 0 0,00
d3 0 1 1 0,61
d4 1 0 0 0,00
d5 1 1 1 0,61
d6 1 1 0 0,24
d7 0 1 0 0,24
q 0 1 1
n 5 4 3
peso 0,15 0,24 0,37
t1 t2 t3
2) Levando em conta que os documentos d5 e d6 são
marcados como relevantes pelo usuário, recalcule a lista de resultados para cada consulta da questão anterior.
a) t2 t3
Resposta: [d3,d5],[d6,d7],d1
Exercícios
t1 t2 t3 Rel Sim
d1 1 0 1 0 0,18
d2 1 0 0 0 0,00
d3 0 1 1 0 1,73
d4 1 0 0 0 0,00
d5 1 1 1 1 1,73
d6 1 1 0 1 1,55
d7 0 1 0 0 1,55
q 0 1 1
n 5 4 3 R= 2
r 1,9 1,9 0,9 N= 8
1) Para o exemplo 1, utilizando o modelo
probabilista, qual o resultado das buscas:
b) t2
Resposta: [d3,d5,d6,d7]
t1 t2 t3 Sim
d1 1 0 1 0,00
d2 1 0 0 0,00
d3 0 1 1 0,24
d4 1 0 0 0,00
d5 1 1 1 0,24
d6 1 1 0 0,24
d7 0 1 0 0,24
q 0 1 0
n 5 4 3 peso 0,15 0,24 0,37
t1 t2 t3
2) Levando em conta que os documentos d5 e d6 são
marcados como relevantes pelo usuário, recalcule a lista de resultados para cada consulta da questão anterior
b) t2
Resposta: [d3,d5,d6,d7]
Exercícios
t1 t2 t3 Rel Sim
d1 1 0 1 0 0,00
d2 1 0 0 0 0,00
d3 0 1 1 0 1,55
d4 1 0 0 0 0,00
d5 1 1 1 1 1,55
d6 1 1 0 1 1,55
d7 0 1 0 0 1,55
q 0 1 0
n 5 4 3 R= 2