1 / 62

Web Mining

Web Mining. Aplicação de técnicas de Mineração de Dados para descoberta de padrões na Web Motivações: Encontrar informação relevante Gerar conhecimento a partir da informação disponível na Web Personalizar a informação Aprender sobre consumidores ou usuários individuais.

hidi
Download Presentation

Web Mining

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Mining • Aplicação de técnicas de Mineração de Dados para descoberta de padrões na Web • Motivações: • Encontrar informação relevante • Gerar conhecimento a partir da informação disponível na Web • Personalizar a informação • Aprender sobre consumidores ou usuários individuais

  2. Abordagens de Web Mining • Mineração de conteúdo (Web content mining) • Extração de conhecimento do conteúdo de páginas e suas descrições • Mineração de estrutura (Web structure mining) • Obtenção de conhecimento a partir da organização da web e da referência cruzada de ligações. • Mineração de uso (Web usage mining) • Geração de padrões interessantes com o uso dos registros de acesso da web

  3. Mineração de conteúdo(Web content mining) Extração de conhecimento do conteúdo de páginas e suas descrições • Inclui a Mineração de texto (text mining) Aplicações • Classificação de textos • Detecção e acompanhamento de evento • Extração de regras

  4. Documentos não estruturados • Texto livre • Representação: bag of words • Palavras do texto são atributos • Booleano • Baseado em frequência • Ignora a sequência em que palavras aparecem • Usa estatísticas sobre palavras isoladas

  5. Outras formas de seleção: • Remover pontuação, palavras pouco frequentes, palavras muito frequentes • Stemming – extrair o radical das palavras • Outras formas de representação: • Posição da palavra no documento • N-grams (sequências de palavras de tamanho até n)

  6. Documentos semi-estruturados • Tem informação estrutural adicional (HTML e hiperlinks) no documento de hipertexto • Aplicações: • Classificação de hipertextos • Agrupamento • Aprendizado de relações entre documentos web • Extração de Padrões ou regras

  7. Mineração de estrutura(Web structure mining) • Tenta descobrir o modelo por trás da estrutura de links na web. • Informação extraída: • Links apontando para um documento podem indicar sua popularidade • Links saindo de um documento podem indicar a riqueza ou variedade de tópicos tratados pelo documento

  8. Estrutura típica • Páginas = nós, hyperlinks = arcos conectando páginas • Hyperlinks tem duas finalidades: • Permitir navegação • Apontar para páginas com “autoridade” no mesmo tópico da página contendo o link

  9. Estruturas interessantes

  10. Informações a serem extraídas: • Qualidade da página web • Autoridade de uma página • Ranking de páginas • Estruturas interessantes • co-citação, • escolha social, etc

  11. Mineração de uso (Web usage mining) • Aplicação das técnicas de mineração de dados para descobrir padrões de uso a partir de registros de acesso à web • Tendências: • extração de padrão geral de acesso • personalização

  12. Tendências - Definidas pelo tipo de aplicação: • Extração de padrão geral de acesso • Analisa dados do web log file e outras fontes para descobrir padrões e tendências de acesso • Pode ser usado para: • Reestruturação dos sites em grupos mais eficientes • Localizar pontos para propaganda mais efetiva • Direcionar campanhas específicas para usuários específicos

  13. Uso personalizado • Analisa tendências de usuários individuais • Pode ser utilizado para: • Personalizar dinamicamente a cada usuário, com base no padrão de acesso ao longo do tempo • a informação apresentada, • a profundidade do site e • o formato dos recursos

  14. Fontes de dados • Dados do servidor Web • Web server log • Cookies • Dados de consultas

  15. Dados do cliente • Agente remoto (Javascripts ou Java applets) • Modificação do código fonte de um browser • Requer a cooperação do usuário

  16. Dados do proxy • Web proxy atua como um nível intermediário entre browsers de clientes e servidores web • Pode ser usado para reduzir o tempo de carregar uma página web • Desempenho depende da habilidade de prever acessos futuros • Dados podem revelar requisição de múltiplos usuários a múltiplos servidores web

  17. Web server log • Tipos de logs • Error • Segurança • Referência • Browser (Agente) • Accesso • Formatos • Common Log • Extended log formats

  18. Exemplo: Web log #Software: Microsoft Internet Information Server 4.0 #Version: 1.0 #Date: 1999-12-25 00:00:21 #Fields: date time c-ip cs-username cs-method cs-uri-stem cs-uri-query sc-status sc-bytes cs(User-Agent) cs(Cookie) cs(Referer) 1999-12-25 00:00:21 194.237.174.119 - GET /issue1/jobs/Default.asp - 200 20407 AltaVista-Intranet/V2.3A+(www.altavista.co.uk+jan.gelin@av.com) - - 1999-12-25 00:03:39 194.237.174.119 - GET /statistics/ExpIntHits1.asp - 200 10519 AltaVista-Intranet/V2.3A+(www.altavista.co.uk+jan.gelin@av.com) - - 1999-12-25 00:26:54 209.67.247.158 - GET /robots.txt - 200 303 FAST-WebCrawler/2.0.9+(crawler@fast.no;+http://www.fast.no/…) - - 1999-12-25 00:32:47 194.237.174.119 - GET /issue2/default.asp - 200 5332 AltaVista-Intranet/V2.3A+(www.altavista.co.uk+jan.gelin@av.com) - - 1999-12-25 01:49:54 206.186.25.7 - GET /resources/images/main/bg.gif - 200 300 Mozilla/2.0+(compatible;+MSIE+3.02;+AK;+Windows+NT) ASPSESSIONIDGQQGQGAD=IIHCBIFDIECKPAPGICDEOJII;+SITESERVER=ID=22e0a17296b8c2ed1f77460cde75c27f http://www.exploit-lib.org/issue1/webtechs/ 1999-12-25 01:49:54 206.186.25.7 - GET /issue1/webtechs/Default.asp - 200 24659 Mozilla/2.0+(compatible;+MSIE+3.02;+AK;+Windows+NT) - http://www.statslab.cam.ac.uk/%7Esret1/analog/webtechs.html 1999-12-25 01:49:54 206.186.25.7 - GET /resources/images/main/global_home_h.gif - 200 487 Mozilla/2.0+(compatible;+MSIE+3.02;+AK;+Windows+NT) ASPSESSIONIDGQQGQGAD=IIHCBIFDIECKPAPGICDEOJII;+SITESERVER=ID=22e0a17296b8c2ed1f77460cde75c27f http://www.exploit-lib.org/issue1/webtechs/ 1999-12-25 01:49:54 206.186.25.7 - GET /resources/images/main/global_search.gif - 200 534 Mozilla/2.0+(compatible;+MSIE+3.02;+AK;+Windows+NT) ASPSESSIONIDGQQGQGAD=IIHCBIFDIECKPAPGICDEOJII;+SITESERVER=ID=22e0a17296b8c2ed1f77460cde75c27f http://www.exploit-lib.org/issue1/webtechs/ 1999-12-25 01:49:56 206.186.25.7 - GET /resources/images/main/local_home01.gif - 200 663 Mozilla/2.0+(compatible;+MSIE+3.02;+AK;+Windows+NT) ASPSESSIONIDGQQGQGAD=IIHCBIFDIECKPAPGICDEOJII;+SITESERVER=ID=22e0a17296b8c2ed1f77460cde75c27f http://www.exploit-lib.org/issue1/webtechs/

  19. Este arquivo de log mostra visitas ao web site Exploit Interactive de 00:00:00 em 25 de Dezembro de 1999: • A visit from an AltaVista robot in UK, downloading several text files • A visit from a FAST-Crawler robot in Norway • A visit from a PC (WinNT) user of an IE browser who followed a link at <http://www.statslab.cam.ac.uk/%7Esret1/analog/webtechs.html> and downloaded a HTML page and several images

  20. Conteúdo da Página Web server log 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET … HTTP/1.1" 200 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /gps.html HTTP/1.1" 200 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /jobs/ HTTP/1.1" 200 … Web Server Log – Exemplo KDnuggets.com Server http://www.kdnuggets.com/jobs/

  21. Web (Server) Log Uma linha (exemplo) do log 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /jobs/ HTTP/1.1" 200 15140 "http://www.google.com/search?q=salary+for+data+mining&hl=en&lr=&start=10&sa=N" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)“ 152.152.98.11 - - [16/Nov/2005:16:32:50 -0500] "GET /jobs/ HTTP/1.1" 200 15140 "http://www.google.com/search?q=salary+for+data+mining&hl=en&lr=&start=10&sa=N" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"

  22. Web log: IP 152.152.98.11 IP address – pode ser convertido para o nome do host, por exemplo: xyz.example.com

  23. Top-Level Domains (TLD) • A última parte do domínio é o TLD • TLD Generico • .com (comercial) – geralmente mas não necessariamente USA • .net (ISP, network providers) • .edu – US educacional, e.g. conncoll.edu • Outros: .gov (governo), .org (organizações sem fins lucrativos), …

  24. Top-Level Domains – código do país (ccTLD) Alguns dos mais comuns

  25. Web log: Name, Login - Name: nome do usuário remoto (normalmente omitido e trocado por um traço “-”) - Login: Login do usuário remoto (também é normalmente omitido e trocado por um traço “-”)

  26. Time: HH:MM:SS Time Zone: (+|-)HH00 relativo ao GMT Web log: Date/Time/TZ [16/Nov/2005:16:32:50 -0500] Date: DD/MM/AAAA

  27. Web log: Request "GET /jobs/ HTTP/1.1" Method: GET HEAD POST OPTIONS … Protocolo HTTP: e.g. HTTP/1.0 or HTTP/1.1 URL: Relativo ao domínio Nota: a requisição é armazenada como é enviada, assim, pode conter erros, falhas, e qualquer tipo de coisa estranha.

  28. Web log: Status code 200 Status (Response) code. Os mais importantes são: • 200 – OK (é o mais frequente, ainda bem!) • 206 – acesso parcial • 301 – redirecionamento permanente • 302 – redirecionamento temporário • 304 – não modificado • 404 – não encontrado • …

  29. Web log: Object size 15140 O tamanho do objeto retornado ao cliente (em bytes) Pode ser “-” se o código de status for 304

  30. Web log: Referrer http://www.google.com/search?q=salary+for+data+mining&hl=en&lr=&start=10&sa=N URL que da qual o visitante veio (neste exemplo é uma query do Google: “salary for data mining”, 2a. Página de resutados– começando de 10) Também pode ser uma página estática, interna, externa ou “-” no caso de uma requisição direta (bookmark, por exemplo) Esta é uma informação valiosa

  31. Web log: User agent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" User agent (browser) http://en.wikipedia.org/wiki/User_agent Por razões históricas, quase todos os browsers começam com Mozilla Em muitos casos pode-se ter informações adicionais: Browser type, version : MSIE 6.0 - Internet Explorer 6.0 OS: Windows NT 5.1 (XP SP2) with .NET Framework 1.1 installed

  32. Programas para análise de Web Log • Free • Analog, awstats, webalizer • Google analytics • (ver http://www.analog.cx/) • Comerciais • WebTrends, WebSideStory, … www.kdnuggets.com/software/web-mining.html

  33. Programas para análise de Web Log • Podem fazer análises e emitir relatórios como por exemplo: • lista de IPs conectados a um website • “pie chart” detalhando quais arquivos foram acessados com mais frequência, e muitos outros

  34. Itens identificados a partir dos dados coletados • Usuário • Click-streams – seqüência de requisições de acessos a páginas. Os dados disponíveis pelo servidor nem sempre fornece informação para reconstruir um click-stream completo para um site • Visões de páginas – uma única ação do usuário e pode consistir de vários arquivos: frames, gráficos, scripts. O usuário requer uma “web-page” e não cada um dos componentes.

  35. Sessões – click-stream de páginas para um único usuário por toda a web. Tipicamente, apenas a parte de cada sessão de usuário acessando um site específico pode ser usada para análise, pois informações de acesso não são públicas.

  36. Visita ou sessão do servidor – conjunto de acessos a páginas em uma sessão de usuário para um web site em particular. • Um conjunto de visitas é a entrada necessária para qualquer ferramenta de análise de uso ou de mineração de dados. • Episódios – subconjunto de uma sessão de usuário ou de servidor que tem significado semântico.

  37. Processo de Web usage mining • Pré-processamento • Descoberta de Padrões • Análise de Padrões

  38. Processo de Web Usage Mining • Pré-processamento • Consiste em converter os dados disponíveis nas várias fontes de dados identificando itens necessários para a descoberta de padrões. • Considerada a etapa mais difícil em Web usage mining devido aos dados disponíveis não serem completos

  39. Pré-processamento • Identificar: • Usuários • Sessões do servidor • Usando: • Endereço de IP • Agente • Cadeia de requisições (click-streams)

  40. Identificação de usuários Problemas: • IP único / Múltiplas sessões de servidor • Um proxy pode ter vários usuários acessando um Web site, no mesmo período de tempo – registros do usuário não serão sequenciais nem no tempo correto. • Múltiplos IPs / Sessão de servidor única • por motivo de segurança, o provedor pode atribuir aleatoriamente um entre vários endereços de IP a cada requisição de um usuário.

  41. Múltiplos IP / Usuário único • um usuário que acessa a Web de máquinas diferentes terá IPs diferentes a cada sessão, dificultando registro de visitas repetidas do mesmo usuário. • Múltiplos agentes / Usuário único • o usuário pode usar diferentes browsers, de uma mesma máquina, pode parecer mais de um usuário.

  42. Exemplo- web server log

  43. Identificação de usuários Soluções: usar • Cookies • logins • IP/agentes/caminhos

  44. Identificação de sessões • (depois de identificados cada usuário) • Dividir o click-stream de cada usuário em sessões • Dificuldades: • saber quando um usuário saiu de um website • Requisições de outros websites não estão disponíveis • Usar intervalo de tempo

  45. Inferir referências a páginas em cache • Exige monitoramento de uso do lado do cliente • O campo de referência pode ser usado para detectar quando paginas em cache foram vistas

  46. Referência a páginas com cópias locais

  47. Exemplo • IP 123.456.78.9 é responsável por 3 sessões • IPs 209.456.78.2 e 209.45.78.3 são responsáveis por uma sessão. • Usando informações de referência e agente, linhas 1 a 11 podem ser divididas em: A-B-F-O-G L-R A-B-C-J • Complementando os caminhos seriam adicionadas páginas: A-B-F-O-F-B-G L-R A-B-A-C-J

  48. Registros de tempos de acesso errados no servidor Tempo de acesso real

  49. Visitas a páginas não registradas no sevidor

More Related