obtendo informação Útil em dados semi-estruturados da web

38
1 / 38 Obtendo Informação Útil em Dados Semi-Estruturados na Web Mestrado em Sistemas e Computação Mineração de Dados Prof. Manoel Mendonça Luiz Matos – luizmatos.eti.br Salvador, Fevereiro de 2008

Upload: luiz-matos

Post on 05-Jun-2015

1.877 views

Category:

Technology


1 download

DESCRIPTION

Trata da Mineração Web, do uso dos microformatos e da ferramenta MicroMining - um ambiente web para a mineração de conteúdo de revisões usando o hReview. Foi realizado um exemplo prático com o Weka.

TRANSCRIPT

Page 1: Obtendo Informação Útil em Dados Semi-Estruturados da Web

1 / 38

Obtendo Informação Útil em Dados

Semi-Estruturados na Web

Mestrado em Sistemas e ComputaçãoMineração de Dados

Prof. Manoel Mendonça

Luiz Matos – luizmatos.eti.br Salvador, Fevereiro de 2008

Page 2: Obtendo Informação Útil em Dados Semi-Estruturados da Web

2 / 38

Introdução

Mineração Web

Micro-formatos

Exemplo Prático

Considerações Finais

Referências

AGENDA

Page 3: Obtendo Informação Útil em Dados Semi-Estruturados da Web

3 / 38

INTRODUÇÃO

• Motivação

O usuário da Web, além de consumidor, torna-se produtor de informação;

Crescimento significativo da quantidade de informação disponível;

Maior complexidade no processo de obtenção de informação útil.

Page 4: Obtendo Informação Útil em Dados Semi-Estruturados da Web

4 / 38

INTRODUÇÃO

Usuários de Internet no mundo em 2007: ~1,3 bi (STATS, 2008)

Média de crescimento entre 2000 e 2007: ~265% (STATS, 2008)

Páginas indexadas pelo Google em 2006: ~20 bi (ALLSOPP, 2007; GOOGLE SEARCH, 2008)

(STATS, 2008)

Page 5: Obtendo Informação Útil em Dados Semi-Estruturados da Web

5 / 38

Tipo de Arquivos Quantidade

Páginas Web 6.046.425.000

Documentos/Programas

170.369.580

Web Semântica 28.021.500

Diversos 5.541.770

Pacotes 4.905.466

Multimídia 3.404.532

TOTAL 6.258.667.848

Resultados de busca em google.com no dia 20 /02/2008. (palavra-chave: filetype:arq)

Sabendo-se que a Web é/tem muito mais que isso, surge um problema ...

Como extrair significado deste enorme conjunto de recursos?

INTRODUÇÃO

Usuários da Internet no Mundo

Page 6: Obtendo Informação Útil em Dados Semi-Estruturados da Web

6 / 38

• Objetivo

Aplicar os conceitos relacionados a mineração de dados na web e micro-formatos para extrair informação útil em sites com dados semi-estruturados.

• Metodologia

Levantamento bibliográfico;

Leitura e sumarização das idéias;

Implementação do exemplo prático;

Documentação (artigo + apresentação).

INTRODUÇÃO

Page 7: Obtendo Informação Útil em Dados Semi-Estruturados da Web

7 / 38

• O que é?

Uso das técnicas da Mineração de Dados para descoberta e análise de informações úteis da Web.

• Por quê?

Descobrir conhecimento novo e relevante dos dados Web, onde seja possível demonstrar:

Características;

Comportamentos;

Tendências, e;

Padrões de navegação do usuário Web.

MINERAÇÃO WEB

(MOBASHER e outros apud MACHADO, 2002)

Page 8: Obtendo Informação Útil em Dados Semi-Estruturados da Web

8 / 38

• Categorias

Mineração do Conteúdo: descoberta de informações úteis no conteúdo das páginas e documentos Web.

Mineração da Estrutura: descoberta de informações úteis com base na estrutura de hyperlinks da Web.

Mineração do Uso: descoberta de padrões de acesso do usuário com base nos logs da Web.

MINERAÇÃO WEB

(KOSALA e BLOCKEEL apud MACHADO, 2002)

Page 9: Obtendo Informação Útil em Dados Semi-Estruturados da Web

9 / 38

• Estado da Arte

Extração e integração de informação obtida em

várias fontes de conteúdo;

Mineração de texto e categorização de páginas;

Análise de hyperlinks – técnicas e aplicações;

Ranking de páginas;

Compreensão do perfil de usuários e padrões de

navegação.

MINERAÇÃO WEB

(DESIKAN e outros, 2007)

Page 10: Obtendo Informação Útil em Dados Semi-Estruturados da Web

10 / 38

• O que são?Um conjunto de formatos de dados simples construídos sobre padrões existentes e adotados em larga escala. (ALLSOPP, 2007)

• Por quê?

- Resolver o problema de criação de uma semântica de marcação para a Web atual;

- Enquanto mecanismos mais complexos, como o RDF, não se estabelecem aplica-se a “lowercase semantic web”.

• Princípios Resolver um problema específico; Ser tão simples quanto possível; Primeiramente para humanos, depois para máquinas.

MICRO-FORMATOS

Page 11: Obtendo Informação Útil em Dados Semi-Estruturados da Web

11 / 38

• Especificações em Micro-formatos(µFs):

hCard: informações de contato de pessoas ou organizações.

hCalendar: informações de eventos (seminários, reuniões, etc).

XFN: relacionamentos entre pessoas (e.g., quem conhece quem, quem tem amigos em comum, etc).

hReview: revisões/avaliações na Web.

hResume: publicação de curriculum.

hGene: representação de genes (biologia).

geo: marcação de coordenadas geográficas.

Entre outras..

MICRO-FORMATOS

Page 12: Obtendo Informação Útil em Dados Semi-Estruturados da Web

12 / 38

• Exemplo hCardMICRO-FORMATOS

• Exemplo XHTML Friends Network (XFN)

Page 13: Obtendo Informação Útil em Dados Semi-Estruturados da Web

13 / 38

• Estado da Arte

Micro-formatos + RDF + OWL + GRDDL;

- Como em (QUINT et all, 2006), (SCHAPRANOW, 2006) e (THOMPSON et al, 2007).

Adoção pelos “gigantes” da computação e Internet;

- “We need microformats.” (Bill Gates)

Adoção pela indústria dos navegadores:

- Plugins Firefox: Operator, Tails Export

MICRO-FORMATOS

Page 14: Obtendo Informação Útil em Dados Semi-Estruturados da Web

14 / 38

• Estado da Arte

Serviços online e ferramentas de blogging;

- Technorati.com e plugin WordPress

Certa concordância com os preceitos da W3C;

- “The Semantic Web is an extension of the current Web in which information is given well-defined meaning, better enabling computers and people to work in cooperation.” (Tim Berners-Lee)

RDFa o “micro-formato oficial” da Web Semântica.

MICRO-FORMATOS

Page 15: Obtendo Informação Útil em Dados Semi-Estruturados da Web

15 / 38

Mineração Web e Micro-formatos: tendências.

(GOOGLE TRENDS, 2008)

(KHARE apud SCHAPRANOW, 2006)

Page 16: Obtendo Informação Útil em Dados Semi-Estruturados da Web

16 / 38

EXEMPLO PRÁTICO

• Cenário

Imagine que você precisa comprar um livro. Antes de sair navegando entre os diversos sites de editoras, livrarias ou lojas especializadas, você quer saber qual foi a avaliação de seus amigos, profissionais, ou especialistas sobre o livro.

Para isso, você acessa suas páginas pessoais ou blogs e analisa suas avaliações. Mas.. Quantas serão consideradas suficientes? Como encontrar estas informações? De que forma elas estarão disponíveis?

Independente do formato utilizado , o primeiro passo é centralizar todas as páginas e transformá-las em uma linguagem comum. Após isso, basta efetuar as consultas necessárias e obter suas respostas.

Page 17: Obtendo Informação Útil em Dados Semi-Estruturados da Web

17 / 38

EXEMPLO PRÁTICO• Metodologia

• Seleção de dados: escolha de avaliações publicadas na Web em páginas de lojas virtuais. Foi desenvolvido um formulário que mediante o preenchimento manual das avaliações gera automaticamente o código XHTML com o micro-formato hReview.

• Pré-processamento: inserção destes blocos de avaliações em um arquivo XHTML, formando um conjunto de dados de 60 (sessenta) avaliações diferentes. Validação do arquivo XHTML via serviço disponibilizado pelo W3C.

• Transformação: conjunto de dados XHTML para RDF utilizando um processamento GRDDL, através do GRDDL Service disponibilizado pelo W3C.

• Consultas e Mineração: foram realizadas consultas com a SPARQL no conjunto de dados RDF, permitindo que algumas interpretações simples fossem realizadas (ex., analisar as avaliações de determinado livro).

Uma destas consultas permite a geração de um arquivo ARFF, adequado para o software WEKA, possibilitando a aplicação de técnicas de Mineração de Dados para a identificação de padrões e formalização do processo de descoberta de conhecimento.

Page 18: Obtendo Informação Útil em Dados Semi-Estruturados da Web

18 / 38

EXEMPLO PRÁTICO

• Etapas da Metodologia

• Tecnologias Utilizadas

RDF API for PHP

Page 19: Obtendo Informação Útil em Dados Semi-Estruturados da Web

19 / 38

• DEMONSTRAÇÃO

Ambiente MicroMining

hReview Creator;

Arquivo de Revisões (XHTML+hReview);

Validação e Transformação;

Arquivo e Grafo RDF;

Consultas;

Arquivo ARFF;

Mineração de Dados no WEKA.

EXEMPLO PRÁTICO

Page 20: Obtendo Informação Útil em Dados Semi-Estruturados da Web

20 / 38

Ambiente desenvolvido para a realização do exemplo práticoMicroMining

Page 21: Obtendo Informação Útil em Dados Semi-Estruturados da Web

21 / 38

Formulário para a geração do conteúdo com micro-formatohReview Creator

Page 22: Obtendo Informação Útil em Dados Semi-Estruturados da Web

22 / 38

Trecho de código da avaliação (XHTML + hReview) gerado

Visualização no navegador do código gerado

Arquivo de Revisões (XHTML+hReview)

Page 23: Obtendo Informação Útil em Dados Semi-Estruturados da Web

23 / 38

Serviços utilizados para Validação e Transformação do conjunto de dados

Page 24: Obtendo Informação Útil em Dados Semi-Estruturados da Web

24 / 38

Visualização do conjunto de dados transformado e do grafo RDF

Page 25: Obtendo Informação Útil em Dados Semi-Estruturados da Web

25 / 38

Formulário para a realização de consultas SPARQL no conjunto de dados

Page 26: Obtendo Informação Útil em Dados Semi-Estruturados da Web

26 / 38

Resultado da consulta SPARQL que retorna todas as avaliações disponíveis

SELECT DISTINCT ?bookname ?rating ?title ?description ?name ?localityWHERE { ?element rev:hasReview ?review; vcard:ADR ?addr; vcard:FN ?bookname . ?review rev:reviewer ?reviewer; rev:rating ?rating; dc:title ?title; dc:description ?description . ?reviewer foaf:name ?name . ?addr vcard:Locality ?locality}

Page 27: Obtendo Informação Útil em Dados Semi-Estruturados da Web

27 / 38

Resultado da consulta SPARQL que retorna todas as avaliações de livros com nota maior que 4

SELECT ?bookname ?rating ?title ?description ?name ?locality WHERE { ?element rev:hasReview ?review; vcard:ADR ?addr; vcard:FN ?bookname . ?review rev:reviewer ?reviewer; rev:rating ?rating; dc:title ?title; dc:description ?description; rev:createdOn ?date . ?reviewer foaf:name ?name . ?addr vcard:Locality ?locality . FILTER(?rating > "4") }

Page 28: Obtendo Informação Útil em Dados Semi-Estruturados da Web

28 / 38

Resultado da consulta SPARQL que retorna todas as avaliações de livros cujo assunto é Java

SELECT ?bookname ?rating ?title ?description ?name ?locality WHERE { ?element rev:hasReview ?review; vcard:ADR ?addr; vcard:FN ?bookname . ?review rev:reviewer ?reviewer; rev:rating ?rating; dc:title ?title; dc:description ?description . ?reviewer foaf:name ?name . ?addr vcard:Locality ?locality .FILTER (REGEX(?bookname,

"java", "i")).}

Page 29: Obtendo Informação Útil em Dados Semi-Estruturados da Web

29 / 38

Resultado da consulta SPARQL que retorna todas as avaliações de pessoas que moram em Salvador

SELECT ?bookname ?rating ?title ?description ?name ?localityWHERE { ?element rev:hasReview ?review; vcard:ADR ?addr; vcard:FN ?bookname . ?review rev:reviewer ?reviewer; rev:rating ?rating; dc:title ?title; dc:description ?description . ?reviewer foaf:name ?name . ?addr vcard:Locality ?locality .FILTER(REGEX(?locality,

"Salvador", "i"))}

Page 30: Obtendo Informação Útil em Dados Semi-Estruturados da Web

30 / 38

Arquivo ARFF gerado após consulta SPARQL no conjunto de dados RDF

Page 31: Obtendo Informação Útil em Dados Semi-Estruturados da Web

31 / 38

Etapa de Mineração de Dados no WEKA

Visualização da quantidade de revisões por cidade (locality)

Visualização da quantidade de revisões por assunto

Page 32: Obtendo Informação Útil em Dados Semi-Estruturados da Web

32 / 38

Visualização da quantidade de revisões por cidade e assunto

Etapa de Mineração de Dados no WEKA

Visualização da quantidade de revisões por assunto e nota

(rating)

Page 33: Obtendo Informação Útil em Dados Semi-Estruturados da Web

33 / 38

Etapa de Mineração de Dados no WEKA

Resultado do processamento do algoritmo EM de clusterização.

Identificados 2 clusters no atributo assunto do livro

Identificados 2 clusters no atributo localidade

Identificado 1 cluster no atributo nome do livro

Page 34: Obtendo Informação Útil em Dados Semi-Estruturados da Web

34 / 38

Etapa de Mineração de Dados no WEKA

Notas(rating)

Assunto do livro

(booksubject)

Page 35: Obtendo Informação Útil em Dados Semi-Estruturados da Web

35 / 38

• Toda e qualquer maneira de dar maior significado ao conteúdo web beneficia a mineração de informação útil;

• O processo de descoberta de conhecimento ocorreu naturalmente, com maiores esforços na fase de pré-processamento dos dados;

• Extração e integração automática para obter um universo maior de revisões;

• Prova de conceito realizada com sucesso.

CONSIDERAÇÕES FINAIS

Page 36: Obtendo Informação Útil em Dados Semi-Estruturados da Web

36 / 38

Allsopp, John. Microformats: empowering your markup for web 2.0. New York: Springer, 2007.

Berners-Lee, Tim. Information Management: a proposal. 1989. Disponível em: <http://www.w3.org/History/1989/proposal.html>. Acesso em: 03 mar. 2008.

Berners-Lee, Tim; Hendler, James; Lassila, Ora. The Semantic Web: a new form of Web content that is meaningful to computers will unleash a revolution of new possibilities. Scientific American 284, pp. 34–43, 2001.

Brin, Sergey; Page, Lawrence. The Anatomy of a Large-Scale Hypertextual Web Search Engine. Computer Networks and ISDN Systems, v. 30, n. 1-7, pp. 107-117, April 1998.

Desikan, P., Srivastava, J., Kumar, V. and Tan, P. N., Hyperlink Analysis: Techniques and Applications. Technical Report 2002-0152, Army High Performance Computing and Research Center, 2002.

Desikan, Prasanna; Delong, Colin; Mane, Sandeep; Beemanapalli, Kalyan; Hsu, Kuo-Wei; Sriram, Prasad; Srivastava, Jaideep; Vanuturumilli, Vamsee. Web Mining for Business Computing. In: Handbook in Information Systems, 2007.

Dodds, Leigh. Introducing SPARQL: querying the semantic web. Disponível em: <http://www.xml.com/lpt/a/1628>. Acesso em: 20 fev. 2008.

Fayyad, Usama; Piatetsky-Shapiro, Gregory; Smyth, Padhraic. From Data Mining to Knowledge Discovery in Databases. Artificial Intelligence Magazine, American Association for Artificial Intelligence, 1996.

Google Search. Disponível em: <http://en.wikipedia.org/wiki/Google_search>. Acesso em: 23 fev. 2008.

GRDDL. Gleaning Resource Descriptions from Dialects of Languages. Disponível em: <http://www.w3.org/TR/grddl/>. Acesso em: 21 fev. 2008.

Halpin, Harry. Procedural versus Declarative Semantics on the Web: microformats, GRDDL, and RDFa. University of Edinburgh, 2007.

Khare, Rohit; Çelik, Tantek. Microformats: a pragmatic path to the semantic web. WWW 2006, Maio, 2006.

Kosala, R.; Blockell, H. Web Mining Research: a survey. SIGKDD Explorations, vol. 2, 2000. In: Machado, Letícia dos Santos. Mineração do Uso da Web na Educação a Distância. Dissertação de Mestrado, PUC/RS, PPGCC, 2002.

REFERÊNCIAS

Page 37: Obtendo Informação Útil em Dados Semi-Estruturados da Web

37 / 38

Machado, Letícia dos Santos. Mineração do Uso da Web na Educação a Distância: propostas para a condução de um processo a partir de um estudo de caso. Dissertação de Mestrado, PUC/RS, Programa de Pós-Graduação em Ciência da Computação, 2002.

Microformats. Website dos Micro-formatos. Disponível em: <http://www.microformats.org>. Acesso em: 20 fev. 2008.

Mobasher, Bamshad; Jain, Namit; Han, Eui-Hong; Srivastava, Jaideep. Web Mining: pattern discovery from world wide web transactions. University of Minnesota, Dept. Of Computer Science, Minneapolis, Technical Report TR 96-050, 1996. In: Machado, Letícia dos Santos. Mineração do Uso da Web na Educação a Distância. Dissertação de Mestrado, PUC/RS, PPGCC, 2002.

Nakahira, Katsuko T.; Matsui, Masashi; Mikami, Yoshiki. The Use of XML to Express a Historical Knowledge Base. In: WWW 2007, Canada, Maio 2007.

Quint, Vincent; Vatton, Irène; Flores, Francesc Campoy. Templates, Microformats and Structured Editing. Document Engineering 06, Out. 2006.

RDF. Resource Description Framework (RDF): Concepts and Abstract Syntax. W3C Recommendation, 2004. Disponível em: <http://www.w3.org/TR/rdf-concepts/>. Acesso em: 22 fev. 2008.

Rezende, Solange Oliveira. Mineração de Dados. [s.d.] Disponível em: <http://www.addlabs.uff.br/enia_site/dw/mineracaodedados.pdf>. Acesso em: 03 jan. 2008.

Schapranow, Matthieu-P. Microformats: a XML-document-immanent way for semantic annotations of web contents. University of Potsdam, Hasso-Plattner-Institute for IT Systems Engineering, 2006.

SPARQL. Query Language for RDF W3C Recommendation, 2008. Disponível em: <http://www.w3.org/TR/rdf-sparql-query/ >. Acesso em: 22 fev. 2008.

Stats. Internet World Stats. Disponível em: <http://www.internetworldstats.com/ stats.htm>. Acesso em: 22 fev. 2008.

WEKA. Waikato Environment for Knowledge Analysis. Disponível em: <http://www.cs.waikato.ac.nz/ ml/weka/>. Acesso em: 05 fev. 2008.

REFERÊNCIAS

Page 38: Obtendo Informação Útil em Dados Semi-Estruturados da Web

38 / 38(DESIKAN e outros, 2007)

Taxonomia da Mineração Web

Perspectiva do usuário

Perspectiva do

criador