Centro de Informática – Universidade Federal da Paraíba




              Ordenação e Recuperação de Dados
               Aula 9: Avaliação de Sistemas de
               Recuperação de Informação e
               Sumário de Resultados


                Prof. Alexandre Duarte - http://alexandre.ci.ufpb.br
                                                                       1   1
Agenda

❶   Revisão

❷   Avaliação sem classificação

❸   Avaliação com classificação

❺   Sumário de Resultados



                                  2
Agenda

❶   Revisão

❷   Avaliação sem classificação

❸   Avaliação com classificação

❺   Sumário de Resultados



                                  3
4
Usando um heap mínimo para selecionar os
top k documentos entre os N disponíveis

  Usar um heap binário mínimo
  Um heap binário mínimo é uma árvore binária na qual o
   valor de cada nó é menor que o valor de seus filhos.
  Precisamos de O(N log k) operações para construir um
   heap contendo os k maiores valores entre os N
   documentos.
  Essencialmente linear em N para um valor pequeno para k
   e grande para N



                                                             5
Heap binário mínimo




                      6
Seleciona os k melhores scores em O(N log k)
    Objetivo: Manter os k melhores documentos encontrados
     até o momento
    Usar um heap binário mínimo
    Para processar o documento d′ com score s′:
       Pegar o valor mínino do heap hm (em O(1))
       Se s′ ≤ hm ignorar e processar o próximo documento
       Se s′ > hm heap-delete-root (in O(log k))
       Heap-add s′ (in O(log k))




                                                             7
Índice estratificado




                       8
Agenda

❶   Revisão

❷   Avaliação sem classificação

❸   Avaliação com classificação

❺   Sumário de Resultados



                                  9
Métricas para um engenho de busca

  Quão rápido ele consegue indexar
     e.g., número de bytes por hora
  Quão rápido ele consegue realizar uma busca
     e.g., latência como função da quantidade de consultas por
      segundo
  Qual o custo por consulta?
     em $




                                                                  10
Métrica para um engenho de busca
  Todos os critérios anteriores podem ser mensuráveis:
   podemos quantificar velocidade / tamanho / dinheiro
  No entanto, a principal métrica para um engenho de busca é
   satisfação do usuário.
  O que é satisfação do usuário?
  Fatores incluídos:
       Velocidade na resposta
       Tamanho do índice
       Interface amigável
       Mais importante: relevância
  Note que nenhum desses é suficiente sozinho: extrema
   rapidez com resultados inúteis não deixam o usuário feliz.
  Como quantificar a satisfação dos usuários?
                                                                11
Quem é o usuário?
  Quem é o usuário que estamos tentando deixar feliz?
  Ferramentas de busca na web
     Pesquisador - Sucesso: O pesquisador encontra o que está
      procurando. Métrica: taxa de retorno a ferramenta de
      busca
     Anunciante - Sucesso: Pesquisador clica no anúncio.
      Métrica: taxa de cliques
  Comércio eletrônico
     Comprador - Sucesso: Comprador compra algo. Métricas:
      tempo para efetuar a compra, fração da conversão de
      pesquisadores em compradores
     Vendedor - Sucesso: Vendedor vende algo. Métrica: lucro
      por item vendido
                                                            12
Definição mais comum para satisfação do
usuário: Relevância

  A satisfação dos usuários é proporcional a relevância dos
   resultados em relação as consultas
  Como medir relevância?
  Metodologia padrão em recuperação da informação consiste
   em três elementos.
     Uma coleção de documentos para benchmark
     Uma coleção de consultas para benchmark
     Uma análise da relevância de cada par consulta-
      documento


                                                           13
Relevância: consulta vs. Necessidade de
informação
   Relevante a que?
   Primeira tentativa: relevante a consulta
   “Relevância a consulta” apresenta alguns problemas.
   Necessidade de informação i : “Estou procurando saber se beber vinho
    tinho é melhor do que beber vinho branco na redução dos riscos de
    ataques cardíacos.”
       Isto é uma necessidade de informação, não uma consulta.
   Consulta q: [vinho tinto vinho branco ataque cardíaco]
       Considere o documento d′: No coração de seu discurso estava um
        ataque ao lobby da indústria de vinhos para minimizar o efeito do
        consumo de vinhos tinto e branco na taxa de acidentes causados por
        motoristas alcoolizados.”
       O score de d′ em relação a q será muito bom . . .
       d′ não é relevante para a necessidade de informação i.


                                                                         14
Relevância: consulta vs. Necessidade de
informação

   A satisfação do usuário só pode ser medida pela relevância
    em relação as suas necessidades de informação e não as suas
    consultas.




                                                             15
Precisão e Recall

   Precisão (P) é a fração dos documentos retornados que é
    relevante



   Recall (R) é a fração dos documentos relevantes que é
    retornada




                                                              16
Precisão e Recall




              P = TP / ( TP + FP )
              R = TP / ( TP + FN )




                                     17
Trandeoff entre Precisão e Recall

   É possível aumentar o recall retornando mais documentos.
   Um sistema de busca que retorna todos os docmentos tem
    um recall de 100%!
   O contrário também é geralmente verdade: é fácil obter altos
    níveis de precisão com baixos nívels de recall.
   Suponha que o documento com o maior score é relevante.
    Como poderíamos maximizar a precisão?




                                                              18
Uma medida composta: F
  F nos permite balancear precisão e recall.

                                       onde

  α ϵ [0, 1] e b 2 ϵ [0,∞]
  Valores mais utilizados: F balanceado com b = 1 ou α = 0.5
  Que valores de β dão peso maior ao recall do que a precisão?




                                                             19
F: Exemplo
                 relevantes   não relevante
   recuperado    20           40              60
   Não recuperado 60          1,000,000       1,000,060
                 80           1,000,040       1,000,120




                                                          20
Acurácia
  Por que usar métricas complexas como precisão, recall e F?
  Por que não usar algo mais simples como acurácia?
  Acurácia é a fração das decisões (relevante/não relevante)
   que são corretas
  Em termos da tabela




  Acurácia = (TP + TN)/(TP + FP + FN + TN).
  Por que acurácia não é uma métrica útil em um sistema de
   recuperação de informação na web?
                                                                21
Porque acurácia é inútil em sistemas de
recuperação da informação

   Truque simples para maximizar acurácia: sempre retorne 0
    resultados
   Isso resulta em uma acurácia de 99.9% para a maioria das
    consultas (em geral, 99.9% dos documentos são irrelevantes
    para uma consulta)
   Usuários de sistemas de busca na web (e em geral) querem
    encontrar algo e têm um certo grau de tolerância a lixo.
   É melhor retornar alguns maus resultados do que não
    retornar nada.
   →Usamos precisão, recall e F para avaliação.

                                                             22
Agenda

❶   Revisão

❷   Avaliação sem classificação

❸   Avaliação com classificação

❹   Benchmarks de avaliações

❺   Sumário de Resultados

                                  23
Curva de Precisão-Recall

   Precisão/recall/F são métricas para conjuntos não
    ranqueados.
   É possível utilizar estas métricas também para listas de
    documentos ranqueados.
   Basta calcular o valor para cada “prefixo”: o top 1, top 2, top
    3, top 4 etc resultados
   Fazendo isso, precisão e recall geram uma curva.




                                                                  24
Uma curva de precisão-recall




  Cada ponto corresponde a um resultado para os top k
   resultados (k = 1, 2, 3, 4, . . .).
  Interpolação (em vermelho):Valor máximo para todos os
   pontos no futuro

                                                           25
Agenda

❶   Revisão

❷   Avaliação sem classificação

❸   Avaliação com classificação

❺   Sumário de Resultados



                                  26
Como apresentar os resultados para o
usuário?

  Mais frequente: como uma lista – aka “10 links azuis”
  Como cada documento deve ser descrito na lista?
  Esta descrição é crucial.
  O usuário geralmente consegue identificar bons resultados
   através da descrição.
  Evita a necessidade de clicar em todos os documentos de
   forma sequencial




                                                               27
Descrição de um documento na lista de
resultados


  Mais comum: título do documento, url, alguns metadados . . .
  . . . e um sumário
  Como “calcular” o sumário?




                                                             28
Sumários


  Dois tipos básicos: (i) estático (ii) dinâmico
  Um sumário estático de um documento é sempre o mesmo,
   independente da consulta realizada pelo usuário.
  Sumários dinâmicos são dependentes da consulta. Eles servem
   para tentar explicar porque o documento foi recuperado em
   resposta aquela consulta.




                                                           29
Sumários estáticos
   Em um sistema típico, um sumário estático é um subconjunto
    do documento.
   Heurística mais simples: pegar as 50 primeiras palavras do
    documento
   Um pouco mais sofisticada: extrair sentenças-chave de cada
    documento
      Heurística simples de PLN para classificar cada sentença
          O sumário é composto pelas sentenças melhor classificadas
          Abordagem baseada em aprendizagem de máquina (Capítulo
           13)
   A mais sofisticada: PLN complexo para sintetizar/gerar um
    sumário
                                                                  30
Sumários Dinâmicos

  Apresenta uma ou mais “janelas” no documento que contém
   vários dos termos da consulta.
  Preferência por trechos onde os termos aparecem como frases
  Preferência por trechos onde os termos aparecem juntos em
   pequenas janelas
  O sumário “computado” desta maneira apresenta todo o
   conteúdo da janela, todos os termos não só os da consulta.




                                                           31

Avaliação de Sistemas de Recuperação da Informação

  • 1.
    Centro de Informática– Universidade Federal da Paraíba Ordenação e Recuperação de Dados Aula 9: Avaliação de Sistemas de Recuperação de Informação e Sumário de Resultados Prof. Alexandre Duarte - http://alexandre.ci.ufpb.br 1 1
  • 2.
    Agenda ❶ Revisão ❷ Avaliação sem classificação ❸ Avaliação com classificação ❺ Sumário de Resultados 2
  • 3.
    Agenda ❶ Revisão ❷ Avaliação sem classificação ❸ Avaliação com classificação ❺ Sumário de Resultados 3
  • 4.
  • 5.
    Usando um heapmínimo para selecionar os top k documentos entre os N disponíveis  Usar um heap binário mínimo  Um heap binário mínimo é uma árvore binária na qual o valor de cada nó é menor que o valor de seus filhos.  Precisamos de O(N log k) operações para construir um heap contendo os k maiores valores entre os N documentos.  Essencialmente linear em N para um valor pequeno para k e grande para N 5
  • 6.
  • 7.
    Seleciona os kmelhores scores em O(N log k)  Objetivo: Manter os k melhores documentos encontrados até o momento  Usar um heap binário mínimo  Para processar o documento d′ com score s′:  Pegar o valor mínino do heap hm (em O(1))  Se s′ ≤ hm ignorar e processar o próximo documento  Se s′ > hm heap-delete-root (in O(log k))  Heap-add s′ (in O(log k)) 7
  • 8.
  • 9.
    Agenda ❶ Revisão ❷ Avaliação sem classificação ❸ Avaliação com classificação ❺ Sumário de Resultados 9
  • 10.
    Métricas para umengenho de busca  Quão rápido ele consegue indexar  e.g., número de bytes por hora  Quão rápido ele consegue realizar uma busca  e.g., latência como função da quantidade de consultas por segundo  Qual o custo por consulta?  em $ 10
  • 11.
    Métrica para umengenho de busca  Todos os critérios anteriores podem ser mensuráveis: podemos quantificar velocidade / tamanho / dinheiro  No entanto, a principal métrica para um engenho de busca é satisfação do usuário.  O que é satisfação do usuário?  Fatores incluídos:  Velocidade na resposta  Tamanho do índice  Interface amigável  Mais importante: relevância  Note que nenhum desses é suficiente sozinho: extrema rapidez com resultados inúteis não deixam o usuário feliz.  Como quantificar a satisfação dos usuários? 11
  • 12.
    Quem é ousuário?  Quem é o usuário que estamos tentando deixar feliz?  Ferramentas de busca na web  Pesquisador - Sucesso: O pesquisador encontra o que está procurando. Métrica: taxa de retorno a ferramenta de busca  Anunciante - Sucesso: Pesquisador clica no anúncio. Métrica: taxa de cliques  Comércio eletrônico  Comprador - Sucesso: Comprador compra algo. Métricas: tempo para efetuar a compra, fração da conversão de pesquisadores em compradores  Vendedor - Sucesso: Vendedor vende algo. Métrica: lucro por item vendido 12
  • 13.
    Definição mais comumpara satisfação do usuário: Relevância  A satisfação dos usuários é proporcional a relevância dos resultados em relação as consultas  Como medir relevância?  Metodologia padrão em recuperação da informação consiste em três elementos.  Uma coleção de documentos para benchmark  Uma coleção de consultas para benchmark  Uma análise da relevância de cada par consulta- documento 13
  • 14.
    Relevância: consulta vs.Necessidade de informação  Relevante a que?  Primeira tentativa: relevante a consulta  “Relevância a consulta” apresenta alguns problemas.  Necessidade de informação i : “Estou procurando saber se beber vinho tinho é melhor do que beber vinho branco na redução dos riscos de ataques cardíacos.”  Isto é uma necessidade de informação, não uma consulta.  Consulta q: [vinho tinto vinho branco ataque cardíaco]  Considere o documento d′: No coração de seu discurso estava um ataque ao lobby da indústria de vinhos para minimizar o efeito do consumo de vinhos tinto e branco na taxa de acidentes causados por motoristas alcoolizados.”  O score de d′ em relação a q será muito bom . . .  d′ não é relevante para a necessidade de informação i. 14
  • 15.
    Relevância: consulta vs.Necessidade de informação  A satisfação do usuário só pode ser medida pela relevância em relação as suas necessidades de informação e não as suas consultas. 15
  • 16.
    Precisão e Recall  Precisão (P) é a fração dos documentos retornados que é relevante  Recall (R) é a fração dos documentos relevantes que é retornada 16
  • 17.
    Precisão e Recall P = TP / ( TP + FP ) R = TP / ( TP + FN ) 17
  • 18.
    Trandeoff entre Precisãoe Recall  É possível aumentar o recall retornando mais documentos.  Um sistema de busca que retorna todos os docmentos tem um recall de 100%!  O contrário também é geralmente verdade: é fácil obter altos níveis de precisão com baixos nívels de recall.  Suponha que o documento com o maior score é relevante. Como poderíamos maximizar a precisão? 18
  • 19.
    Uma medida composta:F  F nos permite balancear precisão e recall. onde  α ϵ [0, 1] e b 2 ϵ [0,∞]  Valores mais utilizados: F balanceado com b = 1 ou α = 0.5  Que valores de β dão peso maior ao recall do que a precisão? 19
  • 20.
    F: Exemplo relevantes não relevante recuperado 20 40 60 Não recuperado 60 1,000,000 1,000,060 80 1,000,040 1,000,120 20
  • 21.
    Acurácia  Porque usar métricas complexas como precisão, recall e F?  Por que não usar algo mais simples como acurácia?  Acurácia é a fração das decisões (relevante/não relevante) que são corretas  Em termos da tabela  Acurácia = (TP + TN)/(TP + FP + FN + TN).  Por que acurácia não é uma métrica útil em um sistema de recuperação de informação na web? 21
  • 22.
    Porque acurácia éinútil em sistemas de recuperação da informação  Truque simples para maximizar acurácia: sempre retorne 0 resultados  Isso resulta em uma acurácia de 99.9% para a maioria das consultas (em geral, 99.9% dos documentos são irrelevantes para uma consulta)  Usuários de sistemas de busca na web (e em geral) querem encontrar algo e têm um certo grau de tolerância a lixo.  É melhor retornar alguns maus resultados do que não retornar nada.  →Usamos precisão, recall e F para avaliação. 22
  • 23.
    Agenda ❶ Revisão ❷ Avaliação sem classificação ❸ Avaliação com classificação ❹ Benchmarks de avaliações ❺ Sumário de Resultados 23
  • 24.
    Curva de Precisão-Recall  Precisão/recall/F são métricas para conjuntos não ranqueados.  É possível utilizar estas métricas também para listas de documentos ranqueados.  Basta calcular o valor para cada “prefixo”: o top 1, top 2, top 3, top 4 etc resultados  Fazendo isso, precisão e recall geram uma curva. 24
  • 25.
    Uma curva deprecisão-recall  Cada ponto corresponde a um resultado para os top k resultados (k = 1, 2, 3, 4, . . .).  Interpolação (em vermelho):Valor máximo para todos os pontos no futuro 25
  • 26.
    Agenda ❶ Revisão ❷ Avaliação sem classificação ❸ Avaliação com classificação ❺ Sumário de Resultados 26
  • 27.
    Como apresentar osresultados para o usuário?  Mais frequente: como uma lista – aka “10 links azuis”  Como cada documento deve ser descrito na lista?  Esta descrição é crucial.  O usuário geralmente consegue identificar bons resultados através da descrição.  Evita a necessidade de clicar em todos os documentos de forma sequencial 27
  • 28.
    Descrição de umdocumento na lista de resultados  Mais comum: título do documento, url, alguns metadados . . .  . . . e um sumário  Como “calcular” o sumário? 28
  • 29.
    Sumários  Doistipos básicos: (i) estático (ii) dinâmico  Um sumário estático de um documento é sempre o mesmo, independente da consulta realizada pelo usuário.  Sumários dinâmicos são dependentes da consulta. Eles servem para tentar explicar porque o documento foi recuperado em resposta aquela consulta. 29
  • 30.
    Sumários estáticos  Em um sistema típico, um sumário estático é um subconjunto do documento.  Heurística mais simples: pegar as 50 primeiras palavras do documento  Um pouco mais sofisticada: extrair sentenças-chave de cada documento  Heurística simples de PLN para classificar cada sentença  O sumário é composto pelas sentenças melhor classificadas  Abordagem baseada em aprendizagem de máquina (Capítulo 13)  A mais sofisticada: PLN complexo para sintetizar/gerar um sumário 30
  • 31.
    Sumários Dinâmicos Apresenta uma ou mais “janelas” no documento que contém vários dos termos da consulta.  Preferência por trechos onde os termos aparecem como frases  Preferência por trechos onde os termos aparecem juntos em pequenas janelas  O sumário “computado” desta maneira apresenta todo o conteúdo da janela, todos os termos não só os da consulta. 31