SlideShare ist ein Scribd-Unternehmen logo
1 von 51
Downloaden Sie, um offline zu lesen
Validação Offline e Online
Recomendação de Programas
Metodologia
Metodologia resumida
Validação offline
Validação offline temporal
Dia 1 Dia 2 Dia 3 Dia 4 Dia 5 Dia 6
Teste 1
Teste 2
Teste 3
Teste 4
Teste 5
Dados de treino do
algoritmo
Dados para
validação do
algoritmo
Mean Reciprocal Rank
Exemplo de
cálculo do Mean
Reciprocal Rank
User 1
User 2
User 3
Previstos pela recomendação
Exemplo de
cálculo do Mean
Reciprocal Rank
User 1
User 2
User 3
Acertos da recomendação
Rank = 1/2
Rank = 1/1
Rank = 1/3
Exemplo de
cálculo do Mean
Reciprocal Rank
( 0,5 + 1 + 0,333) / 3
MRR = 0,61
Rank = 1/2
Rank = 1/1
Rank = 1/3
Teste AB
Sobre a recomendação
de programas
Recomendação ● Facilitar a escolha de
programas
● Aumentar a personalização e
especialização
● Ajudar usuário a encontrar
novos programas
● Aumentar o tempo online
Recomendação ● Facilitar a escolha de
programas
● Aumentar a personalização e
especialização
● Ajudar usuário a encontrar
novos programas
● Aumentar o tempo online
Content Based
Recomendação ● Facilitar a escolha de
programas
● Aumentar a personalização e
especialização
● Ajudar usuário a encontrar
novos programas
● Aumentar o tempo online
Collaborative Filtering
Não personalizados
Recomendação ● Facilitar a escolha de
programas
● Aumentar a personalização e
especialização
● Ajudar usuário a encontrar
novos programas
● Aumentar o tempo online
Content Based
Collaborative Filtering
Não personalizados
Recomendação ● Facilitar a escolha de
programas
● Aumentar a personalização e
especialização
● Ajudar usuário a encontrar
novos programas
● Aumentar o tempo online
Content Based
Collaborative Filtering
Não personalizados
Content Based
Técnica:
Bag of user
properties
Content-based Recommender Systems: State of
the Art and Trends
Pasquale Lops, Marco de Gemmis and Giovanni
Semeraro
http://facweb.cs.depaul.edu/mobasher/classes/ect5
84/Papers/ContentBasedRS.pdf
Bag-of-Features Tagging Approach for a Better
Recommendation with Social Big Data
Ming Cheung and James She
http://smedia.ust.hk/ming/papers/2014IMMMTaggin
g.pdf
From Word Embeddings to Item
Recommendation
Makbule Gulcin Ozsoy
https://arxiv.org/pdf/1601.01356.pdf
Bag of user properties
Bag of user properties
Bag of user properties
Bag of user properties
Bag of user properties
O quanto
você gosta?
Bag of user properties
O quanto
você gosta?
Preferência do
usuário por
vídeo
Completude de vídeo
assistido
Play StopIntervalo
Pause/
Play
( time(stop) - time(play) - Σ time(pauses) )
duration
Cálculos
experimentados
de preferência
de programa
Usando completude de
vídeos assistidos
top Programas com maior completude de videos
assistidos por todos usuários
pref_99,
pref_95,
pref_75,
...
Soma da completude dos vídeos assistidos
pelo usuário por programa, aplicando um
multiplicador temporal diário.
pref_nmb,
pref_nmp,
pref_ndp,
...
Soma da completude dos vídeos assistidos
pelo usuário por programa normalizando pela
média do programa, do usuário ou de ambos,
por divisão e subtração.
pref_zu,
pref_zp,
pref_zb
Soma da completude dos vídeos assistidos
pelo usuário por programa normalizando pela
média e desvio padrão, do programa, usuário e
de ambos.
Prevendo o programa preferido do dia seguinte
De usuários que acessaram entre 15/06/2017 a 22/06/2017
Prevendo o programa preferido do dia seguinte
De usuários que acessaram entre 15/06/2017 a 22/06/2017
Pref_95:
MRR: 0.51
Maior completude pelo
perfil com multiplicador
temporal de 0.95
Programas mais
recomendados
na primeira
posição
No dia 15/06/2017
Cálculo com
melhor
resultado na
validação offline
Soma da completude com
multiplicador temporal de 0.95
Dia 1 Dia 2
Cálculo com
melhor
resultado na
validação offline
Soma da completude com
multiplicador temporal de 0.95
Dia 1 Dia 2
0,9
0,7
1,6
Cálculo com
melhor
resultado na
validação offline
Soma da completude com
multiplicador temporal de 0.95
Dia 1 Dia 2
0,9
0,7
1,6 0,81,52
x0,95
Cálculo com
melhor
resultado na
validação offline
Soma da completude com
multiplicador temporal de 0.95
Dia 1 Dia 2
0,9
0,7
1,6 0,8
0,2
2,52
x0,95
Collaborative Filtering
Collaborative filtering
Técnica:
Alternating least
squares
Collaborative Filtering for Implicit Feedback
Datasets
Yifan Hu, Yehuda Koren, Chris Volinsky
http://yifanhu.net/PUB/cf.pdf
Alternating Least Squares
Alternating Least Squares
Alternating Least Squares
3.634.0 -
Alternating Least Squares
Média de erros
quadráticos
Qual melhor valor inicial?
3.63
Qual melhor
cálculo de
preferência do
usuário para o
Collaborative
Filtering?
als_99,
als_95,
als_75,
...
Soma da completude dos vídeos assistidos
pelo usuário por programa, aplicando um
multiplicador temporal diário.
als_nmb,
als_nmp,
als_ndp,
...
Soma da completude dos vídeos assistidos
pelo usuário por programa normalizando pela
média do programa, do usuário ou de ambos,
por divisão e subtração.
als_zu,
als_zp,
als_zb
Soma da completude dos vídeos assistidos
pelo usuário por programa normalizando pela
média e desvio padrão, do programa, usuário
e de ambos.
Prevendo o programa preferido do dia seguinte
De usuários que acessaram entre 15/06/2017 a 22/06/2017
Prevendo o programa preferido do dia seguinte
De usuários que acessaram entre 15/06/2017 a 22/06/2017
als_95zu:
MRR: 0.18
Maior completude pelo perfil com
multiplicador temporal de 0.95 e
normalização por média e desvio
padrão de usuário.
Especialização
Do dia 15/06/2017 a 17/06
Percentual de usuários
que receberiam como
primeira recomendação
este programa
Exemplos
qualitativos
No dia 15/06/2017
Preferências
Recomendação
Exemplos
qualitativos
No dia 15/06/2017
Preferências
Recomendação
Exemplos
qualitativos
No dia 15/06/2017
Preferências
Recomendação
Futuro
xCLiMF xCLiMF: Optimizing Expected Reciprocal Rank
for Data with Multiple Levels of Relevance
Karatzogloub, Linas Baltrunasb, Martha Larsona,
Alan Hanjalica
https://alexiskz.files.wordpress.com/2016/06/xclimf_
err.pdf
https://github.com/timotta/xclimf
Dúvidas?
@timotta

Weitere ähnliche Inhalte

Mehr von Tiago Albineli Motta

Mehr von Tiago Albineli Motta (11)

xCLiMF
xCLiMFxCLiMF
xCLiMF
 
Rastros digitais
Rastros digitaisRastros digitais
Rastros digitais
 
Big data
Big dataBig data
Big data
 
Recomendação de ponta a ponta na Globo.com
Recomendação de ponta a ponta na Globo.comRecomendação de ponta a ponta na Globo.com
Recomendação de ponta a ponta na Globo.com
 
Recomendação na Globo.com
Recomendação na Globo.comRecomendação na Globo.com
Recomendação na Globo.com
 
Otimizando seu projeto Rails
Otimizando seu projeto RailsOtimizando seu projeto Rails
Otimizando seu projeto Rails
 
Meta-programacao em python
Meta-programacao em pythonMeta-programacao em python
Meta-programacao em python
 
Testes unitários e de integração: Quando e Porque
Testes unitários e de integração: Quando e PorqueTestes unitários e de integração: Quando e Porque
Testes unitários e de integração: Quando e Porque
 
Redis na Prática
Redis na PráticaRedis na Prática
Redis na Prática
 
Dinamizando Sites Estáticos
Dinamizando Sites EstáticosDinamizando Sites Estáticos
Dinamizando Sites Estáticos
 
Escalando Sites com Nginx
Escalando Sites com NginxEscalando Sites com Nginx
Escalando Sites com Nginx
 

Avaliação offline e online de recomendação de programas