Tag Suggestion

1.124 visualizações

Publicada em

A description of tag suggestion and a case study of tag suggestion for Portuguese Wikipedia articles

  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Tag Suggestion

  1. 1. Sugestão de Tags Ícaro Medeiros CIn - UFPE 18 de Novembro de 2008 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 1 / 34
  2. 2. Roteiro Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 2 / 34
  3. 3. Seções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 3 / 34
  4. 4. Tags Palavras-chave usadas para organizar e descrever recursos Classificar conteúdo na Web usando tags é uma atividade comum e eficiente Usuários ficam a cargo de rotular os recursos (Social tagging systems) Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 4 / 34
  5. 5. Nuvem de Tags Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 5 / 34
  6. 6. Sugestão de Tags Ajudar os usuários a etiquetar recursos recomendando tags relevantes Principal estratégia: tags já usadas para descrever o mesmo conteúdo ou recursos similares Nesse projeto: sugestão baseada no conteúdo textual (artigos da Wikipédia) Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 6 / 34
  7. 7. Tags na Wikipédia - Por quê? Classificação usada (multi-rótulo hierarquizada) é difícil de ser percorrida (muitos níveis) Distorções: Ciência da Computação -> Redes de Computadores -> Internet -> WWW -> Sites -> Wiki -> Wikipédia -> Versões da Wikipédia -> Wikipédia em Georgiano Organização, recuperação e visualização Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 7 / 34
  8. 8. Seções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 8 / 34
  9. 9. Objetivo Principal Sugerir tags relevantes para artigos da Wikipédia em Português usando o texto dos verbetes Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 9 / 34
  10. 10. Arquitetura do Sistema Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 10 / 34
  11. 11. Subseções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 11 / 34
  12. 12. Dados do Corpus Artigos nas categorias Redes de Computadores, Engenharia de Software e Inteligência Artificial da Wikipédia em português 201 sub-categorias 6098 artigos 20.5MB (XML) 16MB (texto) Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 12 / 34
  13. 13. Passos para Extração Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 13 / 34
  14. 14. Subseções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 14 / 34
  15. 15. Preparação dos Documentos Modelo vetorial Base de índices invertidos usando Lucene Stopwords Sem stemming Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 15 / 34
  16. 16. Heurística de Peso de Termos Específica para artigos Wikipédia Termos no começo dos artigos e hyperlinks para outros verbetes tem peso maior. Ex: “A inteligência artificial (IA) é uma área de pesquisa da ciência da computação...” Diferente campos têm fatores de importância associados Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 16 / 34
  17. 17. Fatores de Importância Começo da página (50 primeiros termos): Não é hyperlink (f1 ); É hyperlink e a Wiki para o qual ele aponta existe (f2 ); É hyperlink, mas a Wiki para o qual ele aponta não existe (f3 ). Restante do documento: Não é hyperlink (f4 ); É hyperlink e a Wiki para o qual ele aponta existe (f5 ); É hyperlink, mas a Wiki para o qual ele aponta não existe (f6 ). Valores usados: {4, 8, 5, 1, 3, 2} Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 17 / 34
  18. 18. Termos Separados em Campos Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 18 / 34
  19. 19. Peso de Termos e tf-idf Peso de um termo tk no documento dj n wkj = f1 × tfidfk 1 + ... + fn × tfidfkn = fm × tfidfkm (1) m=1 TD-IDF de um termo tk em um determinado campo freq(tk ) tf tfidftk = (2) = N idf 1 + log nk Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 19 / 34
  20. 20. Subseções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 20 / 34
  21. 21. Sugestão de Tags Para um Documento: Equação 1 - (5) Termos de maior peso são retornados Para o corpus: Equação 3 - (30) Tags sugeridas para vários documentos são importantes para o corpus como um todo j∈T wkj ) × |T | wcorpustk = ( (3) Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 21 / 34
  22. 22. Seções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 22 / 34
  23. 23. Especificações Java 6 e Lucene 2.4.0 30 classes, mais de 1200 linhas de código Perl e ParseMediaWikiDump (2 módulos) (XML->Texto) Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 23 / 34
  24. 24. Seções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 24 / 34
  25. 25. Dados do Teste Tarefas: Criação do índice, do dicionário de termos e exemplos de tags sugeridas a 10 documentos e ao corpus Tempo total: 4min:16s Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 25 / 34
  26. 26. Criação do índice e do dicionário 3:26 minutos para indexar os 6098 arquivos, 29 por segundo Criação do Índice Lucene totalizando 38.0MB Dicionário de termos (68209) com cálculo de IDF (27s) Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 26 / 34
  27. 27. Exemplos de tags sugeridas C++ Programação C Linguagem Software Código Internet Relay Chat Internet IRC Chat protocolo redes Rede Neural Computação redes rede brasil função Empresas ponto com Internet ponto empresas submarino serviços BitTorrent Internet BitTorrent rede linux download Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 27 / 34
  28. 28. Exemplos de tags sugeridas II Padrões de requisitos Engenharia Requisitos Software Padrão padrões Sistema de recomendação Computador Programa Sistema Processo Usuário UML Software Modelagem Engenharia UML Desenvolvimento Model Driven Architecture Software Desenvolvimento Programação Modelo Processo Transmission Control Protocol Internet Protocolo Dados Rede Redes Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 28 / 34
  29. 29. Tags para o corpus Software Internet Programação Linguagem Sistema Linux Código Computador X Livre Rede Web Windows Dados Redes Língua Computadores Programa Programas Linguagens Domínio Site Brasil Topo C GNU Sistemas Google Microsoft Inglês Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 29 / 34
  30. 30. Seções Introdução 1 Descrição do Sistema 2 Extração do Corpus Criação do Índice Extração de Tags Protótipo 3 Avaliação e Testes 4 Conclusões 5 Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 30 / 34
  31. 31. Melhorias Propostas Automatização das constantes Uso de agrupamento e outras fórmulas para sugestão de tags. Ex: tags de documentos similares Comparação com documentos já classificados em sistemas como Digg, Del.icio.us, etc. Identificação de conceitos e relações para uma ontologia Explorar mais metadados dos artigos da Wikipédia Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 31 / 34
  32. 32. Concluindo... A idéia parece boa, mas... É preciso automatizar os testes para analisar o comportamento de diferentes fórmulas, Testar técnicas da literatura como em (Oliveira et al., 2008) e Testar a aplicação com interface e usuários efetivamente usando-a! Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 32 / 34
  33. 33. Referências Baeza-Yates, R. and Ribeiro-Neto, B. (1999). Modern Information Retrieval. Addison Wesley. Calefato, F., Gendarmi, D., and Lanubile, F. (2007). Towards social semantic suggestive tagging. In Proc. of Semantic Web Applications And Perspectives (Swap 2007). Mika, P. (2007). Ontologies are us: A unified model of social networks and semantics. Journal of Web Semantics, 5(1):5–15. Oliveira, B., Calado, P., and Pinto, H. S. (2008). Automatic tag suggestion based on resource contents. In Gangemi, A. and Euzenat, J., editors, EKAW, volume 5268 of Lecture Notes in Computer Science, pages 255–264. Springer. Wikipedia (2007). Computer help desk - parsemediawikidump — wikipedia, the free encyclopedia. [Online, accessado em 2 de Fevereiro de 2008]. Wikipedia (2008). Tag cloud — wikipedia, the free encyclopedia. [Online; accessed 10-September-2008]. Xu, Z., Fu, Y., Mao, J., and Su, D. (2006). Towards the semantic web: Collaborative tag suggestions. In WWW2006: Proceedings of the Collaborative Web Tagging Workshop, Edinburgh, Scotland. Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 33 / 34
  34. 34. Dúvidas Ícaro Medeiros (CIn - UFPE) Sugestão de Tags 18 de Novembro de 2008 34 / 34

×