370 likes | 632 Views
Web Mining. Disciplina de Mineração de Dados CIn-UFPE Franklin Ramalho Rodrigo Cunha. Roteiro. Motivação e Contexto Taxonomia Web Content Mining Web Structure Mining Web Usage Mining Softwares no Mercado Considerações Finais. Motivação - Web. Conteúdo + Hyper-links Sem padronização
E N D
Web Mining Disciplina de Mineração de Dados CIn-UFPE Franklin Ramalho Rodrigo Cunha
Roteiro • Motivação e Contexto • Taxonomia • Web Content Mining • Web Structure Mining • Web Usage Mining • Softwares no Mercado • Considerações Finais
Motivação - Web • Conteúdo + Hyper-links • Sem padronização • Heterogênea • Não estruturado / semi-estruturado • Enorme • Amplamente distribuído • Em evolução
Motivação - Web • 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
Web • 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 • 400 a 500 vezes maior que a Web estática • Interface de consulta limitada, baseada em buscas por palavra-chave e navegação em links
WWW e Web Mining • Web é uma grande coleção de informação: • Documentos • Hiper-links • Acesso e uso da informação • A parte relevante desta informação, o conhecimento, está escondida e precisa ser descoberta
Usuário Resultado Consulta Interface Documentos + URLs Casamento de Termos BI BI Índices + URLs Robôs Exemplo de aplicação prática • Recuperação da Informação • Engenhos de Busca (Google, AltaVista, etc) Baixa Precisão e Baixa Cobertura Web
Exemplo de aplicação prática • Engenhos de Busca • Ineficientes: Baixa precisão e cobertura • Precisam descobrir documentos relevantesescondidos • Data Mining vai ajudar em vários aspectos: • Análise de links • Criação de linguagens baseadas na Web • Personalização • Classificação • Clustering • Encontrar melhores primitivas de busca • Melhorar a eficiência (precisão e cobertura) • Outros exemplos: Sites de e-commerce, chats, sites de entretenimento, portais genéricos, etc.
Web Mining: Taxonomia Web Mining Web Content Mining Web Structure Mining Web Usage Mining
Web Content Mining • Sumarização de páginas • Classificadores • Ahoy • Atualização de páginas na Web • Wrappers • ShopBot • Linguagens de Consultas • WebLog • WebOQL
Web Content Mining • Ahoy! (1996-2000) – "achador de homepages" • Motivação: Altavista muito impreciso. Diretórios pouco dinâmicos • Entrada: nome de uma pessoa, país e instituição • Analisa resultados de vários motores de busca • Resultados analisados sintaticamente usando heurísticas • Páginas que contêm frases como "home page” • http://www.help4web.net/search/eMail/Ahoy.html • 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. • http://www.edgegain.com
Web Content Mining • WebOQL (1998) • Linguagem de consulta declarativa • Baseada em select-from-where • Retorna informações dentro de documentos Web. • Exemplo: • select [x.Titulo] • from x in "books.html" • where x.Autor = ”John Smith“ • Select [x.Text] • from x in “papers.html” • where x.Tag=“H2” • WebSQL - Exemplo: • Recuperar o título e a URL de todos os documentos que são apontados pelo documento cuja URL é http://www.somewhere.com SELECT d.url, d.title FROM Document d SUCH THAT ”http://www.somewhere.com" -> d • API para Java
Web Structure Mining • Como achar os principais engenhos de busca? • Consulta “search engines” • Extrair conhecimento das interconexões dos documentos. • Navegação • Recomendação • Citação • Descoberta de páginas influentes e importantes na WWW.
Web Structure Mining • Hyperlink Induced Topic Search (HITS) • Algoritmo de Jon Kleinberg, 1998, Cornell University • Problema • Qualidade das respostas para consultas genéricas em engenhos de busca • Os engenhos de busca consideram apenas palavras-chave do texto • Consulta: “search engine” • Como ficam as páginas como Google e Altavista, por exemplo? • Hubs e autoridades • Boa autoridade: página apontada por bons hubs • Bom hub: página que aponta para boas autoridades • Algoritmo aplicado em dois passos: construção do conjunto de páginas candidatas e propagação de pesos
Etapas do algoritmo HITS • Primeiro passo: construção das páginas candidatas • Começando de uma consulta convencional, HITS monta um conjunto inicial S de páginas, o conjunto raiz. • As páginas são expandidas para um conjunto T adicionando páginas que estão ligadas de ou para qualquer página no conjunto inicial S. T S
å = a ( p ) h ( q ) ® q p å = h ( p ) a ( q ) ® p q Etapas do algoritmo HITS • Segunda passo: propagação de pesos • Cria um vetor de hubs e um vetor de autoridades • HITS então associa com cada página p um peso de hub h(p) e um peso de autoridade a(p), tudo inicializado com o valor um. • HITS então iterativamente atualiza os pesos de hub e autoridade de cada página • Ë aplicada, então, uma normalização para todos os pesos • Considerando que pq denota que a página p tem um link para a página q, HITS atualiza os hubs e autoridades da seguinte forma:
Melhorias para o HITS • O HITS devolve um conjunto de páginas com altos hubs e/ou altos valores de autoridade • Deficiências do HITS • Cálculo é feito on-line • O conteúdo dos links é ignorado • Sistema CLEVER (Chakrabarti, et.al.,1998-1999) • Estende o HITS • Combina a informação existente tanto no conteúdo como na informação do link • Considera o texto da âncora da página, aumentando os pesos para aquelas cujo texto casa com termos da consulta • Divide conjunto de links de uma página em sub-conjuntos de mini-hubs
Web Structure Mining • HyPursuit (Weiss et.al., 1996) • Engenho de busca que utiliza clustering de hipertexto baseado no conteúdo e nos links das páginas web • A função de similaridade do algoritmo de clustering é proporcional ao: • Grau de similaridade dos termos. • Grau de similiaridade da estrutura de hiperlinks – ancestrais e descendentes em comum, além do caminho de links entre os documentos (grau de conectividade)
Links de Nepotismo • Spamming – poluição de páginas web com termos que não são texto • Com o uso de algoritmos como HITS, Clever, Page Rank, dentre outros, muitos links “tendenciosos” surgiram • Abordagens para combater o problema • Não considerar páginas de mesmo host, mesmo ip • Manter uma lista de páginas que abusam de links • Manter um limiar para o número de backlinks
Web Usage Mining (WebLog) • Descoberta do comportamento de acesso de usuários a sites na Web usando técnicas de mineração de dados. • Geralmente usa-se o LOG do Servidor Web como dados de entrada. • CRM (Customer Relationship Management) analítico na Web. • Exemplos: Amazon.com Siciliano
Motivação do WebLog Por que Amazon.com e Sicilianofazem WebLOG? • Conhecer melhor o consumidor. • Melhorar o relacionamento com o cliente. • Fidelizar o Cliente • Satisfação do cliente • Maior Retorno Financeiro
KDD x Web KDD Difere basicamente pela natureza dos dados.
Natureza dos Dados • Parte crítica do Web Usage Mining. • Perda de informação quando os dados são coletados no servidor (caching). • Privacidade do usuário. • Identificação do acesso de usuários (natureza sem estado). • Não se sabe o momento da saída do usuário.
Preparação dos Dados Informações poderiam ser mais ricas: • Movimento do mouse durante o acesso. • Movimento da barra de rolagem. • Momento da mudança do site. • Integração dos dados de Conteúdo e Estrutura.
Tipo de Dados • Dados de uso da Web • Dados de Conteúdo • Dados de estrutura • Dados de Perfil do usuário Ideal: Combinação de todos os tipos de dados
Onde obter os dados? Servidor: Múltiplos usuário em um site. Cliente: Um cliente em vários sites. Proxy: Vários usuários em vários sites.
Aplicações Exemplos: Consultas OLAP: Qual a área do site mais acessada por usuários por turno: manhã, tarde e noite? Regras de Associação: 40% dos clientes que acessam o link download também acessam o link de preços de produtos. Classificação: Ao entrar no site o cliente é classificado em um dos possíveis padrões de página, baseado no seu perfil de acesso.
Softwares no Mercado • Web Usage Mining: • Analog (http://www.analog.cx) • WUN 6.0 (http://ebusiness.hhl.de/research/wum) • Clementine (http://www.spss.com/SPSSBI/Clementine) • Web Content Mining: • Sav Z Server (http://savtechno.com) • mnoGoSearch (http://mnogosearch.org) • Web Structure Mining: • Clementine (http://www.spss.com/SPSSBI/Clementine)
Exemplo Prático Exemplo: Encontrar associações entre links do site da UOL.
Exemplo Prático Exemplo: Encontrar associações entre links do site da UOL.
Exemplo Prático Exemplo: Encontrar associações entre links do site da UOL. Possíveis resultados: • 55% dos clientes que acessam o link “Amigos Virtuais” não passam mais que 5 minutos no site. • 70% dos clientes que clicam no item de compras são clientes do UOL. • 50% dos clientes que acessam o link “Esportes” também acessam o link “Carros”.
Exemplo Prático Baseado no conhecimento adquirido: 50% dos clientes que acessam o link “Esportes” também acessam o link “Carros”. Por que não colocar uma chamada na página do UOLcarros das principais notícias do esporte no dia?
Considerações Finais • Web: Enorme quantidade de dados, mas pouco conhecimento • Web Mining: Descobrir este conhecimento para melhorar eficiência de diversas aplicações da Web • Web Mining não é só texto HTML • Web Mining = Web Content + Web Structure + Web Usage • Aplicação isolada de uma sub-área deixa lacunas • Web Content e Web Structure tratam dados genéricos • Web Usage se concentra em dados privativos • Web Usage é usado principalmente em marketing na melhoria do relacionamento com o cliente. • Poucas empresas tem um processo de WebLog • Muita informação não capturada como: movimento do mouse, barra de rolagem e momento da mudança do site