Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Machine Learning e experimentos online para evitar o cancelamento no GloboPlay

51 views

Published on

Palestra ministrada na Qcon SP 2018

Vamos explorar as técnicas de Machine Learning utilizadas para reduzir o churn do GloboPlay principalmente para encontrar os assinantes mais prováveis de cancelar e as métricas correlacionadas, especialmente no uso de técnicas de clusterização e classificação em dados desbalanceados.

Também falaremos sobre algoritmos de recomendação e intervenções experimentadas através de testes AB simultâneos e como evitar a interferência de um experimento em outro. Ao final da palestra o participante terá uma clara noção da importância, quais técnicas e como utilizar ciência de dados para atingir resultados tangíveis em um produto.

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

Machine Learning e experimentos online para evitar o cancelamento no GloboPlay

  1. 1. @timotta Machine learning e experimentos online para evitar cancelamentos no Globoplay @timotta
  2. 2. @timotta Globoplay, Novos assinantes, Cancelamentos
  3. 3. @timotta Churn rate
  4. 4. @timotta Usuários e seu viés de propensão de cancelar
  5. 5. @timotta Churners! Quem são? Onde vivem? Do que se alimentam?
  6. 6. @timotta Let's get the data Usuários retidos Usuários que cancelaram Julho Consumo nas X últimas semanas Histórico da assinatura Dados cadastrais
  7. 7. @timotta Dados desbalanceados Apenas 2% de churners
  8. 8. @timotta Dados desbalanceados Previsto Churn Não churn Atual Churn 0 20 Não churn 0 980 accuraccy: 0,98 precision: 0 recall: 0
  9. 9. @timotta Lidando com desbalanceamento Oversampling Undersampling Smote Class weights Class Weight Churn 60 Não churn 1
  10. 10. @timotta Lidando com desbalanceamento Oversampling Undersampling Smote Class weights Class Weight Churn 60 Não churn 1
  11. 11. @timotta Comunicação de resultados Balanceados Previsto Churn Não churn Atual Churn 445 50 Não churn 30 475 accuraccy: 0,92 precision: 0,94 recall: 0,90 Desbalanceados Previsto Churn Não churn Atual Churn 436 59 Não churn 402 103 accuraccy: 0,54 precision: 0,52 recall: 0,88
  12. 12. @timotta eventos de usuários Assinaturas Vídeos e titulos Dados crus Limpeza dos dados Split treino e teste desbalanceado Balanceamento Split treino e teste treino do modelo (k-fold) Validar no teste balanceado Troca algoritmo Mais informações Validar no teste desbalanceado Processo completo
  13. 13. @timotta - Random forest - 41 features - Dados demográficos - 17 semanas de consumo - Histórico de assinaturas - Balanceamento Smote Modelo final Depois de muitas iterações
  14. 14. @timotta Modelo final: Resultado Melhor F1: - Precision: 33% - Recall: 88%
  15. 15. @timotta Modelo final: Possíveis usos E-mail, push notification - Precision: 10% - Recall: 98% Desconto: - Precision: 84% - Recall: 12%
  16. 16. @timotta Primeiro experimento AB com o modelo ControleAlvo
  17. 17. @timotta sem diferença 11% x 10,6% de cancelamento Primeiro experimento AB com o modelo ControleAlvo
  18. 18. @timotta Churn é uma métrica influenciável em curto prazo?
  19. 19. @timotta Explicando o modelo: Variáveis mais relevantes - Idade da assinatura: Recente - Tipo de cobrança: Boleto - Sexo: Sem preencher
  20. 20. @timotta Quais outros fatores? - Idade da assinatura: Recente - Tipo de cobrança: Boleto - Sexo: Sem preencher - Muito tempo sem retornar ao produto - Poucos diferentes títulos consumidos - Pouco tempo gasto em conteúdo pago - Pouca quantidade de vídeos assistidos
  21. 21. @timotta Quais outros fatores? - Idade da assinatura: Recente - Tipo de cobrança: Boleto - Sexo: Sem preencher - Muito tempo sem retornar ao produto - Poucos diferentes títulos consumidos - Pouco tempo gasto em conteúdo pago - Pouca quantidade de vídeos assistidos
  22. 22. @timotta De vídeos avulsos a títulos Mudança de foco De vídeos avulsos Para programas e filmes
  23. 23. @timotta Hipóteses para influenciar esses fatores
  24. 24. @timotta Muito tempo sem retornar hipótese Dificuldade de encontrar no produto o programa que está acompanhando.
  25. 25. @timotta Proposta: Prever títulos que assistirá no dia
  26. 26. @timotta Bag of entity V: Matriz de preferências de usuários para cada título Z: Matriz com a soma do tempo de vídeo de cada usuário em cada título no último dia ƛ: Redutor temporal with time reduction
  27. 27. @timotta Métrica de ranking vs métrica de classificação Preferência Algoritmo 1 Algoritmo 2 1 1 2 3 32 Classificação: Empate Ranking: Algoritmo 2
  28. 28. @timotta MRR constante em diversas datas
  29. 29. @timotta Melhor que top: ƛ = 0,95 ƛ = 0.95 MRR: 0.51 Top MRR: 0.35
  30. 30. @timotta Retorno semanal Ui Ui+1 usuários ativos na semana i usuários ativos na semana i+1
  31. 31. @timotta Experimento AB +3,61% de retorno semanal
  32. 32. @timotta Poucos títulos consumidos hipótese - Usuário não conhece a enorme variedade de títulos que o Globoplay oferece - Produto não exibe de forma clara essa variedade ao usuário
  33. 33. @timotta Propostas: Oferecer títulos relevantes e novos
  34. 34. @timotta Filtragem colaborativa
  35. 35. @timotta Memory based: KNN
  36. 36. @timotta Memory based: Enorme matriz
  37. 37. @timotta Model based: SVD
  38. 38. @timotta Model based: ALS
  39. 39. @timotta Aumento de programas consumidos AuBu títulos consumidos antes títulos consumidos Depois
  40. 40. @timotta Concentração de usuários em títulos: Gini
  41. 41. @timotta Concentração de usuários em títulos: Gini gini = 0,22 gini = 0,09 gini = 0,13
  42. 42. @timotta Experimento AB +2,75 de programas consumidos -1,2% de concentração de programas AlvoControle
  43. 43. @timotta Mais de 20 experimentos AB (sem contar dos outros times)
  44. 44. @timotta Sem isolamento Experimento 1 Experimento 2 Experimento 3 Sorteio A B Sorteio A B Sorteio A B
  45. 45. @timotta Experimentos isolados Sorteio Experimento 1 Experimento 2 Slot vazio Experimento 3 Sorteio A B Sorteio A B Sorteio A B
  46. 46. @timotta Experimentos Multi Variados Experimento 1 Experimento 2 Experimento 3 Sorteio A B Sorteio A B Sorteio A B E1 E2 E3 R A A A 10% A A B 12% A B B 8% B B B 10% B B A 14% B A A 8% B A B 10% A B A 11%
  47. 47. @timotta - Machine learning lidando com dados desbalanceados - Mudanças de rumo influenciadas pela análise de dados - Diferentes algoritmos para diferentes objetivos - Experimentos AB online paralelos e concorrentes Resumão pra prova
  48. 48. @timotta Recomendação Featuring Segmentação Cluster Pipeline Experimentação Growth
  49. 49. @timotta @timotta

×