O documento discute técnicas de sistemas de recomendação, incluindo filtragem colaborativa por usuário e produto e recomendação baseada em conteúdo. Também aborda como os dados são coletados, os métodos de avaliação de precisão e tecnologias populares como PredictionIO.
Introdução aos sistemas de recomendação usando Machine Learning
1. Como a e a sabem
o que quer comprar e assistir?
@MumHaBR
#recommendersystems
#datascience
#predictionIO
https://br.linkedin.com/in/rafaelleonhardt
2. • inteligência artificial
• algoritmos e técnicas que aprendem
• extrai regras e padrões
• mineração de dados e estatísticas
Fonte: https://pt.wikipedia.org/wiki/Aprendizado_de_máquina
3. Áreas de aplicação
LOGÍSTICA
manutenção
rota de entrega
self-driver
carregamento
gestão de risco
ACESSO & SEGURANÇA
identificação
reconhecimento
monitoramento
robôs autônomos
ERP
manutenção
anti-fraude
otimização
ações automáticas
vendas
e-commerce
RH
turn-over
contratações
promoção
treinamentos
7. Métodos comuns
SUPERVISIONADO NÃO SUPERVISIONADO
Na cesta tem:
• Maça (vermelha, médio),
• Uva (verde, pequeno)
• Banana (amarela, médio), etc.
Classificações: Maça, Uva, Banana, etc
Não sei o que tem na cesta.
Atributos: cor, tamanho, etc
Grupos: A, B, C, D, E, F, etc
11. Coleta de dados – EXPLÍCITA
[ ? ] Eu possuo
[ ? ] Não tenho interesse
[ ? ] Avalie este item
[ ? ] Classificação
[ ? ] Minha lista
[ ? ] Gosto de: ação, suspense, etc
12. Vocês são sinceros ao avaliar um produto?
Gera recomendações de alta qualidade
SEMPRE avaliam um produto?
Geralmente avaliamos poucos itens.
O que os motiva avaliarem?
Geralmente nos extremos: muito bom ou muito ruim.
Quantos filmes e séries faltam assistir para “ZERAR” o Netflix?
Um usuário consome um % pequeno de itens e avalie menos ainda.
Coleta de dados – EXPLÍCITA
13. Coleta de dados – IMPLÍCITA
[ ! ] Porque você comprou “It´s so easy”
[ ! ] Porque você visualizou “X”
[ ! ] Porque você compartilhou “Y”
[ ! ] Porque você assistiu “Marco Polo”
Outras formas:
• Tipo do dispositivo utilizado
• Browser utilizado
• Região de onde está acessando
• Histórico de navegação
14. Em um site, quais informações eles sabem de vocês?
Eles sabem, gostem ou não. (Celular, Browser, Cidade, Horário, Navegação, etc)
Vocês já compraram algo que não era para vocês?
Eu comprei o livro Slash e o Peppa Pig.
Logo, quem gosta de Guns gosta de Peppa?
Mais alguém da casa usa sua conta?
Eu escuto Guns N Roses e minha filha Xuxa.
Coleta de dados – IMPLÍCITA
Como resolver?
- detectar ações fora do padrão e ignorar
- permitir aos usuários corrigirem
20. Técnica – Filtragem Colaborativa por Usuário
Vantagens
• Não precisa de detalhes sobre os itens (produtos)
• Usuários geram mais informações voluntariamente
21. Técnica – Filtragem Colaborativa por Usuário
Vantagens
• Não precisa de detalhes sobre os itens (produtos)
• Usuários geram mais informações voluntariamente
Problemas
• Novos produtos e usuários
22. Técnica – Filtragem Colaborativa por Usuário
Vantagens
• Não precisa de detalhes sobre os itens (produtos)
• Usuários geram mais informações voluntariamente
Problemas
• Novos produtos e usuários
• Itens populares
23. Técnica – Filtragem Colaborativa por Usuário
Vantagens
• Não precisa de detalhes sobre os itens (produtos)
• Usuários geram mais informações voluntariamente
Problemas
• Novos produtos e usuários
• Itens populares
• Esparcidade
(avaliações do usuário X qtde produtos)
24. Técnica – Filtragem Colaborativa por Usuário
Vantagens
• Não precisa de detalhes sobre os itens (produtos)
• Usuários geram mais informações voluntariamente
Problemas
• Novos produtos e usuários
• Itens populares
• Esparcidade
• Maior processamento - 18 milhões de usuários
25. Técnica – Filtragem Colaborativa por Usuário
Vantagens
• Não precisa de detalhes sobre os itens (produtos)
• Usuários geram mais informações voluntariamente
Problemas
• Novos produtos e usuários
• Itens populares
• Esparcidade
• Maior processamento
• Precisa de um volume grande de avaliações do usuário para ser assertivo
30. Técnica – Filtragem Colaborativa por Produto
Vantagens
• Não precisa de detalhes sobre os produtos
• Menos processamento
• Menor esparcidade
• Não precisa recalcular as similaridade toda hora
Problemas
• Novos produtos e usuários
• Itens populares
• Mais complexo
31. Técnica – Baseada em Conteúdo
Suspense
Ação
Violência
Suspense
Violência
Sitcom
Humor
Desenho
Humor
Infantil
série dramática
e pós-
apocalíptica co
m zumbis;
sobre os
primeiros anos
de Marco Polo
no Império
Mongol
Sitcom sobre
grupo de
amigos que
vivia em Nova
York
Série britânica
de desenhos
animados para
crianças em
idade pré-
escolar
Termo Frequência Relevância
Suspense 2 8
Violência 2 8
Humor 2 8
Desenho 1 10
Amigos 1 10
de 3 6
Etc ...
TF-IDF
33. Técnica – Baseada em Conteúdo
Vantagens
• Não depende de dados de outros usuários
• Novos produtos e não populares podem ser recomendados
Problemas
• Difícil identificar quais atributos são importantes descrever
• Novos usuários
• Mesmos itens (itens de maior relevância)
35. Como avaliar a precisão?
• Mean Absolute Error
• Mean Squared error
• Root Mean Squared Error
Acurácia
quanto a recomendação foi assertiva
Cobertura
% de produtos e usuários com
recomendação
Diversidade
variedade de produtos
recomendados
sub-campo da inteligência artificial
focado em algoritmos e técnicas que permitam ao computador aperfeiçoar seu desempenho em uma tarefa (melhorar o resultado)
raciocínio indutivo - extrai regras e padrões de grandes conjuntos de dados
“ligado” à mineração de dados.
O raciocínio dedutivo, chega a conclusões. Por exemplo, todo pássaro voa; papagaio é um pássaro. Logo papagaio voa.
Diferença entre
- mineração de dados descobre padrões e conhecimento previamente desconhecidos.
aprendizado de máquina reproduz padrões e conhecimento conhecidos aplicado a novos dados
Deep learning usa redes neurais para entender padrões mais complexos. Usado no reconhecimento de imagens, textos e voz, tradução automática, etc.
RH – gap de treinamentos, recomendar treinamentos,
Acessar uma catraca em determinado momento fora do comum é um alerta de segurança?
Uma pessoa que normalmente acessa alguns locais em um horário fora do comum acessa outro local? É um alerta?
Carrinho:
Verajo: um pedido pode ser um pgto de fraudulento?
HelpDesk – perceber o tom da escrita dos chamados ou de uma ligação de voz?
Busca dentro dos sistemas, “folha de pagamento”
Carros dirigindo sozinho
Medindo o que as pessoas estão dizendo nas redes sociais
Deteccao de fraude em pgto
Previsão de falhas em equipamentos na manutafura e logística, manutenção preventiva
Recomhecimento de imagens
Ronda de vigilantes, o vigia faz uma rota fora do comum – analise em tempo real.
O que são os sistemas de recomendação?
Vamos ver uma introdução aos sistemas de recomendação...
Onde uma das técnicas mais comuns utilizadas esta o Machine Learning.
Mail marketing
Carrinho abandonado
E-commerce
Força de vendas
Simulação de novos produtos
Classifica no supervisionado.
Agrupa no não supervisionado.
Dois métodos comuns usados em recomendação.
http://www.sas.com/pt_br/insights/analytics/machine-learning.html
http://pt.slideshare.net/AmazonWebServicesLATAM/webinar-amazon-machine-learning?qid=7a2f4a74-039e-44b9-a068-abaed06515fd&v=&b=&from_search=12
Supervisionado
Não supervisionado
Dados não rotulados
Mostra uma imagem de maça mas não diz que aquilo é uma maça
Supervisionado
O sistema recebe um conjunto de dados que já se sabe a resposta correta.
Controle de fraude – já houve casos positivos e negativos de fraude. Ele aprende com o histórico para prever o futuro.
Previsa de casos positivos e negativos.
KNN muito usado.
Não supervisionado
Segmentos de clientes parecidos para uma campanha de marketing
Em pesquisas de texto
Por Reforço
Evolutivo -
Clientes não registrados
Clientes registrados
Primeiro passo é coletar dados.
- Geram recomendações de excelente qualidade
Quase nunca avaliam. O algoritmo depende do usuário tomar uma ação.
Avaliam quando gostam ou não gostam MUITO, apenas nos extremos.
Normalmente consumimos um percentual pequeno do que tem disponível. E avaliamos menos ainda. Espacidade.
Simplesmente uso o serviço e ele vai coletando e armazenando informações.
Vantagens
Vocês sabem quais informações suas estão sendo armazenadas?
Não depende de ação extra do usuário
Desvantagens
- Amazon acha que eu gosto de livros sobre Guns N Roses e Peppa Pig. Se outro usuário gosta de Guns N Roses significa que também gosta de Peppa Pig?
- Netlix acha que eu gosto de Breaking Bad e Peppa Pig
Vantagens – criar a imagem acessando de um iphone e destacar as informações que podem ser coletadas
dispositivo, resolução, pelo IP a cidade, histórico de navegação, o que poe no carrinho de compra.
desenhar na mão.
Spotify – o Spotify acha que eu gosto de Heavy Metal e Xuxa.
Netflix – que eu gosto de Walking Dead e Pepa Pig
Tecnica para evitar isso é excluir os extremos ou itens que tem poucas combinações.
Filtragem Colaborativa e Baseado em Conteúdo.
Tambem chamado de Baseado em Memória.
Visão simplificada dos algoritmos.
Tambem chamado de Baseado em Memória.
Calculos de similaridade: coseno, distancia euclidiana, correlação do coeficiente de Pearson, coeficiente de jaccard
Então usa o K-nn para descobrir os vizinhos mais próximos. ALS
Tambem chamado de Baseado em Memória.
O que os vizinhos mais próximos gostaram?
Montado uma lista de recomendações para o usuário.
Esparcidade – um usuário consome um percentual pequeno dos produtos, e avalia menos ainda.
Como melhorar.
Colocar a planilha do slide anterior simulando as vantagens e desvantagens.
Esparcidade – um usuário consome um percentual pequeno dos produtos, e avalia menos ainda.
Colocar a planilha do slide anterior simulando as vantagens e desvantagens.
Esparcidade – um usuário consome um percentual pequeno dos produtos, e avalia menos ainda.
Colocar a planilha do slide anterior simulando as vantagens e desvantagens.
Esparcidade – um usuário consome um percentual pequeno dos produtos, e avalia menos ainda.
Maior processamento – criar a matriz incluindo todos os usuários, quando alguém dá um voto teria que recalcular.
Colocar a planilha do slide anterior simulando as vantagens e desvantagens.
Esparcidade – um usuário consome um percentual pequeno dos produtos, e avalia menos ainda.
De modo geral baseado em produto é melhor que o baseado em usuário.
Amazon: ~353 milhões de produtos / 350 milhões de clientes ativos em 2015
Mais complexo para definir o modelo.
Menos processamento, considerando que há mais clientes do que produtos.
Menor esparcidade pois geralmente um produto vai ter mais clientes que um cliente vai ter de produtos. Cada item geralmente tem um ou mais clientes que compraram.
Netflix tem 60000 produtos, spotify são 20 bilhões de produtos.
Porque netflix não usa essa? Perfil impacta mais pra Netflix do que na Amazon. Na amazona produtos comprados juntos podem melhorar a venda. Resposta mais a frente em hibrida.
Recomenda itens baseados no histórico do usuário. Por exemplo, avaliando os atributos dos itens já consumidos para sugerir algo com as mesmas características.
Recomenda itens baseados na pesquisa.
Pesquisar por: DE + AMIGOS – sugere amigos primeiro pois tem maior peso.
Ao pesquisar por humor
Atributos dos itens: diretor, atores,
Google AdSense usa baseado em conteúdo por exemplo no Gmail, baseado no conteúdo do email ou da pesquisa que está fazendo ou de um post em um blog.
TF-IDF
Term-frequency : qto mais o termo aparece maior a relevancia
Inverse-Document-Frequency: qto mais aparicoes em outros documentos menor é a relevancia
Recomenda itens baseados no histórico do usuário. Por exemplo, avaliando os atributos dos itens já consumidos para sugerir algo com as mesmas características.
Recomenda itens baseados na pesquisa.
Pesquisar por: DE + AMIGOS – sugere amigos primeiro pois tem maior peso.
Ao pesquisar por humor
Atributos dos itens: diretor, atores,
Google AdSense usa baseado em conteúdo por exemplo no Gmail, baseado no conteúdo do email ou da pesquisa que está fazendo ou de um post em um blog.
TF-IDF
Term-frequency : qto mais o termo aparece maior a relevancia
Inverse-Document-Frequency: qto mais aparicoes em outros documentos menor é a relevancia
Novos usuários – até consumir ou pesquisar um primeiro produto.
Todos eles acabam usando mais de uma técnica em algum momento.
Média ponderada é dado um peso para cada um.
Quantos itens diferentes (variedade) é recomendado nas Top-10 para os usuários?
Variedade – não recomendar dois itens muito similares, colocar outro no lugar.
MAE - Erro médio absoluto
MSE - Erro Médio Quadrático
RMSE - Raiz do Erro Médio Quadrático
RMSE:
Puv – avaliação recomendada para o item
Ruv – avaliação real do usuário para o item
N – quantidade de previsões feitas
Machine Learning as a Service
Outros, como taxa de churn, recomendação de musica, etc.