Detecção de Réplicas de Sítios Web Usando Aprendizado Semi-supervisionado baseado em Maximização de Expectativas. Cristiano Rodrigues de Carvalho

Documentos relacionados
Rickson Guidolini Orientador: Nivio Ziviani Co-orientador: Adriano Veloso

DETECÇÃO DE RÉPLICAS DE SÍTIOS WEB USANDO APRENDIZADO SEMISSUPERVISIONADO BASEADO EM MAXIMIZAÇÃO DE EXPECTATIVAS

VERIFICAÇÃO DE UNICIDADE DE URLS EM COLETORES DE PÁGINAS WEB

DETECÇÃO DE RÉPLICAS DE SÍTIOS WEB EM MÁQUINAS DE BUSCA USANDO APRENDIZADO DE MÁQUINA

Escalonamento de Atualizações de Páginas Web Usando Programação

Aprendizado de Máquinas. Introdução à Aprendizado Não- Supervisionado

Máquinas de Vetores de Suporte

Fundamentos de Mineração de Dados

Aprendizado de Máquina. Combinando Classificadores

Thiago Zavaschi Orientador: Alessandro Koerich Programa de Pós-Graduação em Informática (PPGIa) Pontifícia Universidade

SEMINÁRIO Visão Computacional Aluno: Afonso Pinheiro

AUTOMATED ASSESSMENT OF BREAST TISSUE DENSITY IN DIGITAL MAMMOGRAMS

Inteligência Artificial

Agregação de Algoritmos de Aprendizado de Máquina (AM) Professor: Eduardo R. Hruschka Estagiário PAE: Luiz F. S. Coletta

Máquinas de Vetores de Suporte

Capítulo 4. Comitê BAS 35

Conceitos de Aprendizagem de Máquina e Experimentos. Visão Computacional

Análise Estatística e Topológica do Webgraph

Aprendizado de Máquina

POLVO-IIDS: Um Sistema de Detecção de Intrusão Inteligente Baseado em Anomalias p. 1/16

1.1 Tema Aprendizado de Máquina (Mit97) é o campo da Inteligência Artificial responsável pelo desenvolvimento de modelos inferidos automaticamente a

Aprendizado de Máquina (Machine Learning)

Informática. Aprendizado de Máquina. Professor Márcio Hunecke.

Aprendizado de Máquina

Aprendizado de Máquinas. Seleção de Características

Inteligência Artificial Agrupamento de Dados. prof. Dr. Rogério R. de Vargas. Universidade Estadual de Santa Cruz - UESC. Ilhéus-Ba, Outubro de 2013

Informática Parte 19 Prof. Márcio Hunecke

Teoria do aprendizado

Aprendizado de Máquina

Triagem Virtual em Larga Escala. Profa. Dra. Rafaela Ferreira Dept. de Bioquímica e Imunologia 10 de outubro de 2014

Coleta e Análise de Características de Fluxo para Classificação de Tráfego em Redes Definidas por Software

2COP229 Inteligência Computacional. Aula 3. Clusterização.

Aprendizado de Supervisionado

Universidade Federal do Paraná Departamento de Informática. Reconhecimento de Padrões. Tipos de Aprendizagem. Luiz Eduardo S. Oliveira, Ph.D.

Mecanismos de Detecção de Objetos Selective Search

INF 1771 Inteligência Artificial

Classificação de arritmias em sinais ECG

Mineração de Dados - II

Mineração de Dados - Introdução. Elaine Ribeiro de Faria UFU 2018

Detecção de falsas correspondências em pares de imagens estereoscópicas utilizando a transformação projetiva no plano e o algoritmo RANSAC

à Análise de Padrões

Boas Maneiras em Aprendizado de Máquinas

scikit-learn: Aprendizado de máquina 101 com Python

Bruno Antunes da Silva UFSCar - Sorocaba

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Desempenho de Classificação. Classificação IV: Avaliação de Classificadores

Thiago Marzagão 1. 1 Thiago Marzagão (Universidade de Brasília) MINERAÇÃO DE DADOS 1 / 21

Monitoração de Tráfego Par-a-Par em Tempo Real

Time Series Trend Detection and Forecasting Using Complex Network Topology Analysis

Replicação em sistemas web

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Aprendizado de Máquina

APRENDIZAGEM DE MÁQUINA

List Ranking: Solução probabilística. Baseado na dissertação de mestrado de Guilherme Pereira Vanni Orientador: Prof.

Descoberta de conhecimento em redes sociais e bases de dados públicas

Reconhecimento de Padrões

Mineração de Dados. Arthur Emanuel de O. Carosia Cristina Dutra de Aguiar Ciferri

Aprendizado de Máquina (Machine Learning)

TECNOLOGIA DE GRUPO. Introdução Aplicação da razão associação de objetos similares Biólogos; Bibliotecários classificação Manufatura

Aula 9. Prof. Adilson Gonzaga

Mineração de Dados em Biologia Molecular

Aprendizado de Máquina

Redes Neurais (Inteligência Artificial)

Reconhecimento de Padrões

RECONHECIMENTO DE PADRÕES - RP

Classificação de arritmias em sinais ECG

Um Tutorial em processamento de sinais para EEG

Regressão Linear. Fabrício Olivetti de França. Universidade Federal do ABC

Aprendizado de Máquina (Machine Learning)

IN-1131 Computação Evolucionária. Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática

HP UFCG Analytics Abril-Maio Um curso sobre Reconhecimento de Padrões e Redes Neurais. Por Herman Martins Gomes.

Tópicos Especiais em Informática Fatec Indaiatuba 13/07/2017

2 Sentiment Analysis 2.1

4 Construção dos Classificadores

Segmentação, Rastreamento de Objetos e Detecção de Eventos Primitivos com Aplicação no Monitoramento Automático de Ações Humanas em Vídeo

Implementação de um sistema de validação estatística configurável de dados

Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si

Predição de Links em Redes Complexas utilizando Informações de Estruturas de Comunidades

Processamento digital de imagens

Reconhecimento facial. uma aplicação prática do reconhecimento de padrões

Otimização com Algoritmos Genéticos no MATLAB. Prof. Rafael Saraiva Campos CEFET-RJ

5COP096 TeoriadaComputação

Segmentação e Classificação. Prof. Herondino

INF 1771 Inteligência Artificial

Replicação em sistemas web

Mapeamento do uso do solo para manejo de propriedades rurais

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Projeto Multiresolução de Operadores Morfológicos. Morfológicos a Partir de Exemplos

Redes Neurais Artificiais. Everton Gago

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas

T6.1 Reconhecimento de Padrões

SEMINÁRIO DOS ARTIGOS:

Um Mecanismo de Detecção de Versões de Páginas Web para Melhoria do Desempenho do Algoritmo de PageRank

EEL891 Aprendizado de Máquina Prof. Heraldo L. S. Almeida. Introdução

Curso de Data Mining

Teoria da Decisão. Otimização Vetorial. Prof. Lucas S. Batista. lusoba

Aprendizagem de Máquina

RESULTADO PARCIAL - PROVA DE SELEÇÃO DE BOLSISTA PARA PID-2017

SISTEMA AUTOMÁTICO PARA AVALIAÇÃO POSTURAL BASEADO EM DESCRITORES DE IMAGENS

Transcrição:

Detecção de Réplicas de Sítios Web Usando Aprendizado Semi-supervisionado baseado em Maximização de Expectativas Cristiano Rodrigues de Carvalho Orientador: Nivio Ziviani Co-orientador: Adriano Veloso Departamento de Ciência da Computação Universidade Federal de Minas Gerais 19 de Setembro de 2014 1

Problema 29% de conteúdo duplicado na Web Duplicação intra-sítios e inter-sítios Sistemas de busca armazenam cópias da Web Desperdício de recursos, anomalias no ranking, respostas repetidas Reduzir o número de duplicatas através da detecção réplicas de sítios web 2

Sítios Web Sítios: páginas web que compartilham o mesmo nome de servidor 3

Máquinas de Busca: Componentes Web Interface Web Coletor Web Processador de Consultas Indexador Repositório Local Índice Invertido 4

Desafios 600.000 sítios 360.000.000.000 pares Problema quadrático 5

Desafios Vários IPs para um único sítio e vários sítios para um único IP. 6

Desafios Pequena interseção de páginas conhecidas de sítios replicados Sítios muito similares que não são réplicas (cifras) 7

Solução Proposta Algoritmo baseado em aprendizado de máquina Duas fases: Seleção de sítios candidatos a réplica Classificação de pares candidatos Necessidade de treino rotulado Abordagem semi-supervisionada para aquisição de exemplos 8

Trabalhos Relacionados - Inter-sitios Estudo sobre replicação na Web [Bharat et al.,1999] Heurísticas para detecção de réplicas [Bharat et al.,2000] Uso eficiente de informações de conteúdo NormPaths [da Costa Carvalho et al.,2007] Estado-da-arte e baseline 9

Trabalhos Relacionados - Intra-sitios DUST (Different URLs with Similar Text) [Bar-Yossef et al., 2009] [Koppula et al., 2010] [Rodrigues et al., 2013] Detecção de conteúdo similar em URLs distintas Diversos trabalhos recentes 10

Metodologia

O Algoritmo Proposto Fase 1 Conjunto de Treino Fase 2 Base de Sítios Coletados Filtro Inicial Candidatos Avaliação Ranking de Réplicas 12

Filtro de Candidatos Caminho da URL Assinatura do Conteúdo 13

Avaliação de Candidatos Características de refinamento Distância de Edição (ndist) Correspondência de Nomes de Servidor (nmatch) Quatro Octetos (ip4) Três Octetos (ip3) Correspondência entre Caminhos Completos (fullpath) Algoritmo de Classificação LAC [Veloso & Meira Jr., 2011] 14

Modelos de Treino: PU www.exemplo.com.br == exemplo.com.br exemplo.gov.br == exemplo.br P U 15

Modelos de Treino: EM Passo E: Estimativa de dados Atualização de Variáveis Passo M: Atualização de Hipótese 16

Modelos de Treino: EM Passo E: Classificão (LAC) Transição de Rótulos (Limiar mínimo) Passo M: Atualização do Classificador Parâmetro a ser definido 17

Modelos de Treino: Escolha de Limiar Limiar global único Diferentes valores de teste (0.1 a 0.9) Limiar local ótimo Projeção de treino Abordagem de entropia mínima [Davis et al., 2012] 18

Modelos de Treino: Projeção de Treino p l ip4 ip3 ndist nmatch fullpath y 1 [0.1-0.3] [0.3-0.5] [8-10] [0.2-0.5] [0.3-0.5] y 2 [0.1-0.3] [0.1-0.3] [10-14] [0.1-0.2] [0.1-0.3] y 3 [0.5-0.8] [0.1-0.3] [8-10] [0.1-0.2] [0.1-0.3] y 4 [0.1-0.3] [0.5-0.8] [8-10] [0.2-0.5] [0.3-0.5] y 5 [0.3-0.5] [0.5-0.8] [5-8] [0.5-0.7] [0.3-0.5] y 6 [0.1-0.3] [0.3-0.5] [8-10] [0.5-0.7] [0.3-0.5] y 7 [0.1-0.3] [0.1-0.3] [10-14] [0.1-0.2] [0.3-0.5] y 8 [0.3-0.5] [0.5-0.8] [5-8] [0.5-0.7] [0.3-0.5] x [0.1-0.3] [0.1-0.3] [8-10] [0.2-0.5] [0.1-0.3]? ip4 ip3 ndist nmatch fullpath y 1 [0.1-0.3] [8-10] [0.2-0.5] y 2 [0.1-0.3] [0.1-0.3] [0.1-0.3] y 3 [0.1-0.3] [1-2] [0.1-0.3] y 4 [0.1-0.3] [0.2-0.5] y 5 y 6 [0.1-0.3] y 7 [0.1-0.3] [0.1-0.3] y 8 19

Modelos de Treino: Limiar ótimo 20

Modelos de Treino: PU www.exemplo.com.br == exemplo.com.br exemplo.gov.br == exemplo.br P U 21

Modelos de Treino: PU -> PN www.exemplo.com.br == exemplo.com.br exemplo.gov.br == exemplo.br Novos exemplos positivos P N 22

Modelos de Treino: NU Sítios que não são suspeitos N U 23

Modelos de Treino: NU -> NP Sítios que não são suspeitos N Novos exemplos positivos P 24

Combinação de Classificadores Agregação de resultados (PU + NU) Fronteira de Pareto Relação de dominância no espaço de predições Composta por candidatos que se destacam em um classificador ou possuem um balanceamento adequado entre ambos 25

Combinação de Classificadores 26

Algoritmo Completo Fase 1 Fase 2 P U PU EM Base de Sítios Filtro Inicial Candidatos Classificação Ranking PU Ranking NU Pareto Ranking PNU N U NU EM 27

Avaliação Experimental

Coleção Coleta entre Setembro e Outubro de 2010 Usando o coletor InWeb Nenhuma restrição ou filtro 30 milhões de páginas 583,411 sítios web ( 2 10 11 pares possíveis) 1.600.000 pares candidatos 6.823 pares avaliados como réplicas 29

Dup-clusters intra-sítios (U A e U B ) inter-sítios (U A e U C ) 30

Dup-clusters: Distribuição 1e+06 1000 100000 # dup-clusters 10000 1000 100 10 # dup clusters 100 10 1 1 10 100 1000 10K Tamanho do dup-cluster 1 1 10 100 1000 10K 100K Sítios web Muitos dup-clusters contém poucas URLs Muitos dup-clusters contém poucos sítios 31

Inter-sítios vs. Intra-sítios # URLs duplicadas inter sítios 1000 100 10 1 1 10 100 1000 # URLs duplicadas intra sítios Correlação entre o número de URLs duplicadas intra-sítios e inter-sítios por sítio web. 32

Distribuição de Similaridade Distribuição de similaridade (Y) 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 Y 0.1 Y2 0 0.2 0.4 0.6 0.8 1 0 Coeficiente de Jaccard Concentração de réplicas (Y2) 33

Baselines NormPaths Detecção de réplicas de sítios B-SVM (Biased SVM)[Liu et al.,2003] Estado-da-arte em aprendizado semi-supervisionado com dados PU Limite Superior (Upper bound) Classificação com treino rotulado manualmente (Gabarito) 34

Resultados: ROC 1 0.8 TPR 0.6 0.4 0.2 0 PU data NU data PU + NU Norm Paths B-SVM Upper bound 0 0.01 0.02 0.03 0.04 0.05 FPR 35

Resultados: Precisão e Revocação 1 0.8 Precisão 0.6 0.4 0.2 0 PU data NU data PU + NU Norm Paths B SVM 0 0.2 0.4 0.6 0.8 1 Revocação 36

Resultados: Análise de Features AUC (Area Under the Curve) Individualmente Todas exceto Features PU NU PU NU ip3 0.5132 0.5116 0.9706 0.9411 ip4 0.5288 0.5283 0.9701 0.9431 nmatch 0.6565 0.2312 0.9646 0.9391 ndist 0.7716 0.6528 0.9631 0.9272 fullpath 0.7187 0.6274 0.9550 0.9206 Todas 0.9908 0.9688 0.9908 0.9688 37

Resultados: Análise de Features AUC (Area Under the Curve) Individualmente Todas exceto Features PU NU PU NU ip3 0.5132 0.5116 0.9706 0.9411 ip4 0.5288 0.5283 0.9701 0.9431 nmatch 0.6565 0.2312 0.9646 0.9391 ndist 0.7716 0.6528 0.9631 0.9272 fullpath 0.7187 0.6274 0.9550 0.9206 Todas 0.9908 0.9688 0.9908 0.9688 38

Resultados: Análise de Features AUC (Area Under the Curve) Individualmente Todas exceto Features PU NU PU NU ip3 0.5132 0.5116 0.9706 0.9411 ip4 0.5288 0.5283 0.9701 0.9431 nmatch 0.6565 0.2312 0.9646 0.9391 ndist 0.7716 0.6528 0.9631 0.9272 fullpath 0.7187 0.6274 0.9550 0.9206 Todas 0.9908 0.9688 0.9908 0.9688 39

Resultados: Redução RR 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 PU data NU data PU + NU Norm Paths Upper bound 0 0.2 0.4 0.6 0.8 1 FPR 40

Resultados: Redução 0.2 0.15 RR 0.1 0.05 0 PU data NU data PU + NU Norm Paths B-SVM Upper bound 0 0.001 0.002 0.003 0.004 0.005 FPR 41

Resultados: Taxa de Detecção Número de Candidatos Algorithms 10 + 1 100 + 1 1,000 + 1 10,000 + 1 PU data 0.9900 0.9891 0.9615 0.7656 NU data 0.6590 0.4429 0.4300 0.4287 PU + NU 1.0000 1.0000 0.9905 0.8272 NormPaths 0.6619 0.4192 0.4105 0.4088 B-SVM 0.9805 0.9622 0.9349 0.7034 Upper bound 1.0000 0.9901 0.9586 0.7555 42

Resultados: Taxa de Detecção Número de Candidatos Algorithms 10 + 1 100 + 1 1,000 + 1 10,000 + 1 PU data 0.9900 0.9891 0.9615 0.7656 NU data 0.6590 0.4429 0.4300 0.4287 PU + NU 1.0000 1.0000 0.9905 0.8272 NormPaths 0.6619 0.4192 0.4105 0.4088 B-SVM 0.9805 0.9622 0.9349 0.7034 Upper bound 1.0000 0.9901 0.9586 0.7555 43

Resultados: Redução Inter e Intra FPR 0.000 0.001 0.005 # URLs duplicadas 6,948,501 # URLs intra-sítios 6,514,746 ɛ = 0.0 293,374 ɛ = 0.1 1,628,685 # URLs inter-sítios 843,526 555,880 865,384 1,331,215 # inter intra 409,771 286,485 446,182 758,927 ɛ = 0.0 64,947 38,835 70,232 110,284 ɛ = 0.1 151,683 98,377 170,827 388,022 RR intra 0.9376 ɛ = 0.0 0.0422 ɛ = 0.1 0.2344 RR inter 0.1213 0.0791 0.1245 0.1916 RR inter + intra 1.0000 ɛ = 0.0 0.1541 0.1166 0.1567 0.2179 ɛ = 0.1 0.3340 0.3002 0.3343 0.3701 44

Conclusões Foi proposto um novo algoritmo para detecção de réplicas de sítios web em bases de máquinas de busca O método semi-supervisionado é capaz de criar de bons modelos de treino O algoritmo proposto obteve resultados superiores aos baselines A combinação com técnicas de detecção intra-sítios melhora a taxa de redução de duplicatas 45

Trabalhos Futuros Estudo de outras características como a conectividade entre sítios Criar estratégias para reavaliação de sítios replicados Propor abordagem para escolha justa de qual sítio deve ser eliminado da base (Fraudes). 46

Contribuições Desenvolvimento de novas técnicas de aprendizado de máquina para o problema de detecção de réplicas de sítios Coleção com dados a respeito de replicação Sítios coletados, rotulados e modelos de treino Artigo a ser submetido WWW 2015 (10 de Novembro) 47

Contribuições Artigo aceito no SPIRE 2013 Learning to Schedule Webpage Updates Using Genetic Programming Artigo em avaliação no Information Retrieval Journal A Genetic Programming Framework to Schedule Webpage Updates 48

Obrigado!