beyond pagerank: machine learning for static ranking matthew richardson amit prakash eric brill...
TRANSCRIPT
Beyond PageRank: Beyond PageRank: Machine Learning for Static RankingMachine Learning for Static Ranking
Matthew Richardson Amit Prakash Eric BrillMatthew Richardson Amit Prakash Eric Brill Microsoft Research MSN Microsoft Research Microsoft Research MSN Microsoft Research
Adriano Kaminski Sanches
Prof. Dr. Pável Calado
Universidade Técnica de LisboaInstituto Superior Técnico
Recuperação de Informação
Novembro de 2007Novembro de 2007
Contéudo
• Introdução
• PageRank
• fRank (RankNet)
• Características
• Experimentos
• Trabalhos Relacionados e Futuros
• Conclusão
Introdução
• Internet Crescendo• Número de páginas com conteúdo
duvidoso também cresce• Pesquisas com foco em ranking
dinâmico• Importante também ranking estático:
– Relevância– Eficiência– Prioridade de Rastreamento na Internet
Introdução
• Mito sobre o PageRank• Uso da estrutura de links é essencial
para um ranking estático?• Será que é tão bom?• Soluções menos complexas,
resultados parecidos• PageRank em competições » baixo
sucesso• Será mostrado a eficiência de outro
método » fRank utilizando o RankNet
PageRank
– A importância de uma página --» popularidade
– Colecta-se todos os links da coleção (origem e destino)
– Cria-se um mapa de links --»370 milhões de hyperlinks em 5 bilhões de páginas da coleção estudada
PageRank
Cálculo do PageRank:“Vamos assumir que a Página A tenha as
páginas T1..Tn que apontam para ela
Parametro D é um damping factor (entre 0 e 1)
C(A) é o número de links que saem de A
PR(A) = (1-d) + d(PR(T1)/C(T1)+…+PR(Tn)/C(Tn)”
PageRank
Cálculo do PageRank:
Se uma Página A é muito citada --» PR(A) ↑ Se uma Página A é citada por páginas
populares --» PR(A) ↑
PageRank
Problema:– Função Recursiva– Cada Página é iniciada com um PR igual– Aplica-se o algoritmo sucessivas vezes até
atingir uma convergência– Trabalho relativamente lerdo, e
computacionalmente caro
RankNet
– Seja X={x i} uma coleção de vetores de características
– Seja Y={y i} uma coleção de classes associada a cada vetor de característica
Ranknet »
Achar uma função f tal que
y i = f(x i) para todo I
Solução » Redes Neurais back-prop
RankNet
– Não é necessário ter uma nota para cada página
– Necessário ter uma lista ordenada de páginas
Seja Z={<i,j>} uma coleção de par de páginas
para qualquer <i,j> pertencente a Z, f(x i) > f(x j)
Redes Neurais BackPropagation
Modelo de Neurônio
Redes Neurais BackPropagation
Apresenta as entradas Compara a saída obtida com a saída
esperada Gradiente descendente Correção na direção contrária ao erro
Minimização do erro na fase de treinamento
Redes Neurais BackPropagation
Exemplo
Conjuntos:
Treinamento
Validação
Teste
Época
Vetor de Características
• PageRank – 5 bilhões de páginas armazenadas– 20 bilhões the URLs ligadas por essas páginas– Porção significativa da web
• Popularidade– Numero de vezes que uma página é visitada em um
determinado tempo– Poderia ser obtido por logs de Proxy ou próprio cliques do
usuário no motor de busca– Log obtido de quem tem a barra de ferramentas do MSN e
optou por prover essas informações para o MSN
Vetor de Características
• Ãncoras – Tamanho do texto da ãncora– Número de palavras únicas nesse texto...
• Página– 8 características de cada página analisadas isoladamente– Número de palavras no corpo da página,– Frequência do termo mais comum...
• Domínio– Médias sobre as páginas em um determinado domínio– Média de links, PageRank...
Experimentos
• Dados– Julgamento humano para 28000 buscas (notas de 0 a 4)– 500.000 julgamentos– Média de 18 julgamentos por busca– Buscas escolhidas randomicamente entre as do motor de
busca do MSN– Converter dependente de busca » independente de busca– Tira-se a busca e mantém a maior nota para aquela página– 84% treinamento– 08% validação– 08% teste
Experimentos
• Método– Rede neural de duas camadas totalmente conectada– Camada oculta com 10 neurônios– Pesos da camada de entrada inicializados com 0– Pesos da camada de saída inicializados randomicamente
com valores entre [-0.1,0.1]– Função de transferência entrada»camada oculta tanh– Função de transferência camada oculta»saída linear– Características da entrada é normalizada– 5 milhões de pares de entrada– Treinado por 30 épocas– Taxa de aprendizagem inicial 0.001
Experimentos
•Resultados 1
Experimentos
•Resultados 2
Experimentos
•Resultados
Experimentos
•Resultados 4
Experimentos
•Resultados 5
Dados de Popularidade
• Barra de ferramenta do MSN– 3 possibilidades:– Contador “cru” das URLs– Contador das URLs junto com o Domínio– Segmentação total da URL
Dados de Popularidade
• Barra de ferramenta do MSN– Resultados
Sumário dos Resultados
• Experimentos comprovaram que proposta tem desempenho significante melhor que PageRank
• Não é necessário ter o grafo dos links na web• Características: Página e Popularidade são os mais
importantes• Coletando mais dados de popularidade(barra de
ferramentas do MSN), dados serão melhores ainda• Dados do usuário, não de desenvolvedores de páginas web• Dinâmica da web sentida mais rapidamente
Trabalhos Relacionados e Futuros
Trabalhos Relacionados– Melhorar o PageRank em buscas sensíveis a tópicos– Analisar não apenas o histórico todo da web, e sim as
mudanças recentes em sua configuração– Identificar a qualidade de sites por características de:
• Contéudo• Estrutura e navegação• Design visual• Funcionalidade• Interatividade • Etc... mais de 100 características analisadas
Trabalhos Relacionados e Futuros
Trabalhos Futuros
• Aumentar o número de características de entrada
• Identificar palavras importantes
• Under Construction » baixa qualidade da página• Número de imagens, tamanho,• Elementos de layout• Uso de estilos• Cor de fundo
• Estudo das diferentes avaliações feita pelo usuário para a mesma página (buscas diferentes)
Trabalhos Relacionados e Futuros
Trabalhos Futuros
• Aplicar Aprendizado de máquina para determinar páginas a serem recarregadas da web
•Incorporar algumas características diretamente no PageRank
• Utilizar os dados de populariedade com maior aproveitamento:
• Sensível a hora da busca• Tempo de permanência na página• Chegou na página clicando em um hiperlink ou usando o botão voltar?
Conclusão
PageRank não gera um bom ranking estático
Muitas características individuais são melhores do que o PageRank
PageRank » tendência para tecnologia
fRank » tendência para os costumes do usuário
O aprendizado de máquina deixa o ranking mais robusto (contra fraudes)
Muito a ser feito ainda
Muito Obrigado!
Beyond PageRank: Beyond PageRank: Machine Learning for Static RankingMachine Learning for Static Ranking
Matthew Richardson Amit Prakash Eric BrillMatthew Richardson Amit Prakash Eric Brill Microsoft Research MSN Microsoft Research Microsoft Research MSN Microsoft Research
Adriano Kaminski Sanches
Prof. Dr. Pável Calado
Universidade Técnica de LisboaInstituto Superior Técnico
Recuperação de Informação
Novembro de 2007Novembro de 2007