Introduction to Information Retrieval     Ordenação e Recuperação de Dados                                      Aula 11:  ...
Agenda❶   Revisão❷   Classificação de Texto❸   Naive Bayes❺   Avaliação                             2
Agenda❶   Revisão❷   Classificação de Texto❸   Naive Bayes❺   Avaliação                             3
Olhar vs clicar                  4
Usando um heap mínimo para selecionaros top k documentos entre N  Usar um heap binário mínimo  Um heap binário mínimo é ...
Heap binário mínimo                      6
Índice Estratificado                       7
Sistema de Buscas Completo                             8
Aula de Hoje Classificação de texto: definição e relevância para recuperação  da informação Naive Bayes: classificador d...
Agenda❶   Revisão❷   Classificação de Texto❸   Naive Bayes❺   Avaliação                             10
Uma tarefa de classificação de texto: Filtro deSpam para E-mailFrom: ‘‘’’ <takworlld@hotmail.com>Subject: real estate is t...
Definição formal de CT: TreinamentoDados: Um espaço documental X     Os documentos são representados neste espaço – tipi...
Definição formal de CT: Aplicação/TestesDada: uma descrição d ∈ X de um documentoDeterminar:ϒ (d) ∈ C,que representa a cla...
Classificação em Tópicos                           14
Exemplos do uso de classificação em engenhos debusca   Identificação de linguagem (classes: Inglês vs. Português etc.)  ...
Métodos de classificação: 1. Manual   Classificação manual era utilizada pelo Yahoo no início da    Web   Extremamente p...
Métodos de classificação: 2. Baseado em Regras   Google Alerts era baseado em regras de classificação.   Existem ferrame...
Métodos de classificação: 3.Estatístico/Probabilístico    Esta foi a nossa definição para o problema de classificação    ...
Agenda❶   Revisão❷   Classificação de Texto❸   Naive Bayes❺   Avaliação                             19
O Classificador Naive Bayes   O classificador Naive Bayes é um classificador probabilístico.   Computamos a probabilidad...
Classe máxima a posteriori   Nosso objetivo com o Naive Bayes é encontrar a “melhor”    classe para o documento.   A mel...
Utilizando o log    Multiplicar um número muito grande de probabilidades pode     resultar em um underflow de ponto flutu...
Classificador Naive Bayes  Regra de classificação:  Interpretação simples:     Cada parâmetro condicional log          ...
Estimando parâmetros – parte 1  Estimar os parâmetros     e         dos dados de treinamento:   Como?  Anterior:  Nc : ...
O problema com esta abordagem : Zeros   P(China|d) ∝ P(China) ・ P(BEIJING|China) ・ P(AND|China)               ・ P(TAIPEI|C...
O problema com esta abordagem : Zeros (cont)    Se não há ocorrências de WTO nos documentos da classe China,     teremos ...
Para evitar zeros: adicionar um suavizante  Antes:  Agora: adicionar um a cada contador para evitar zeros:  B é o númer...
Exemplo   Estimar os parâmetros para o classificador Naive Bayes   Classificar o documento de teste                     ...
Exemplo: Estimando os parâmetrosOs denominadores são (8 + 6) e (3 + 6) porque os comprimentoesde textc e    são 8 e 3, res...
Exemplo: ClassificaçãoPortanto, o classificador classifica o documento de teste como c =China. A razão para esta decisão é...
Agenda❶   Revisão❷   Classificação de Texto❸   Naive Bayes❺   Avaliação                             31
Exemplo: A coleção de Reuters                                32
Um documento da Reuters                          33
Avaliando classificação   A avaliação precisa ser realizada usando dados de teste que    sejam independentes dos dados de...
Precisão P e recall R          P = TP / ( TP + FP)          R = TP / ( TP + FN)                                35
Uma medida combinada: F  F1 nos permite balancear precisão e recall.                                                 36
Calculando a média: Micro vs. Macro  Temos uma média única (F1) para uma classe.  Queremos também uma medida única do de...
Upcoming SlideShare
Loading in...5
×

Classficação de Texto e Naive Bayes

2,474

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,474
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
75
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Classficação de Texto e Naive Bayes

  1. 1. Introduction to Information Retrieval Ordenação e Recuperação de Dados Aula 11: Classificação de Texto e Naive Bayes Alexandre Duarte alexandre@di.ufpb.br 1
  2. 2. Agenda❶ Revisão❷ Classificação de Texto❸ Naive Bayes❺ Avaliação 2
  3. 3. Agenda❶ Revisão❷ Classificação de Texto❸ Naive Bayes❺ Avaliação 3
  4. 4. Olhar vs clicar 4
  5. 5. Usando um heap mínimo para selecionaros top k documentos entre N  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. 6. Heap binário mínimo 6
  7. 7. Índice Estratificado 7
  8. 8. Sistema de Buscas Completo 8
  9. 9. Aula de Hoje Classificação de texto: definição e relevância para recuperação da informação Naive Bayes: classificador de textos básico Avaliação de classificação de texto: o que sabemos que funciona e não funciona? 9
  10. 10. Agenda❶ Revisão❷ Classificação de Texto❸ Naive Bayes❺ Avaliação 10
  11. 11. Uma tarefa de classificação de texto: Filtro deSpam para E-mailFrom: ‘‘’’ <takworlld@hotmail.com>Subject: real estate is the only way... gem oalvgkayAnyone can buy real estate with no money downStop paying rent TODAY !There is no need to spend hundreds or even thousands forsimilar coursesI am 22 years old and I have already purchased 6 propertiesusing themethods outlined in this truly INCREDIBLE ebook.Change your life NOW !=================================================Click Below to order:http://www.wholesaledaily.com/sales/nmd.htm=================================================Como você escreveria um programa para detectar e excluirautomaticamente este tipo de mensagem? 11
  12. 12. Definição formal de CT: TreinamentoDados: Um espaço documental X  Os documentos são representados neste espaço – tipicamente, algum espaço com grande número de dimensões. Um conjunto finito de classes C = {c1, c2, . . . , cJ}  As classes são definidas manualmente, de acordo com as necessidades da aplicação (ex., relevante vs. Não-relevante). Um conjunto de treinamento D de documentos classificados com cada documento classificado <d, c> ∈ X × CUsando um método de aprendizagem ou algoritmo de aprendizagem, desejamos um classificador ϒ seja capaz de mapear documentos em classes: ϒ:X→C 12
  13. 13. Definição formal de CT: Aplicação/TestesDada: uma descrição d ∈ X de um documentoDeterminar:ϒ (d) ∈ C,que representa a classe mais apropriada para d 13
  14. 14. Classificação em Tópicos 14
  15. 15. Exemplos do uso de classificação em engenhos debusca  Identificação de linguagem (classes: Inglês vs. Português etc.)  Detecção automática de spam em documentos (spam vs. não-spam)  Detecção de conteúdo erótico (erótico vs. não-erótico)  Detecção de sentimento: em relação a um filme ou avaliação de um produto, por exemplo (positivo vs. negativo) 15
  16. 16. Métodos de classificação: 1. Manual  Classificação manual era utilizada pelo Yahoo no início da Web  Extremamente preciso se feito por especialistas  Consistente quando o conjunto de documentos e o time são pequenos  Alcançar escala é difícil e caro.  → Precisamos de métodos automáticos de classificação. 16
  17. 17. Métodos de classificação: 2. Baseado em Regras  Google Alerts era baseado em regras de classificação.  Existem ferramenta estilo IDEs para facilitar a escrita de regras complexas de forma eficiente (ex., Verity)  Geralmente: Combinações booleanas (Google Alerts)  Acurácia é muito alta se as regras são cuidadosamente refinadas ao longo do tempo por um especialista.  Construir e manter sistemas de classificação baseado em regras pode ser trabalho e muito caro. 17
  18. 18. Métodos de classificação: 3.Estatístico/Probabilístico  Esta foi a nossa definição para o problema de classificação como um problema de aprendizagem  (i) Aprendizagem supervisionada da função de classificação ϒ e (ii) sua aplicação para a classificação de novos documentos  Veremos um dos métodos para fazer isso: Naive Bayes  Nada é grátis: requer dados de treinamento classificados manualmente  Mas essa classificação manual não precisa ser feita por especialistas. 18
  19. 19. Agenda❶ Revisão❷ Classificação de Texto❸ Naive Bayes❺ Avaliação 19
  20. 20. O Classificador Naive Bayes  O classificador Naive Bayes é um classificador probabilístico.  Computamos a probabilidade de um documento d ser da classe c como segue:  nd é o comprimento do documento (número de tokens)  P(tk |c) é a probabilidade condicional do termo tk ocorrer em um documento da classe c  P(tk |c) pode ser visto como uma medida de quanto a presença de tk contribui para determinar que c é a classe correta do documento  P(c) é a probabilidade anterior de c.  Se os termos de um documento não fornecem evidências o suficiente sobre uma classe ou outra, nós escolhemos o c com o maior P(c). 20
  21. 21. Classe máxima a posteriori  Nosso objetivo com o Naive Bayes é encontrar a “melhor” classe para o documento.  A melhor classe é muito provavelmente a classe máxima a posteriori (MAP) cmap: 21
  22. 22. Utilizando o log  Multiplicar um número muito grande de probabilidades pode resultar em um underflow de ponto flutuante.  Uma vez que log(xy) = log(x) + log(y), podemos somar os logs da probabilidades ao invés de multiplicar as probabilidades.  Uma vez que log é uma função monotônica, a classe com o maior score não muda.  O que realmente calculamos na prática é: 22
  23. 23. Classificador Naive Bayes  Regra de classificação:  Interpretação simples:  Cada parâmetro condicional log é uma medida de quão bom indicador é a presença de tk para a classe c.  A probabilidade anterior log é uma medida da frequência relativa de c.  A soma da probabilidade anterior com os pesos dos termos é uma medida de quanta evidência temos de que um documento pertence a uma determinada classe.  Selecionamos a classe com maior evidência. 23
  24. 24. Estimando parâmetros – parte 1  Estimar os parâmetros e dos dados de treinamento: Como?  Anterior:  Nc : número de documentos na classe c; N: número total de documentos  Probabilidades condicionais:  Tct é o número de tokens t nos documentos de treinamento da classe c (inclui múltiplas ocorrências) 24
  25. 25. O problema com esta abordagem : Zeros P(China|d) ∝ P(China) ・ P(BEIJING|China) ・ P(AND|China) ・ P(TAIPEI|China) ・ P(JOIN|China) ・P(WTO|China) Se WTO nunca ocorrer na classe China no conjunto de treinamento 25
  26. 26. O problema com esta abordagem : Zeros (cont)  Se não há ocorrências de WTO nos documentos da classe China, teremos uma estimativa nula:  → Teremos P(China|d) = 0 para qualquer documento que contenha WTO!  Probabilidades nulas não podem ser condicionadas. 26
  27. 27. Para evitar zeros: adicionar um suavizante  Antes:  Agora: adicionar um a cada contador para evitar zeros:  B é o número de palavras diferentes (neste caso, o tamanho do vocabulário) 27
  28. 28. Exemplo  Estimar os parâmetros para o classificador Naive Bayes  Classificar o documento de teste 28
  29. 29. Exemplo: Estimando os parâmetrosOs denominadores são (8 + 6) e (3 + 6) porque os comprimentoesde textc e são 8 e 3, respectivamente, e porque a constante Bé 6 uma vez que o vocabulário é formado por seis termos. 29
  30. 30. Exemplo: ClassificaçãoPortanto, o classificador classifica o documento de teste como c =China. A razão para esta decisão é que a ocorrência de trêsindicadores positivos CHINESE em d5 pesam mais do que aocorrência dos dois indicadores negativos JAPAN e TOKYO. 30
  31. 31. Agenda❶ Revisão❷ Classificação de Texto❸ Naive Bayes❺ Avaliação 31
  32. 32. Exemplo: A coleção de Reuters 32
  33. 33. Um documento da Reuters 33
  34. 34. Avaliando classificação  A avaliação precisa ser realizada usando dados de teste que sejam independentes dos dados de treinamento (conjuntos disjuntos).  É muito simples conseguir um resultado de testes em um conjunto que já foi utilizando durante o treinamento. (ex., é só memorizar o conjunto).  Métricas: Precisão, recall, F1, acurácia de classficação 34
  35. 35. Precisão P e recall R P = TP / ( TP + FP) R = TP / ( TP + FN) 35
  36. 36. Uma medida combinada: F  F1 nos permite balancear precisão e recall. 36
  37. 37. Calculando a média: Micro vs. Macro  Temos uma média única (F1) para uma classe.  Queremos também uma medida única do desempenho agregado para todas as classes na coleção.  Macroaveraging  Calcular F1 para cada classe C  Calcule a média desses C números  Microaveraging  Calcular TP, FP, FN para cada classe C  Some esses C números (ex, todos os TPs para obter um TP agregado)  Calcule o F1 para os TP, FP, FN agregados 37
  1. Gostou de algum slide específico?

    Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.

×