recuperação de informação: atribuindo valores, avaliando...

26
Porquerecupera¸c˜ ao ordenada? Frequˆ encia de termos Peso tf-idf Recupera¸c˜ ao de Informa¸ ao: Atribuindo valores, avaliando termos e o modelo de espa¸co vetorial Marcelo Keese Albertini Faculdade de Computa¸ ao - UFU Atribuindo valores, avaliando termos e o modelo de espa¸co vetorial 1 / 29

Upload: others

Post on 26-Oct-2019

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Recuperacao de Informacao: Atribuindo valores,

avaliando termos e o modelo de espaco vetorial

Marcelo Keese Albertini

Faculdade de Computacao - UFU

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 1 / 29

Page 2: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Indice

1 Porque recuperacao ordenada?

2 Frequencia de termos

3 Peso tf-idf

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 2 / 29

Page 3: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Veremos hoje

Ordenando resultados de busca: importancia (ao inves deapresentar um set desordenado de resultados)

Frequencia de termos: base da ordenacao de resultados(ranking)

Tf-idf ranking: esquema tradicional de ordenacao

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 3 / 29

Page 4: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Recuperacao ordenada

Ate agora, consultas foram booleanas.

Documentos sao adequados ou nao para uma consulta

Bom para usuarios especialistas com conhecimento avancadosobre a colecao

Bom para programas: programas podem processar milhares deresultados

Nao tao bom para usuarios comuns

Consultas booleanas sao de difıcil escrita (ou muito trabalho)

usuarios nao olham centenas de resultados

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 5 / 29

Page 5: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Problemas com busca booleana: tudo ou nada

http://www.acervobiblioteca.ufu.br:8000/cgi-bin/gw/chameleon

Muito pouco ou resultados demais

Exemplo consulta 1 (conjuncao booleana): [recuperacao ANDinformacao]

→ centenas de resultados – demais

Exemplo 2 (conjuncao booleana): [recuperacao ANDinformacao AND aplicacao]

→ 2 resultados – quase nada

difıcil encontrar boa consulta para obter entre tudo ou nada

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 6 / 29

Page 6: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Tudo ou nada: nao e problema com recuperacao ordenada

Com ordenacao, numero de resultados e problema

Mostra 10 mais relevantes

Nao sobrecarrega usuario

Premissa: Algoritmo de ranking funciona

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 7 / 29

Page 7: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Avaliacao como base de recuperacao ordenada

Pontuar mais os documentos mais relevantes a consulta

Atribuir pontuacao em [0, 1] para cada parconsulta-documento

Medida que o quao bem um documento e uma consultacombinam

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 8 / 29

Page 8: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Pontuando consultas-documentos

Como nos pontuamos um par consulta-documento?

Comecamos com um consulta de um so termo

Se termo nao ocorre no documento, pontuacao 0

Quanto mais frequente o termo no documento, maiorpontuacao

Veremos alternativas

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 9 / 29

Page 9: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Alternativa 1: coeficiente de Jaccard

Mede sobreposicao de 2 conjuntos: A e B

Coeficiente de Jaccard:

jaccard(A,B) =|A ∩ B |

|A ∪ B |

(A 6= ∅ ou B 6= ∅)

jaccard(A,A) = 1

jaccard(A,B) = 0 se A ∩ B = 0

A e B nao tem que ser do mesmo tamanho

Sempre obtem numero entre 0 e 1

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 10 / 29

Page 10: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Exemplo: coeficiente de Jaccard

Qual e a pontuacao pelo coeficiente de Jaccard para:

Consulta: “aguas de marco”Documento “Pedro Alvares Cabral chegou nas aguas brasileirasem marco”jaccard(q, d) = 2/10

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 11 / 29

Page 11: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Onde Jaccard falha?

Nao considera frequencia dos termos

Termos raros sao mais informativo que os frequentes

Jaccard nao usa essa informacao

Precisamos de modos mais sofisticas de normalizar pelotamanho do documento

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 12 / 29

Page 12: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Matriz de incidencia binaria

Marco Julio A Hamlet Otelo Macbeth . . .Antonio Cesar Tempestade

Antonio 1 1 0 0 0 1Brutus 1 1 0 1 0 0Cesar 1 1 0 1 1 1Calpurnia 0 1 0 0 0 0Cleopatra 1 0 0 0 0 0. . .

Cada documento e representado como um vetor binario ∈ {0, 1}|V |.

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 14 / 29

Page 13: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Matriz de contagem

Marco Julio A Hamlet Otelo Macbeth . . .Antonio Cesar Tempestade

Antonio 157 73 0 0 0 1Brutus 4 157 0 2 0 0Cesar 232 227 0 2 1 0Calpurnia 0 10 0 0 0 0Cleopatra 57 0 0 0 0 0. . .

Cada documento e representado como vetor de contagem ∈ N|V |.

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 15 / 29

Page 14: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Modelo Bag of words / colecao de palavras

Desconsidera ordem dos termos em um documento.

Joao e mais rapido que Jose tem mesma representacao queJose e mais rapido que Joao

Isso e chamado de modelo bag of words.

Seguiremos com mais detalhes do modelo bag of words.

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 16 / 29

Page 15: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Frequencia de termo tf

A frequencia de termo tft,d do termo t no documento d edefinido como numero de vezes que t ocorre em d .

Queremos usar tf para pontuar combinacaoconsulta-documento.

Como?

Somente frequencia nao e bom porque:

Um documento com tf = 10 ocorrencias de um termo e maisrelevante que um documento com apenas uma ocorrenciatf = 1.

Mas nao 10 vezes mais relevante

Relevancia nao aumenta proporcionalmente com a frequenciado termo.

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 17 / 29

Page 16: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Em vez de frequencia: log da frequencia

O log da frequencia do termo t em d e definido:

wt,d =

{

1 + log10 tft,d if tft,d > 00 caso contrario

tft,d → wt,d :0 → 0, 1 → 1, 2 → 1.3, 10 → 2, 1000 → 4 etc.

Pontuacao para um par consulta documento: soma emrelacao a termos t em q e d :pontuacao-tf(q, d) =

t∈q∩d(1 + log tft,d)

A pontuacao e 0 se nenhum dos termos esta presente nodocumento.

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 18 / 29

Page 17: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Exercıcio

Calcular a pontuacao de Jaccard e pontuacao de tf para ospares consulta-documento:

q: [informacao sobre carros] d: “tudo o que voce sempre quissaber sobre carros”

q: [informacao sobre carros] d: “informacao sobre caminhoes,informacao sobre avioes, informacao sobre trens”

q: [carros verdes e caminhoes verdes] d: “a polıcia paracarros verdes mais frequentemente”

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 19 / 29

Page 18: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Frequencia no documento vs. frequencia na colecao

frequencia de termo no documento

frequencia na colecao

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 21 / 29

Page 19: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Peso desejado para termos raros

Termos raros sao mais informativos

Considere um termo em uma consulta que e raro na colecao,e.g. estoicismo

Um documento com esse termo e muito provavelmenterelevante

→ Nos queremos pesos altos para termos raros

→ Nos queremos pesos baixos para termos frequentes

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 22 / 29

Page 20: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Peso idf

dft e a frequencia no documento, o numero de documentosem que t aparece

dft e uma medida inversa da informacao do termo t

Define-se peso idf do termo t como segue:

idft = log10N

dft

(N e o numero de documentos na colecao.)

idft e a medida de de informacao do termo

[logN/dft ] em vez de [N/dft ] para amenizar o efeito de idf

note que usa-se log para ambos termos de frequencia determos e de documentos

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 23 / 29

Page 21: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Examplos de idf

Calcular idft usando a formula: idft = log101,000,000

dft

termo dft idftcalpurnia 1 6animal 100 4domingo 1000 3voar 10,000 2sobre 100,000 1o 1,000,000 0

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 24 / 29

Page 22: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Efeito de idf no ranking

idf influencia quando ha pelo menos 2 termos

Por exemplo, na consulta “estoicismo antigo”, peso idfaumenta o peso relativo de estoicismo e reduz peso relativode antigo.

idf tem pouco efeito em consultas com um termo.

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 25 / 29

Page 23: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Frequencia na colecao vs. frequencia no documento

termo frequencia na colecao frequencia no documento

seguro 10440 3997tentar 10422 8760

Frequencia na colecao de t: numero de t na colecao

Frequencia no documento de t: numero de documentos emque t ocorre

Qual termo e melhor como termo de busca (e deve ter pesomaior?)

Este exemplo sugere que df (e idf) e melhor como peso que cf(e “icf”)

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 26 / 29

Page 24: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Peso tf-idf

O peso tf-idf de um termo e o produto de peso tf e seu pesoidf.

wt,d = (1 + log tft,d) · logN

dft

peso tf

peso idf

Esquema bastante conhecido em RI.

Outros nomes: tf.idf, tf x idf

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 27 / 29

Page 25: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Resumo: tf-idf

Atribuir peso tf-idf para cada termo t em cada documento d :wt,d = (1 + log tft,d) · log

N

dftO peso tf-idf . . .

. . . aumenta com o numero de ocorrencia em um documento.(frequencia do termo). . . aumenta com a raridade do termo na colecao. (frequenciaem document inversa)

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 28 / 29

Page 26: Recuperação de Informação: Atribuindo valores, avaliando ...albertini/1sem2013/ori/slides/06score-site.pdfAvalia¸c˜ao como base de recupera¸c˜ao ordenada Pontuar mais os documentos

Porque recuperacao ordenada? Frequencia de termos Peso tf-idf

Exercıcio: frequencia de termo, colecao and documento

Quantidade Sımbolo Definicao

frequencia de termo tft,d numero de ocorrencia de t emd

frequencia de documentos dft numero de documentos nacolecao em que t ocorre

frequencia de colecao cft numero total de ocorrencias det na colecao occurrences of t inthe collection

Relacao entre df e cf?

Relacao entre tf e cf?

Relacao entre tf e df?

Atribuindo valores, avaliando termos e o modelo de espaco vetorial 29 / 29