O documento discute sistemas de recomendação, incluindo seu objetivo de gerar recomendações válidas para usuários, os tipos principais (baseados em conteúdo e filtragem colaborativa), e exemplos como o Netflix.
4. Roteiro
Histórico da área;
Conceitos básicos em sistemas de recomendação;
Recomendação baseada em conteúdo vs. filtragem colaborativa;
Casos de uso;
Demo e novas possibilidades.
5. Sistemas de Recomendação
O objetivo dos sistemas de recomendação é gerar recomendações
válidas para um conjunto de usuários de itens que possam
interessá-los (MELVILLE; SINDHWANI, 2010);
Personalizados vs. não personalizados;
“Obter recomendações de fontes confiáveis é um componente
importante do processo natural de tomada de decisões”
(MELVILLE; SINDHWANI, 2010);
Estímulo ao consumo.
6. Sistemas de Recomendação
Problema com sobrecarga de informações;
Mais opções nem sempre é melhor.
As pessoas geralmente apoiam-se em recomendações de outras
pessoas para suas decisões diárias;
Área de pesquisa independente surgiu nos anos 90;
Interesse crescente:
Papel importante em sites altamente conceituados;
Conferências e workshops dedicados ao tema;
Sessões em conferências de outras áreas;
Cursos dedicados à área;
Edições especiais em revistas acadêmicas.
7.
8.
9. Sistemas de Recomendação
Músicas (ex. Spotify), Livros (ex. Amazon) e Filmes (ex. Netflix);
Recomendação de itens em eCommerce;
Recomendações de conteúdos em ambientes de eLearning;
Recomendação de links em ambientes de busca e navegação;
Ajudar pessoas (clientes, usuários) a tomar decisões;
Recomendação baseada em preferências:
De um indivíduo;
De um grupo ou comunidade.
10. Tipos de Sistemas de Recomendação
Baseados em conteúdo (Content Based) - usando as preferências pessoais
para corresponder e filtrar itens;
Por exemplo. Que tipo de livros eu gosto?
Filtragem Colaborativa (Collaborative Filtering) – combinam-se pessoas com
a mesma opinião;
Por exemplo. Se duas pessoas tiverem "gosto" semelhante, pode-se
recomendar itens consumidos por um para o outro.
Software social - o processo de recomendação é suportado mas não
automatizado;
Por exemplo. Weblogs fornecem um meio para recomendação.
Mineração de Dados Sociais - Registra dados de atividade social para
aprender as preferências do grupo ;
Por exemplo. Mineração de dados com base no de uso da web.
Nós nos concentraremos em CB e CF.
11. Recomendação Baseada em
Conteúdo
“Encontre-me coisas das quais eu gostei no passado”;
A máquina aprende as preferências por meio do feedback do
usuário, criando assim um perfil;
Feedback explícito – usuários avaliam itens;
Feedback implícito - o sistema registra as atividades do usuário;
Dados de clickstream classificados de acordo com a categoria e atividade
da página, por ex. navegando em uma página de produto;
Tempo gasto em uma atividade, tal como navegar em uma página.
A recomendação é visualizada como um processo de pesquisa,
com o perfil do usuário atuando como a consulta e o conjunto
de itens atuando como os documentos a serem correspondidos.
12. Filtragem Colaborativa
São combinadas pessoas com interesses semelhantes como
base para a recomendação:
Muitas pessoas devem participar para se tornar provável que
uma pessoa com interesses semelhantes seja, de fato,
encontrada;
Deve haver uma maneira simples de as pessoas expressarem
seus interesses;
Deve haver um algoritmo eficiente para corresponder pessoas
com interesses semelhantes.
13. Como funciona?
Usuários votam nos itens - interesses do usuário são
registrados. Classificações podem ser:
Explicitas: por ex. comprando ou classificando um item;
Implícitas: por ex. tempo de navegação, no. de cliques do
mouse.
Correspondência de vizinho mais próximo usado para
encontrar pessoas com interesses semelhantes;
Itens que os vizinhos classificaram positivamente, mas
que você não avaliou são recomendados a você;
O usuário pode avaliar os itens recomendados.
14. Exemplo de matriz de filtragem colaborativa CF MxN (M
usuários x N itens)
Items /
Usuários
Data
Mining
Engines
de
Busca
Bases
de
Dados
XML
John 1 5 4
George 2 3 4
Paul 4 5 2
Ringo 4 5
15. Observações
Pode-se construir um vetor para cada usuário (onde 0 implica
que um item não tenha classificação);
Por exemplo. para André: <1,0,5,4>
Por exemplo. para Menotti: <0,0,4,5>
Em média, os vetores do usuário são escassos, já que os
usuários classificam (ou compram) apenas alguns itens;
A similaridade ou correlação vetorial pode ser usada para
encontrar o vizinho mais próximo (Algoritmo KNN etc.);
Por exemplo. Maria mais próxima de Joana e depois de
Reinaldo.
16. Exemplo - Netflix
Importância da Recomendação no Netflix:
Em 2006, criou uma competição que premiaria em 1
milhão de dólares quem conseguisse melhorar seu
algoritmo (Netflix Prize);
Em 2012, 75% do conteúdo visualizado do Netflix foi
proveniente de algum tipo de recomendação;
Maior importância: personalização das recomendações ao
usuário ativo, a ordenação dos itens recomendados é o
parâmetro principal.
17. Exemplo - Netflix
Netflix Prize:
$1 milhão ao vencedor;
Critério de vitória: superar o RMSE (Raiz quadrada do erro-
médio) do algoritmo existente da Netflix (0,9525) em pelo
menos 10%;
Prêmio melhor progresso anual: $50 mil;
Início em 2006 e término em 2009;
Vencedor do primeiro Prêmio de Progresso:
Equipe da Korbell
8,43% de melhoria;
Conjunto de 107 algoritmos. Dois algoritmos aproveitados:
Matrix Factorization e Restricted Boltzmann Machines.
18. Exemplo - Netflix
Melhor Resultado: BellKor’s Pragmatic Chaos
Melhoria de 10,06%.
19. Exemplo - Netflix
Sistema de Recomendação Netflix
Recomendações arranjadas em grupos colocados em linhas, e cada
coluna é um item do grupo.
20. Exemplo - Netflix
Principais Parâmetros de Recomendação:
Semelhança (ou Similaridade);
Amigos (social);
Popularidade;
Gênero (ou Categoria);
Outros parâmetros podem incluir localização geográfica do
usuário ou dados retirados de seu perfil ou outros acessos.
Algoritmos observam estes parâmetros em conjunto, não
separados.
24. Netflix – Parâmetros Analisados
Popularidade:
Por meio da avaliação dos usuários para os itens assistidos;
Por meio do número de visualizações dos itens, tanto
parciais quanto totais (peso maior dado a visualizações
totais);
Netflix possui um mecanismo para medir a popularidade
de itens no Facebook e em outras mídias, não apenas em
seu sistema.
25. Netflix – Parâmetros Analisados
Gêneros:
Trata-se da organização dos filmes em linhas determinadas por gêneros.
Os gêneros de alto nível, mais comuns, são os que geralmente se
enquadram os filmes: comédias, dramas, suspense, terror, ação, etc.
Filmes também podem ser enquadrados em subgêneros diversos.
Ordenação:
Encontrar a melhor ordem para exibição de itens de cada arranjo;
Analisa e atribui ordem de acordo com um ou mais critérios de
preferência do usuário ou popularidade do item;
É considerada muito importante ao Netflix, pois é fator principal da
personalização usuário – serviço.
27. Dificuldades da Filtragem Colaborativa
Problema de escassez - quando muitos dos itens não foram
avaliados por muitas pessoas, pode ser difícil encontrar pessoas
"que tenham a mesma opinião”;
Primeiro problema do avaliador - o que acontece se um item
não tiver sido classificado por ninguém;
Cold start – o que acontece com usuários novos?
Problemas de privacidade;
28. Dificuldades da Filtragem Colaborativa
Pode-se combinar recomendações CF com os recomendados pela
recomendação CB;
Usar a abordagem CB para pontuar alguns itens não
classificados.
Em seguida, usar CF para recomendações;
Serendipity - recomendo para mim algo que eu não conheço.
Dicionário de Oxford: a ocorrência e desenvolvimento de eventos
ao acaso de uma forma feliz ou benéfica.
29.
30. “É preciso provocar sistematicamente
confusão. Isso promove a criatividade.
Tudo aquilo que é contraditório gera
vida ”
Salvador Dalí