O documento discute sistemas de recomendação, incluindo técnicas como filtragem colaborativa e baseada em conteúdo, problemas comuns e desafios, e algoritmos como KNN e TF-IDF. Ele também fornece exemplos de casos e recursos para começar a desenvolver sistemas de recomendação.
2. Agenda
• Big Data e Sistemas de Recomendação (SR)
• Técnicas utilizadas em SR
• Principais problemas e desafios em SR
• Algoritmos utilizados
• Cases
• Como começar a desenvolver SR?
2
3. Big Data (Volume) - Sistemas de Recomendação
2/3 dos filmes acessados no Netflix são originados de
recomendações (Celma & Lamere - ISMIR 2007)
O volume de informação no mundo ocuparia o equivalente a 295 trilhões de megabytes
(University of Southern California - 2011)
3
4. Big Data (Velocidade) - Sistemas de Recomendação
• Análise de dados:
✓ Processamento em “batch”
✓ Processamento em tempo real
4
5. Sistemas de Recomendação
• Cenário em E-Commerce:
✓A “explosão da informação” resultou em uma enorme
quantidade de itens ao alcance do usuário
✓Dificuldade na escolha para compra de produtos
✓Falta de personalização
✓Email / SPAM
5
6. Sistemas de Recomendação
• 35% das compras na Amazon.com são originadas por recomendações
(Celma & Lamere - ISMIR 2007)
6
“Se tenho 3 milhões de clientes na Web,
tenho de ter 3 milhões de lojas on-line” Jeff
Bezos, Fundador da amazon.com
7. Técnicas Utilizadas em SR
✓Métodos baseados em Conteúdo (CB):
!
!
!
✓Filtragem Colaborativa (CF):
‣ Baseada em Usuário
‣ Baseada em Item
7
9. Técnicas Utilizadas em SR
Figura: Recomendação baseada em Item - Filtragem Colaborativa (Amazon.com,)
9
10. Técnicas Utilizadas em SR
Figura: Recomendação baseada em Usuário - Filtragem Colaborativa (Netflix.com)
10
11. 11
“É complexo definir similaridade, mas…
você sabe quando você a vê.” (Dr. E. Keogh)
12. • Falsos Positivos x Falsos Negativos
• Implementação própria x Frameworks + tools (ex.:
Mahout)
!
• Processamento em “batch" x Tempo Real
12
Problemas e Desafios
13. Problemas e Desafios
• Dispersão de dados (sparsity): usuários conseguem
avaliar (rating) em média1% dos itens disponíveis
(Breese, et. al. - 2010)
• Escalabilidade
• Ovelha Negra
• Primeiro Rating (early-rater)
13
18. Algoritmos de CF - Conceito Geral
18
a) Matriz User-Item
b) User rating document no MongoDB
✦ CF: predizer ratings do usuário ativo para cada produto com base
nos ratings de outros usuários
19. Algoritmos de CF - KNN
19
✦ K-Nearest User Neighborhood (KNN): buscar os K vizinhos mais
próximos
• Input: vetores de ratings de usuários
• Output: os k vizinhos mais próximos
• Recomendação: top ratings de k
20. Algoritmos de CF - Regras de Associação
20
• Encontrar conjuntos de itens (frequent itemsets) que ocorram juntos em um
conjunto de dados
• Em SR: se item A e B estão relacionados, então recomendar item B se
User1 gostou de item A
Tabela 1: Exemplo de um conjunto de transações
Tabela 2: Possíveis regras a partir de T1
22. Algoritmos - Scaling out
22
• TFIDF: dividir conjuntos de documentos para realizar o
processamentos dos vetores de palavras
!
• KNN e Conjunto de Itens Frequentes: paralelizar o
cruzamento de dados utilizando Map-Reduce
!
!
!
!
!