1 / 47

Web Usage Mining

Web Usage Mining. Fábio Ávila Rêgo Pessoa Mariano Cravo Teixeira Neto CIn-UFPE. Web: repositório de informação. Sem padronização Enorme Documentos de todo tipo Informação de links Informação de uso e acesso Amplamente distribuído Muito heterogêneo Não estruturado / semi-estruturado

misae
Télécharger la présentation

Web Usage 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 Usage Mining Fábio Ávila Rêgo Pessoa Mariano Cravo Teixeira Neto CIn-UFPE

  2. Web: repositório de informação • Sem padronização • Enorme • Documentos de todo tipo • Informação de links • Informação de uso e acesso • Amplamente distribuído • Muito heterogêneo • Não estruturado / semi-estruturado • Inter-conectado • Em evolução • De hipertextos e hipermídia

  3. WWW: Fatos • Crescendo e mudando muito rapidamente • Um servidor WWW a cada 2 horas • 5 milhões de documentos em 1995 • 320 milhões de documentos em 1998 • Mais de 1 bilhão em 2000 • Índices se tornam inadequados muito rapidamente • Necessidade para uma melhor descoberta de recursos e extração de conhecimento

  4. Web: Características • Problemas: • O problema da "abundância" • 99% da informação não é do interesse de 99% das pessoas • Cobertura limitada da web • Recursos da web escondidos • Maioria dos dados em SGBD's • Interface de consulta limitada, baseada em buscas por palavra-chave • Customização limitada para usuários individuais

  5. Web Mining: Taxonomia Web Mining Web Content Mining Web Structure Mining Web Usage Mining Web Page Content Mining Search Results Mining General Access Pattern Mining Customized Usage Tracking

  6. Tarefas de Mineração de Conteúdo • Heterogêneo • Envolve técnicas e outras áreas de computação não tradicionalemente incluídas em mineração de dados • Information Retrieval

  7. Engenho de busca especializados em tipos de páginas específicos • Ahoy! (1996-2000) – "achador de homepages" • Motivação: Altavista muito impreciso. Directories pouco dinâmicos • Entrada: nome de uma pessoa e instituição • Analisa resultados de vários motores de busca • Resultados analisados sintaticamente usando heurísticas • "Adivinhar" a URL usando heurísticas • Massa de teste • Execução: 9s. • 74% sucesso com top reference / 9% guess URL. • Altavista: 58% sucesso (dos quais 23% top reference) • Shopbot • Agente de compras • Identifica listas de preço e ofertas especiais. • Aprende a reconhecer estruturas de documentos de catálogos on-line e sites e e-commerce. • Tem que se ajustar às mudanças de conteúdo das páginas.

  8. Linguagem de consulta para Web Restructuring • WebOQL (1998) • Linguagem de consulta declarativa • Funcional e select-from-where • Retorna informações dentro de documentos Web. • Estrutura básica: hyperlink • Árvores ordenadas com arcos nomeados • Arco interno: objetos estruturados • Arco externo: referências (links) • Exemplo: • select [y.Title, y'.Url] • from x in csPapers , y in x' • where y.Authors ~"Smith"

  9. Minerar o que o Motor de Busca acha • Motores de Busca atuais: preprocessadores convenientes para mineração • Baseado em palavra-chave, retorna respostas demais, respostas de baixa qualidade, ainda falta muito, não customizado, etc. • Data Mining irá ajudar: • Cobertura: "Aumente e depois encolha", usando sinônimos e hierarquias conceituais • Filtragem colaborativa: preferências de usuário/dicas. • Análise de links: páginas confiáveis e clusters • Linguagens baseadas na web: XML+WebSQL_WebML

  10. Refinando e Agrupando Resultados do Motor de Busca • WebSQL (Mendelzon et.al., 1996): linguagem estilo SQL para extrair documentos pertinentes • Estrutura básica: • Documents • Anchors • Select-from-where • Exemplo: • SELECT d.url, e.url, a.label • FROM Document d SUCH THAT "www.mysite.start" ->* d, • Document e SUCH THAT d => e • Anchor a SUCH THAT a.base = d.url • WHERE a.href = e.url • Algoritmo cria hierarquia conceitual (caso usar clustering hierarquico)

  11. Ontologia de Resultados de Busca • Ainda há resultados demais em respostas típicas de motores de busca • Reorganizar os resultados usando uma hierarquia semântica (Zaiane et.al., 2001) • Mapeia resultados em hierarquias conceituais pré-existentes (manualmente desenvolvidas, ex, WordNet, Mikrocosmos)

  12. Web Structure Mining • Web Structure Mining é extrair conhecimento das interconexões dos documentos. • Enorme quantidade de anotações humanas escondidas • Podem ajudar a inferir noções de "autoridade" em um tópico. • Descoberta de páginas influentes e dominantes na WWW. • HyPursuit (Weiss et.al., 1996) • Agrupamento hierárquico • Usa relações baseadas no conteúdo e nos links • Grau de similaridade proporcional ao: • Número de termos, ancestrais e descendentes em comum • Número de links entre documentos

  13. Busca por Páginas Influentes • Método em procedência de jornalismo / biblioteconomia: • O fator de impacto de Garfield (1972): provê uma avaliação numérica na citação de jornais. • Kwok (1975): uso de títulos de citações leva a uma boa separação de cluster

  14. Hyperlink Induced Topic Search (HITS) • Algoritmo de Jon Kleinberg, 1998, Cornell University • Boa autoridade: página apontada por bons hubs • Bom hub: página que aponta para boas autoridades • Duas etapas principais: • Amostra: constrói coleção de páginas candidatas • Propagação de pesos: determina estimativas numéricas de pesos de hub e autoridades. • Saída: Lista de páginas • Com pesos mais altos de hub • Com os pesos de autoridade mais altos.

  15. Etapas do algoritmo HITS • Começando de uma consulta convencional, HITS monta um conjunto inicial S de páginas • O conjunto S é o conjunto raiz. • As páginas são expandidas para um conjunto raiz T adicionando páginas que estão ligadas de ou para qualquer página no conjunto inicial S. T S

  16. Etapas do algoritmo HITS • HITS então associa com cada página p um peso de hub h(p) e um peso de autoridade a(p), tudo inicializado para um. Conjunto S Conjunto T

  17. Etapas do algoritmo HITS • Mesma idéia do que o EM: dados atualizam pesos que atualizam dados etc... • HITS então iterativamente atualiza os pesos de hub e autoridade de cada página • Faça pq denotar "a página p tem um link para a página q". HITS atualiza os hubs e autoridades da seguinte forma:

  18. Melhorias para o HITS • Deficiências do HITS • Computação puramente baseada em links na primeira etapa • Depois, nenhuma relação aos termos da consulta. • Links de uma página hub propagam o mesmo peso • Não resolve bem hubs com múltiplos tópicos. • Sistema CLEVER (Chakrabarti, et.al.,1998-1999) • Extensão 1: mini-hub pagelets • Previne "topic drifting" • Conjuntos contíguos de links ao invés de páginas inteiras • Extensão 2: texto âncora • Usar texto dos href's • Aumento os pesos dos links que ocorrem perto de instâncias de termos de consulta

  19. Connectivity Server • Connectivity Server (Bharat et.al., 1998) também extrai informação de links • Conjunto Base do HITS e CLEVER • 200 páginas resultantes da busca do Altavista • Conjunto Base do Connectivity Server • Todas as páginas retornadas pelo AltaVista • Operação • Servidor aceita consulta que leva a um conjunto L de um ou mais URL's • Servidor retorna lista de predecessores e sucessores das páginas de L • Usando essa informação, Connectivity Server inclui informação sobre todos os links que existem entre as páginas da vizinhança.

  20. b1 s1 f1 b2 s2 f2 ... ... ... bk sk fk Back Set Start Set Forward Set

  21. Connectivity Server • O grafo da vizinhança é o conjunto de: • Páginas iniciais L • Predecedores de L • Sucessores de L • Arestas entre eles. • Método de Kleinberg (HITS) é usado para computar ranking. • Filtragem de outlier (Bharat & Henzinger 1998-1999) • Integra conteúdo textual • Nós no grafo da vizinhança são vetores de termo. • Durante a expansão do grafo, podam nós distantes do vetor de termos da consulta. • Evita contaminação de links irrelevantes.

  22. Ranking de páginas baseado na popularidade • O método de rank de páginas (Brin e Page, 1998) • Fazer o rank da "importância" das páginas Web, baseada em um modelo de um "browser aleatório" • Inicialmente usada pra selecionar páginas para revisitar pelo crawler • Fazer o ranking das páginas em resultados de busca do Google. • Em um web crawl simulado, seguindo um link randômico de cada página visitada pode levar à revisita de páginas populares (páginas frequentemente citadas). • Brin e Page vêm pesquisas na Web como caminhadas aleatórias para atribuir "rank" independente de tópico a cada página na WWW, que pode ser usada para reordenar a saída de um motor de busca. • O número de visitas a cada página é seu PageRank. PageRank estima a taxa de visitação => nota de popularidade.

  23. Ranking de páginas baseado na popularidade • Cada página p tem um número de links saindo dele C(p) (C para citação), e número de páginas apontando para a página p1,p2,...pn. • PageRank de P é obtido por

  24. Comparação • Google atribui rankings iniciais e os guarda independentemente de quaisquer consultas. Isso torna ele mais rápido. • CLEVER e Connectivity Server monta conjuntos raiz diferentes para cada termo de procura e prioriza aquelas páginas no contexto da consulta particular. • Google trabalha na direção para frente de link em link. • CLEVER e Connectivity Server olha tanto na direção para frente quanto para trás. • Tanto as metodologias de páginas de rank de páginas e hub/autoridades têm mostrado prover qualitativamente bons resultados de procura para tópicos de consulta muito amplos na WWW.

  25. Links de Nepotismo • Links de nepotismo são links entre páginas que estão presentes por razões outras que mérito • Spamming é usado para enganar motores de busca para dar rank alto para alguns documentos • Alguns motores de busca usam links para dar o rank de documentos (ex. Google) • Necessário para identificar e descartar links nepotistas • Reconhecer links de nepotismo na Web (Davidson 2000) • Davidson usa o algoritmo de classificação C4.5 em um grande número de atributos de página, treinados em páginas manualmente rotuladas

  26. Introdução • Web Mining: Descoberta e análise de informações úteis a partir da WWW. • Web Content Mining (WCM) • Busca automática de fontes informaç₧o online. • Web Usage Mining (WUM) • Descoberta de padrões de acesso de usuários em Servidores Web (e.g. Apache)

  27. Logs de Servidores Web • Servidores Web registram todas as ações dos usuarios em um web site. • Ferramentas comerciais fornecem: • Relatório de hits e bytes transferidos • URLs mais acessadas • Lista de browsers mais usados pelos usuários • Hits por hora/dia/semana/mês. • Lista de erros. • Árvore de diretórios acessados

  28. Necessidade de minerar Web logs • Logs de acesso registram várias informações para cada acesso. • A quantidade de acessos registrados, dependendo do site, pode ser enorme. • É a descoberta automática de padrões de acessos de usuários através da análise de logs de Servidores Web.

  29. Aplicações de Web Usage Mining • Proporciona: • Ganho de performance do servidor • Melhora a navega₤₧o dentro do site • Melhora o design da aplica₤₧o web. • Direcionam os clientes no comércio eletrônico • Identificam locais privilegiados para propaganda

  30. Status Códigos: 404,505,303... Tamanho Referência Página de origem do link Agente Browser + SO Cookie Web Log • Informações normalmente contidas em logs de Servidores Web: • IP • User Id • Timestamp • Método • GET, POST • Path (URL)

  31. Análise do Weblog • Weblog pode: • Minerado e ser analisado multidimensionalmente • para marketing eletrônico • de forma análoga • a dados de um banco de vendas tradicional • Diferenças essenciais: • Dados semi-estruturados • Imprecisão

  32. Informações faltando em WebLog • Utiliza₤₧o de funções dos browsers (ex.: voltar a página anterior, scrolling up/down...) • Requisição de páginas que estavam em cache • Requisição de páginas que estavam em um servidor proxy

  33. Problemas quanto a páginas dinâmicas • CGI: dispara executável que esconde a interação real do usuário com o site • Diferentes ações de usuários levando ao mesmo CGI • Mesma ação do usuário, em horas diferentes, levando a CGIs diferentes • Um usuário usando mais de um browser por vez. • Etc...

  34. Ferramentas comerciais de análise de WebLog • Fornecem • Freqüência de erros • Agrupar ações em atividades • Ex.: Ler mensagens, etc... • Obter freqüência de ações individuais por usuário, domínio e sessão. • Quais componentes do site são mais/menos acessados? • Quais s₧o os eventos mais freqüentes? • Há diferença de perfis de usuários de domínios diferentes no Website?

  35. Análise aprofundada: Análise de padrões (entre usuários, etc...). Análise de tendências: comportamento X tempo tráfego de rede X tempo etc... Questões que podem ser respondidas pela análise em profundidade: Em que contexto os componentes do Website são utilizados? Seqüências de eventos mais comuns? Diferenças de uso do site entre os usuários? Diferenças de uso do site no decorrer do tempo? Mudanças de comportamento dos usuários no decorrer do tempo? Distribuição do tráfego de rede com o tempo? Análise Mais Aprofundada Do Que Ferramentas Comerciais

  36. Preparação de Dados • Pré-processamento dos dados • Problemas: • Identificar os tipos das páginas: páginas de conteúdo ou páginas de navegação. • Identificar visitantes. • Identificar sessão, transação, seqüências, etc... • Inferir páginas de cache

  37. Problemas • Identificando visitantes: • Login, cookies, combinações de endereço IP, agente, caminho percorrido... • Identificação de sessão: • N₧o se sabe quando um usuário sai do site. Usa-se o tempo de inatividade como heurística (20 ou 30 minutos sem uso). • Identificando ações de usuários: • Análise de caminhos e parâmetros.

  38. Uso do Conteúdo e da Estrutura durante limpeza de Dados • Estrutura: • É necessário conhecer estrutura do web site a minerar para analisar a sessão e as transações do usuário. • Ex.: Grafo de links entre as páginas. • Conteúdo: • O conteúdo das páginas visitadas pode dar idéias de como realizar a limpeza e seleção dos dados. • Ex: Agrupar páginas de transação por conteúdo • O conteúdo de páginas dá pistas sobre o tipo da página: • Ex.: Página de navegação ou de conteúdo.

  39. Clustering • Agrupando objetos que possuem características similares: • Agrupamento de transações: • Agrupar comportamentos sem se importar com conteúdo da transação ou com a identidade do usuário. • Agrupamento de páginas e caminhos • Agrupar páginas visitadas baseadas no conteúdo e usuários • Agrupar visitantes • Agrupar usuários de mesmo comportamento.

  40. Classificação e associação • Regras de classificação de visitantes • Categorizar visitantes através da seleção de características do site que melhor descrevem seus comportamentos. • Ex.: 40% dos visitantes que compram livros técnicos em Recife têm entre 19 e 25 anos, e compram depois das 19:00. • Regras de associação • entre sessões e dentro das sessões

  41. Sistemas de Web Usage Mining • Gerais: • WebLogMiner (Zaïane et al, 1998) • WUM (Spiliopoulou et al, 1998) • WebSIFT (Cooley et al, 1999) • Sites Adaptativos (Perkowitz et al, 1998) • Personalização e recomendação: • WebWatcher (Joachims et al, 1998)

  42. Exemplo de processo de mineração de web log • O Web log deve ser filtrado para gerar dados para um banco de dados convencional (relacional, OR, OO) • Gerar um datacube a partir do banco de dados • Usar ferramentas OLAP para realizar ações de drill-down e roll-up no cubo • Extração de conhecimento (OLAM)

  43. IP, Usuário, Timestamp, M₫todo, Arquivo+parâmentros, Status, Tamanho Máquina, Domínio da Internet, Usuário, dia, mês, ano, hora, minuto, segundo, método, arquivo, parâmetro, status, tamanho Estrutura do Site Máquina, Domínio da Internet, Usuário, Field Site, dia, mês, ano, hora, minuto, segundo, Resource, Módulo/Ação, status, tamanho, Duração Limpeza dos Dados e Transformação Transformação e limpesa dos dados Banco de Dados

  44. Conclusão • Usar o log gerado pelo servidor Web pode ajudar a entender o comportamento do usuário e assim melhorar o funcionamento do site (design, aplicação, etc) • Nem sempre o log tem informações suficientes • OLAP proporciona a visualização em diferentes perspectivas e em diferentes níveis. • Web Usage Mining oferece relatórios mais detalhados sobre o uso do site.

  45. Web Content Mining • Web Page Content Mining • Web Page Summarization • WebLog (Lakshmanan et.al., 1996) • WebOQL (Mendelzon et.al., 1998) • Pode identificar informações dentro de determinadas páginas • Ahoy! (Etzion et.al., 1997) • Usa heurísticas para distinguir páginas pessoais de outras páginas da web • ShopBot (Etzion et.al., 1997) • Procura por preços de produtos dentro de páginas da web. • Search Result Mining • Resumo de resultados de motores de busca • "Clustering Search Result (Leouski and Croft, 1996, Zamir e Etzioni, 1997) • Categoriza documentos usando frases em títulos e fragmentos

  46. Web Structure Mining • Usando Links • Hypursuit (Weist et.al., 1996) • PageRank (Brin et.al., 1998) • CLEVER (Chakrabarti et.al., 1998) • Usa interconexões entre páginas web para dar peso às páginas • Usando Generalização • MLDB (1994), VWV (1998) • Usa uma representação multi-nível em banco de dados da web. Contadores (popularidade) e listas de link são usados para capturar a estrutura.

  47. Web Usage Mining • General Access Pattern Tracking • Conhecimento a partir da navegação da página web (Shahabi et.al., 1997) • WebLogMining (Zaiane, Xian e Han, 1998) • SpeedTracer (Wu, Yu, Ballman, 1998) • Wum (Spiliopiolou, Faulstich, 1998) • WebSIFT (Cooley, Tan, Srivastave, 1999) • Usa técnicas de KDD para entender padrões gerais de acesso e tendências. Pode dar luz a melhores estruturas e agrupamento de provedores de recursos assim como melhorias de rede e cacheamento. • Customized Usage Tracking • Sites Adaptativos (Perkowitz & Etzioni, 1997) • Analisa padrões de acesso de um usuário por vez. O site da web se re-estrutura automaticamente aprendendo de padrões de acesso do usuário. • Personalização (SiteHelper: Ngu & Wu, 1997. WebWatcher: Joachims et.al., 1997, Mobasher et.al., 1999) • Provê recomendações aos usuários web

More Related