Um Portal Web para a Organização Hierárquica de Notícias<br />Dissertação de mestrado<br />04/11/2009<br />Hugo Lima Borge...
Motivações e objetivos<br /><ul><li>Estudar a CHT (Categ. Hierárquica de Textos) e aplicá-lo no contexto de um portal agre...
Uso da hierarquia facilita acesso a notícias mais  específicas e pode ajudar na categorização
Avaliar uma boa configuração para o classificador no cenário proposto</li></li></ul><li>Classificação Hierárquica<br /><ul...
Decomposição do problema plano ( possível ganho de desempenho computacional)
Usada em cenários em que é possível estruturar documentos em uma hierarquia de categorias</li></li></ul><li>Naïve Bayes Pl...
Etapas<br /><ul><li>Pré-processamento
Representação do texto
Redução dimensional
Stemming e cuttof
Seleção de atributos
Pesagem de atributos
Abordagem hierárquica
Algoritmo de classificação
Avaliação da efetividade preditiva</li></li></ul><li>Representação do Texto<br /><ul><li>Bag of Words (BOW): cada palavra ...
Desconsidera posição das palavras
Pesagem dos termos: frequência, binária …
Alternativas:
Bigrama, trigrama (n-grama)
Análise de Semântica Latente
Extração de termos (ex.: agrupamento)</li></li></ul><li>Stemming e cutoff<br /><ul><li>Stemming: redução da palavra para r...
Cutoff: remoção de palavras com baixa/alta frequência que não são representativas para a distinção entre classes (típico: ...
Filtragem ou wrapper
Atributos que aparecem na classe
Atributos que não aparecem na classe</li></li></ul><li>MultinomialNaïveBayes(MNB)<br /><ul><li>Algoritmo probabilístico (r...
Assume independência dos termos
Variações do algoritmo e heurísticas para contornar alguns problemas</li></li></ul><li>MNB (2)<br /><ul><li>Fi – pesagem d...
Nci – ocorrências do termo i na classe c
Nc – ocorrência de termos na classe c
N – total de termos
Dc– documentos pertencentes a classe c
D – total de documentos</li></li></ul><li>MNB (3)<br /><ul><li>Eficiente computacionalmente
Implementação simples
Fácil adição de exemplos de treinamento
Pré-processamento é importante
Nem sempre apresenta boa efetividade
Necessidade de quantidade mínima de exemplos</li></li></ul><li>Abordagem top-down<br />f1_plano<br />1                    ...
Fácil de implementar (algoritmos planos)
Propagação de erros
Upcoming SlideShare
Loading in …5
×

Informeme - Apresentação da devesa

656 views
604 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
656
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Informeme - Apresentação da devesa

  1. 1. Um Portal Web para a Organização Hierárquica de Notícias<br />Dissertação de mestrado<br />04/11/2009<br />Hugo Lima Borges<br />Orientadora: Profa. Dra. Ana Carolina Lorena<br />
  2. 2. Motivações e objetivos<br /><ul><li>Estudar a CHT (Categ. Hierárquica de Textos) e aplicá-lo no contexto de um portal agregador de notícias
  3. 3. Uso da hierarquia facilita acesso a notícias mais específicas e pode ajudar na categorização
  4. 4. Avaliar uma boa configuração para o classificador no cenário proposto</li></li></ul><li>Classificação Hierárquica<br /><ul><li>Possível ganho na efetividade preditiva (depende do algoritmo)
  5. 5. Decomposição do problema plano ( possível ganho de desempenho computacional)
  6. 6. Usada em cenários em que é possível estruturar documentos em uma hierarquia de categorias</li></li></ul><li>Naïve Bayes Plano x Hierárquico (20 Newsgroups)<br />
  7. 7. Etapas<br /><ul><li>Pré-processamento
  8. 8. Representação do texto
  9. 9. Redução dimensional
  10. 10. Stemming e cuttof
  11. 11. Seleção de atributos
  12. 12. Pesagem de atributos
  13. 13. Abordagem hierárquica
  14. 14. Algoritmo de classificação
  15. 15. Avaliação da efetividade preditiva</li></li></ul><li>Representação do Texto<br /><ul><li>Bag of Words (BOW): cada palavra representa um atributo (ou termo)
  16. 16. Desconsidera posição das palavras
  17. 17. Pesagem dos termos: frequência, binária …
  18. 18. Alternativas:
  19. 19. Bigrama, trigrama (n-grama)
  20. 20. Análise de Semântica Latente
  21. 21. Extração de termos (ex.: agrupamento)</li></li></ul><li>Stemming e cutoff<br /><ul><li>Stemming: redução da palavra para radical (palavras com significado próximo)
  22. 22. Cutoff: remoção de palavras com baixa/alta frequência que não são representativas para a distinção entre classes (típico: 3 ou 5)</li></li></ul><li>Seleção de atributos<br /><ul><li>Selecionar atributos mais relevantes para distinguir as classes
  23. 23. Filtragem ou wrapper
  24. 24. Atributos que aparecem na classe
  25. 25. Atributos que não aparecem na classe</li></li></ul><li>MultinomialNaïveBayes(MNB)<br /><ul><li>Algoritmo probabilístico (regra de Bayes)
  26. 26. Assume independência dos termos
  27. 27. Variações do algoritmo e heurísticas para contornar alguns problemas</li></li></ul><li>MNB (2)<br /><ul><li>Fi – pesagem do termo i no documento dj
  28. 28. Nci – ocorrências do termo i na classe c
  29. 29. Nc – ocorrência de termos na classe c
  30. 30. N – total de termos
  31. 31. Dc– documentos pertencentes a classe c
  32. 32. D – total de documentos</li></li></ul><li>MNB (3)<br /><ul><li>Eficiente computacionalmente
  33. 33. Implementação simples
  34. 34. Fácil adição de exemplos de treinamento
  35. 35. Pré-processamento é importante
  36. 36. Nem sempre apresenta boa efetividade
  37. 37. Necessidade de quantidade mínima de exemplos</li></li></ul><li>Abordagem top-down<br />f1_plano<br />1 2<br />f3_plano<br />f2_plano<br />1.1 1.2<br />2.1 2.2<br /><ul><li>Mais empregada
  38. 38. Fácil de implementar (algoritmos planos)
  39. 39. Propagação de erros
  40. 40. Escalável</li></ul>x<br />Hierarquia<br /><br />2<br />1<br />2.1<br />2.2<br />1.1<br />1.2<br />
  41. 41. Avaliação da efetividade preditiva<br /><ul><li>Precisão: % das classificações corretas feitas para a classe i
  42. 42. Sensibilidade: % dos exemplos da classe i classificados corretamente
  43. 43. F1: igual peso para as duas medidas</li></li></ul><li>Avaliação da efetividade preditiva (2)<br />Medida média levando em conta todas as classes:<br />F1macro: mesmo peso para todos exemplos<br />F1 micro: mesmo peso para todas as classes<br />
  44. 44. Medida baseada em distância<br />Peso negativo para erros cometidos no primeiro nível<br />
  45. 45. Medida baseada em distância (2)<br />Hierarquia<br /><br />1<br />1<br />2<br />1<br />Disθ = 2 : contribuição nula se erro ocorre no segundo nível<br />Contribuição igual a -1 se erro ocorre no primeiro nível<br />1<br />1<br />1<br />1<br />2.1<br />2.2<br />1.1<br />1.2<br />predita<br />verdadeira<br />
  46. 46. Experimentos<br /><ul><li>Validação cruzada em 3 partes
  47. 47. Avaliação F1micro e macro
  48. 48. Conjuntos de dados da literatura
  49. 49. Seleção e pesagem de atributos realizada localmente (em cada classificador na hierarq.)
  50. 50. Atributos distribuídos igualmente entre classificadores</li></li></ul><li>Conjuntos de Dados da Literatura<br />
  51. 51. Stemming (Porter 2)<br /><ul><li>Não houve impacto na efetividade preditiva (todos atributos)
  52. 52. Impacto + com número baixo de atributos considerados (seleção de atrib.)
  53. 53. Redução de 18% (20N) e 27% (R21)
  54. 54. Escolha: usar stemming</li></ul>sem stemming (com stemming)<br />
  55. 55. Cutoff<br /><ul><li>Remoção de palavras infrequentes no conjunto de testes
  56. 56. Redução superior a 60% em ambos conjuntos com n = 2
  57. 57. Pouco impacto na efetividade do classificador (com n baixo)
  58. 58. Escolha: cutoff mínimo (2) </li></li></ul><li>Cutoff(2)<br />
  59. 59. Seleção de atributos<br /><ul><li>Técnicas de filtragem: DF, IG, Chi², OR, BNS
  60. 60. Atributos são distribuídos igualmente entre as classes (Round Robin)
  61. 61. Escolha: Chi² (IG)
  62. 62. Melhores resultados:
  63. 63. 20N : IG, OR, Chi²
  64. 64. R21 : IG, Chi²</li></li></ul><li>Seleção de atributos 20N (2)<br /><ul><li>macro F1
  65. 65. macro F1dist. </li></li></ul><li>Seleção de atributos R21 (3)<br /><ul><li>micro F1
  66. 66. micro F1dist.
  67. 67. macro F1</li></li></ul><li>Pesagem de atributos<br /><ul><li>TF , binária, TF-IDF, e logTF-IDF
  68. 68. Resultados:
  69. 69. 20N: Binária, logTF-IDF
  70. 70. R21: logTF-IDF, TF-IDF
  71. 71. Escolha: logTF-IDF</li></li></ul><li>Pesagem de atributos (20N)<br /><ul><li>micro F1
  72. 72. macro F1
  73. 73. macro F1dist.</li></li></ul><li>Pesagem de atributos (R21)<br /><ul><li>micro F1dist.
  74. 74. macro F1dist.</li></li></ul><li>Comparação MNB x SVM<br /><ul><li>MNB x SVM linear (LibSVM), com pesagem, seleção de atributos</li></li></ul><li>Arquitetura do sistema<br />Navegador<br />Agendador de Tarefas<br />Aplicação Web<br />Feeds XML<br />Capturador<br />Classificador<br />Base de <br />dados<br />
  75. 75. Capturador e fontes de notícia<br /><ul><li>Feeds RSS/Atom: resumo de notícias
  76. 76. Foco: Jornais e portais brasileiros
  77. 77. Cerca de 15 fontes
  78. 78. Pré-classificação de notícias
  79. 79. Conjunto de testes:
  80. 80. 16 mil notícias capturadas em um mês
  81. 81. Classificação manual
  82. 82. Tamanho médio: 72 ±83</li></li></ul><li>Hierarquia de notícias<br /><ul><li>2 níveis ( 9 / 38 categorias ), 44 nós folha
  83. 83. Desbalanceado
  84. 84. Primeiro nível: Baseada em jornais / portais de notícia
  85. 85. Não é necessariamente a melhor para o classificador
  86. 86. Problema com notícias “sem” categoria (outros)</li></li></ul><li>Resultados: Classificação<br /><ul><li>Stemming: redução de atributos de 43%
  87. 87. Primeiro nível: micro F1 = 0,82
  88. 88. Micro F1: 0,72
  89. 89. Micro F1dist. : 0,60
  90. 90. Macro F1: 0,62
  91. 91. Macro F1dist. : 0,40</li></li></ul><li>Resultados: observações (1)<br />Resultados<br />Primeiro nível:<br />Bom desempenho: <br />Esportes (0,96) <br />Economia (0,85)<br />Desempenho ruim: <br />Ciências (0,63), Saúde (0,70) – poucos exemplos<br />Cotidiano (0,73) – muitos assuntos<br />
  92. 92. Resultados: observações (2)<br />Resultados<br />Segundo nível :<br />Educação: F1 = 0,75 ; F1dist. = 0,38<br />Biologia: F1 = 0,52 ; F1dist. = 0,0<br />Bolsas de valores: F1 = 0,91 ; F1dist. = 0,90<br />Automobilismo F1 = 0,94 ; F1dist. = 0,94<br />Categorias “Outros” : desempenho ruim em geral<br />
  93. 93. Resultado: Pré-classificação<br /><ul><li>46% dos documentos de teste já classificados (corretamente) no primeiro nível
  94. 94. Micro F1: 0,77 (0,72)
  95. 95. Micro F1dist. : 0,58 (0,69)
  96. 96. Macro F1: 0,68 (0,62)
  97. 97. Macro F1dist. : 0,55 (0,39)</li></li></ul><li>Plano x Hierárquico<br />Plano<br />Micro F1= 0,71 (0,01)<br />Macro F1= 0,58 (0,01)<br />Tempo: 9min<br />Hierárquico<br />Micro F1= 0,72 (0,01)<br />Macro F1= 0,57 (0,01)<br />Tempo: 7min30s<br />
  98. 98. Sistema Informeme<br />www.informeme.com<br />Interface do usuário<br />Interface do administrador<br />
  99. 99. Trabalhos Futuros (CHT)<br /><ul><li>Melhorar a hierarquia (2 hierarquias)
  100. 100. Ponto de vista do usuário
  101. 101. Buscando melhor efetividade do classificador
  102. 102. Métodos para “parar” a classificação no primeiro nível
  103. 103. Automatizar o processo de treinamento
  104. 104. Notícias completas (ao invés de resumos)
  105. 105. Abordagem multirrótulos
  106. 106. Hierarquias maiores, mais exemplos: RCV1</li></li></ul><li>Trabalhos Futuros (aplicação)<br /><ul><li>Lidar com notícias repetidas / similares
  107. 107. Classificação por região
  108. 108. Recomendação de notícias
  109. 109. Considerar outros tipos de fontes e dados</li>

×