Sistemas de Recomendação
Carlos Castor
Naiane Nascimento
Roteiro
 Motivação
 Coleta de informações
 Privacidade
 Estratégias
 Técnicas
 Arquitetura
 Aplicações
 Estudo de Caso
 Mestrado
 Conclusão
Motivação
 Era da Inteligência Coletiva
 A capacidade de novas mídias para armazenar e recuperar
informações facilmente, principalmente em bases de dados
e na Internet, permite que elas sejam compartilhadas sem
dificuldade. Assim, através da interação com novas mídias,
passam facilmente entre as fontes de conhecimento,
resultando em uma forma de inteligência coletiva.
(Flew, 2008)
 Web 2.0
 Maior interação entre usuários e a Web;
 Surgimento de mais portais, blogs e redes sociais
Motivação
 Grande volume de informações na Web
 Com a quantidade de informações e com a disponibilidade
facilitada das mesmas pelo uso da Internet, as pessoas se
deparam com uma diversidade muito grande de opções.
Muitas vezes um indivíduo possui muito pouca ou quase
nenhuma experiência pessoal para realizar escolhas entre
as várias alternativas que lhe são apresentadas.
(MAES, et al 1995)
 Os Sistemas de Recuperação são bastante utilizados pela
publicidade
 Serve de gancho para serem utilizados em outras áreas
Como resolver?
 Ferramentas de recomendação como
solução
Existem os sistemas de recomendação que
trabalham com a personalização, o que
possibilita que o conteúdo exibido para o
usuário seja aquele que ele terá maior
interesse em visualizar. Para que se possa
recomendar itens a um usuário, é necessário
se ter conhecimento sobre quem é este
usuário. É necessário capturar e armazenar
seus dados pessoais e comportamentais
relativos. Portanto, é essencial que se possa
identificar o usuário no momento em que ele
acessa o sistema onde foram implantadas as
rotinas de recomendação.
(REATEGUI, et al 2005)
Quem utiliza?
Pioneiros na área
 Nos anos 90, foi desenvolvido o Tapestry.
 Um sistema de email que avaliava a relevância dos
documentos recebidos.
 Em 1996, o My Yahoo surgiu.
 O primeiro website a utilizar recomendação em grandes
proporções.
 A técnica customização era utilizada.
Coleta de Informações
 É necessário conhecer quem é o usuário
 O usuário deve ser identificado no momento em
que ele acessa o sistema
- Identificação no servidor
 É necessário fazer um cadastro
 Provê maior precisão
- Identificação no cliente
 Utiliza cookies para identificar a máquina
 Menos confiável
Coleta de Informações
 As informações podem ser coletadas de forma explícita
ou implícita
 Coleta Explícita
 O usuário indica o que lhe interessa.
 Coleta Implícita
 A partir do comportamento do usuário, infere-se suas
necessidades e preferências.
Como se dá a recomendação
 Semelhanças entre usuários
 Grupos de pessoas com interesses em comum.
 Métricas de Similaridade são usadas para calcular essas
semelhança
 Coeficiente de Pearson.
 Distância Euclidiana.
 Recomendar itens
 Mostrar algum item que uma pessoa parecida com você viu
e você não viu
 Tabela de Pesos.
Como se dá a recomendação
 Comparação entre itens
 Encontra a similaridade entre os itens
 Ajuda a oferecer um item que você provavelmente queira
ver
Privacidade
 Informações do usuário são coletadas e armazenadas
sem que ele perceba.
 Existem empresas que vendem esses dados.
Políticas de Privacidade
 É uma exigência legal que as políticas de privacidade
dos sites sejam disponibilizadas.
 Aumenta a proteção do usuário.
 Algumas organizações propõem selos que regulam a
política de privacidade de um website.
Estratégias
 Diferentes estratégias podem ser
personalizar ofertas para o usuário.
 Listas de Recomendação
 Avaliação de Usuários
 Suas Recomendações
 Produtos Similares (X -> Y)
 Associação por Conteúdo
usadas
para
Técnicas de Filtragem
 Os Sistemas de Recomendação utilizam a técnica de
Filtragem de Informação (FI) para extrair as relações e
similaridades existentes entre produtos, entre
consumidores e entre produtos e consumidores.
 Filtragem baseada em Conteúdo
 Filtragem Colaborativa
 Filtragem Híbrida
Filtragem Baseada em Conteúdo
 Filtragem Baseada em Conteúdo
 É a forma mais simples de recomendação
 Considera que usuários sempre gostaram de coisas que
gostaram no passado.
 Analisa apenas os itens e o perfil do usuário
 Funcionamento:
 Usuários devem avaliar itens de acordo com seu interesse.
 O sistema correlaciona os itens em sua base de dados,
considerando características de cada item.
 E indica novos itens que apresentem alto grau de similaridade.
Filtragem Baseada em Conteúdo
 Dificuldades:
 Cálculo da similaridade
 Há dificuldades na sugestão de cor e tamanho, por exemplo.
 Análise dos dados restrita
 Imagem e Áudio
 Super Especialização
 O usuário não receberá indicações do que nunca consumiu.
 Efeito Portfólio
 É analisado o histórico
Filtragem Colaborativa
 Filtragem Colaborativa
 Fechar as lacunas que a filtragem baseada em conteúdo
não soluciona.
 Não exige a extração de características dos itens.
 O sistema se baseia na troca de experiências entre
usuários com gostos similares.
Filtragem Colaborativa
 Funcionamento:
 Usuários devem avaliar itens de acordo com seu interesse
 O sistema descobre usuários com padrões similares de
comportamento ao do usuário atual
 Cálculo do peso de cada usuário em relação a similaridade ao
usuário alvo.
 Selecionar um subconjunto
 Processa as avaliações feitas por esse subconjunto de usuários
 E recomenda itens que o usuário atual ainda não avaliou
Filtragem Colaborativa
 Dificuldades:
 Necessita de vasta base de dados
 Escalabilidade/estabilidade
 Partida fria (Usuários e itens novos)
 Popularidade
 Ovelha negra
Filtragem Híbrida
 Filtragem Híbrida
 Combina as duas técnicas, para obter um sistema mais
eficiente
Técnicas (Comparativo)
Fonte: VAREJÃO, L., OLIVEIRA, P., LORENA, V., ACIOLI, V. Mineração de Dados na Web: Sistemas de
Recomendação
Arquitetura de sistemas
de recomendação
Arquitetura
 Grande volume de dados e
eventos
 Interatividade
Arquitetura: Computação
 Online
 Uso de eventos recentes
 Interatividade com usuário
 Tempo real
 Limita o volume de dados utilizáveis e a complexidade dos algoritmos
 Offline
 Grande volume de dados
 Algoritmos complexos
 Maior tempo para resposta
 Nearline
 Intermediário entre online e offline
 Computação realizada da mesma forma que o online, mas sem a
necessidade de resposta em tempo real
Arquitetura: Computação
Arquitetura: Tarefas Offline
 Tarefas agendadas
 Model Training
 Algoritmos de aprendizagem de máquina para definição de
parâmetros
 Computação de resultados
 Sugestões que irão aparecer para o usuário ou serão
utilizadas por algoritmos online
 Grande Volume de dados
 Banco de dados distribuídos(Hive ou Pig)
Arquitetura: Tarefas Offline
 Mecanismo para publicação dos resultados






Quando os resultados estão prontos
Suporte a diferentes repositórios
Tratamento de erros
Monitoramento
Alertas
Netflix.Hermes
Arquitetura: Tarefas Offline
Arquitetura: Sinais e Modelos
 Modelos: arquivos com parâmetros resultantes de
computação offline
 Dados: informação processada
 Sinais: informações recentes não processadas
Arquitetura: Sinais e modelos
Arquitetura: Eventos e dados
 Diferentes interfaces
 Smart TVs, tables, video games, etc
 O sistema busca captar o máximo de ações do usuário
 Cliques,navegação,views,etc
 Eventos: pequenas unidades de informações sensíveis ao
tempo que têm de ser processados com a menor quantidade
possível de latência
 Dados: dados mais densos que necessitam ser processados e
armazenados para uso futuro.
 Netflix.Manhatam: gerenciador de eventos
Arquitetura: Eventos e dados
Arquitetura: Resultados
Aplicações
 Sugestão de vídeos
 Lista de recomendação
 Associação de conteúdo
Aplicações
 Sugestão de pessoas que o usuário
possa conhecer.
 Usuários que se interessam por “X”
também se interessam por “Y”
Aplicações
 Sugestão de itens que o usuário posso querer comprar
 Lista de recomendação
 Avaliação de Usuários
 Suas Recomendações
 Usuários que se interessam por “X” também se interessam por
“Y.”
 Associação por conteúdo
Aplicações
Lista de Recomendação
Avaliação de Usuários
Estudo de Caso:
News Feed do Facebook
 Usuário decide entre visualização das postagens mais
recentes ou as mais importantes
 Como determinar quais postagens são mais importantes
para o usuário?
 Inicialmente, a importância das postagens era ajustada
manualmente
 i.e.: Fotos > links > curtida
EdgeRank
 Algoritmo utilizado para determinar a importância das
postagens
 Todas as relações(curtir, comentar, compartilhar,etc) são
modeladas como vértices(edges) de um grafo
EdgeRank
 𝐸𝑑𝑔𝑒𝑅𝑎𝑛𝑘 =
𝑒 𝑢𝑒 𝑤𝑒 𝑑𝑒
 𝑢𝑒 : grau de afinidade entre o usuário e o autor do vértice
 𝑤𝑒 : peso do tipo da postagem relativa ao vértice
1
 𝑑𝑒 : idade do vértice = , sendo d o tempo desde a criação
𝑑
do vértice
EdgeRank - Ilustração
EdgeRank-Ilustração
 e1: Empresa A criou x em y
 u1, w1, d1=(1/(h-y)), h=tempo corrente
 e2: Amigo 1 curtiu x em (y+1)
 u2, w2, d2=(1/(h-(y+1)))
 e3: Amigo 2 comentou x em (y+15)
 u3, w3, d3=(1/(h-(y+15)))
 e4: Amigo 3 curtiu x em (y+30)
 u4, w2, d4=(1/(h-(y+30)))
 h: tempo corrente
Desafios
 Melhoria nos algoritmos de recomendação:
 Maior eficiência
 Melhor qualidade do resultado
Mestrado
 Clipping automático de notícias utilizando sistema de
recomendação
 Uso de matérias de portais de notícias na Web
 Inicialmente, matérias de apenas um segmento
 Conteúdos compartilhado por amigos nas redes sociais
 Amenizar a grande carga de informações expostas para o
internauta.
 Filtrar as informações do seu interesse
 Comodidade
 Recebimento do clipping por e-mail
Quem pode ser beneficiado?
 Usuários em geral da Web
 Maior auxílio ao trabalho dos profissionais de
comunicação, mais especificamente aos de Jornalismo
de assessorias de imprensa.
 Também deve auxiliar especialistas de determinadas
áreas, curiosos ou mesmo empresários/empresas.
 E até mesmo políticos que desejam saber o que tem
sido comentado sobre si na Web.
Conclusão
 Diante da grande massa de informações na Web os
Sistemas de Recomendação podem ser de grande auxílio
 É um caminho bastante aderido pela publicidade
 Ainda há uma grande discussão quanto a privacidade dos
usuários
 Sites que não possuem Sistema de Recomendação estão
fadados ao esquecimento
Referências

TUTEN, T. L. Advertising 2.0: social media marketing in a Web 2.0 world. Praeger, Westport
Connecticut, 2008.

MAES, P.; SHARDAMAND, U. (1995) “Social information filtering: Algorithms for automating "word of
mouth”, In: Human Factors in Computing Systems. Proceedings…, 1995, p. 210-217.

REATEGUI, E.; CAZELLA, S. Sistema de Recomendação. XXY Congresso da Sociedade Brasileira de
Computação, 2005. São Leopoldo.

VAREJÃO, L., OLIVEIRA, P., LORENA, V., ACIOLI, V. Mineração de Dados na Web: Sistemas de
Recomendação

REATEGUI, E., CAZELLA, S., Sistemas de Recomendação. XXV Congresso da Sociedade Brasileira de
Computação, 2005, Rio Grande do Sul.

http://edgerank.net/

http://marketingland.com/edgerank-is-dead-facebooks-news-feed-algorithm-now-has-close-to100k-weight-factors-55908

http://techblog.netflix.com/2013/03/system-architectures-for.html
Dúvidas?
?
Download

Sistemas de Recomendação