Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Projetando interfaces inteligentes v2

Projetando interfaces inteligentes v2

Apresentada na Webbr 2017

91b0fc08849c4128f1eed542c057fd27?s=128

Isabella Silveira

October 24, 2017
Tweet

Transcript

  1. Projetando interfaces inteligentes Machine learning como ferramenta de personalização #Webbr2017

  2. 1. Era da informação 2. Por que machine learning? 3.

    Botando em prática 4. Próximos passos
  3. Isa Silveira Desenvolvedora @Work&Co Beer lover, mãe de cachorro, maths

    freak, senso de humor peculiar @vida
  4. Era da informação

  5. Desde os tempos mais primórdios até 2005, os humanos produziram

    130 EB (10^18) de informação.
  6. 1B = 1 caracter

  7. 1MB ~= 873 páginas de texto

  8. 1GB ~= todas as informações no nosso DNA

  9. None
  10. None
  11. None
  12. None
  13. X

  14. X

  15. Em 2010, esse número pulou para 1200 EB.

  16. X

  17. Em 2015, já eram 7900 EB.

  18. A estimativa é que por volta de 2020, serão mais

    de 40900 EB de dados.
  19. 2005 - 130 EB 2010 - 1.200 EB 2015 -

    7.900 EB 2020 - ~40.900 EB
  20. X

  21. Meanwhile, in 2017…

  22. Produtos e experiências digitais estão cada vez mais sofisticadas e

    personalizadas.
  23. None
  24. None
  25. None
  26. A personalização faz com que o usuário se conecte com

    o produto na sua própria maneira.
  27. Mas como criar essas experiências singulares em grande escala?

  28. Como consumir essa quantidade de dados de forma eficiente?

  29. Por que machine learning?

  30. “Machine learning provides computers the ability to learn without being

    explicitly programmed.” Arthur Mitchell, 1959
  31. Permite que a máquina aprenda. Com algoritmos de ML é

    possível parsear dados, aprender com eles e fazer classificações ou predições em massa. Ao invés de criarmos algoritmos cheios de regras específicas para executar uma tarefa, treinamos a máquina com datasets enormes para que ela aprenda como executar a tarefa por si só.
  32. Não necessariamente aprender como destruir a raça humana.

  33. Com machine learning, podemos usar dados para tirar conclusões sobre

    uma grande quantidade dados de forma automatizada.
  34. Tipos de algoritmos.

  35. Uma grande quantidade de dados é alimentada ao algoritmo que

    então trabalha para descobrir padrões e agrupar tipos similares de dados ou entidades. Uma grande quantidade de dados é alimentada ao algoritmo que então trabalha para descobrir padrões e agrupar tipos similares de dados ou entidades. O algoritmo interage com um ambiente dinâmico onde deve executar determinada tarefa. A partir disso são oferecidos feedbacks positivos ou negativos quanto ao desempenho frente à tarefa. Unsupervised learning Reinforcement learning Supervised learning Tipos de algoritmos
  36. Uma grande quantidade de dados é alimentada ao algoritmo que

    então trabalha para descobrir padrões e agrupar tipos similares de dados ou entidades. Uma grande quantidade de dados é alimentada ao algoritmo que então trabalha para descobrir padrões e agrupar tipos similares de dados ou entidades. O algoritmo interage com um ambiente dinâmico onde deve executar determinada tarefa. A partir disso são oferecidos feedbacks positivos ou negativos quanto ao desempenho frente à tarefa. Unsupervised learning Reinforcement learning Supervised learning Tipos de algoritmos
  37. Etapas de desenvolvimento.

  38. 1. Escolha do algoritmo adequado. 2. Treinamento do algoritmo. 3.

    Validação do treinamento. 4. Uso em produção.
  39. Aplicações.

  40. 1. Recomendação. 2. Classificação. 3. Predição. 4. Reconhecimento de imagem.

    5. NLP.
  41. 01 Algoritmos usados para descobrir produtos ou itens dentro do

    padrão de compra ou preferência do usuário. Recomendação
  42. 01 APPROACHES

  43. 1. Collaborative filtering. 2. Content-based filtering.

  44. 01 Agrupar usuários em grupos de comportamentos e preferencias similares

    e realizar recomendações a partir do padrão do grupo. Collaborative filtering
  45. None
  46. Um desafio é o famoso “cold start”, ou seja, quando

    você não tem nenhuma informação sobre o usuário ainda pra poder bota-lo em algum grupo e assim fazer recomendações.
  47. Outro problema é a escalabilidade, já que quando você tem

    milhões de usuários cadastrados, agrupa- los e monitorar suas ações requer um poder computacional muito brabo.
  48. Pedir recomendação de música a um amigo com gosto musical

    parecido com o seu.
  49. Usado pelo Facebook e LinkedIn para recomendação de novos amigos/conexões.

  50. 02 Cruzam informações sobre os itens com preferências do usuário,

    fazendo recomendação de itens parecidos com os que usuário comprou ou visualizou no passado. Content-based filtering
  51. O maior desafio é a falta de novidades porque você

    fica recomendando sempre coisas parecidas e precisa de pessoas muito entendidas de cada item pra classificar cada um direito, já que isso afeta a sua recomendação..
  52. Approach usado nas recomendações de filmes da Netflix.

  53. None
  54. 1. Recomendação. 2. Classificação. 3. Predição. 4. Reconhecimento de imagem.

    5. NLP.
  55. 02 Situações onde temos um grande volume de dados e

    queremos categorizá-los de forma automatizada. Classificação
  56. Descobrir se a review de um produto é negativa ou

    positiva.
  57. Usado no Gmail para filtrar mensagens de spam da caixa

    de entrada.
  58. 1. Recomendação. 2. Classificação. 3. Predição. 4. Reconhecimento de imagem.

    5. NLP.
  59. 03 Técnica também conhecida como regressão, consegue prever resultados mais

    prováveis a partir de dados anteriores. Predição
  60. Analisar o comportamento do mercado de ações e prever suas

    oscilações.
  61. 1. Recomendação. 2. Classificação. 3. Predição. 4. Reconhecimento de imagem.

    5. NLP.
  62. 04 A partir de uma imagem, é possível identificar elementos

    ou descobrir o que ela representa. Reconhecimento de imagem
  63. Reconhecimento facial do Facebook, veículos autônomos, busca do Pinterest.

  64. X

  65. https://github.com/bella-silveira/image- recognition U M E X P E R I

    M E N TO X
  66. 1. Recomendação. 2. Classificação. 3. Predição. 4. Reconhecimento de imagem.

    5. NLP.
  67. 05 Processamento de linguagem natural, nos permite entender o contexto

    e comandos de texto livre. NLP
  68. None
  69. None
  70. None
  71. Botando em prática

  72. Construir um sistema EAD com ensino adaptativo.

  73. 2 tipos de perfis de alunos foram mapeados: o principiante

    e o expert.
  74. Perfis de comportamento de cada aluno moldam o conteúdo e

    a forma como ele é exibido na plataforma.
  75. Fatores de personalização.

  76. 1. Profundidade de conteúdo. 2. Forma de consumo. 3. Plano

    de estudos.
  77. Receita do bolo.

  78. 01 Adicione um algoritmo de classificação à sua escolha.

  79. Nesse caso, escolhi KNN.

  80. None
  81. K = 3

  82. Valor de K 10 20 30 40 0,1 0,2 0,3

    0,4 0,5 0,6 0,7 0,8 0,9 1 1,1 Erro de treinamento Erro de classificação
  83. Valor de K 10 20 30 40 0,1 0,2 0,3

    0,4 0,5 0,6 0,7 0,8 0,9 1 1,1 Erro de validação Erro de classificação
  84. Fácil interpretação e pouco tempo de cálculo dos resultados.

  85. 02 Colha bastante dados de analytics (ou simule-os para efeito

    de teste)
  86. Dados que qualifiquem o comportamento do usuário.

  87. Ex: Tempo gasto no sistema, especificidade do conteúdo ou continuidade

    no mesmo tema.
  88. 03 Uma boa biblioteca

  89. ML.js <3

  90. https://github.com/mljs/ml

  91. 5 baldes de paciência.

  92. O resultado.

  93. • Programei o algoritmo; • Prepararei o dataset; • Realizei

    o treinamento; • Achei k; • Colhi os resultados; • Usei em produção. Em 7 dias:
  94. $ node knnStudentClassify.js Tamanho dataset treinamento = 53 Erros de

    classificação = 4 ————————RESULTADO————————- Principiantes = 32 Experts = 21
  95. Com ML, a experiência de cada usuário pode se aproximar

    cada vez mais das suas necessidades.
  96. Seamlessly.

  97. Quanto menos etapas, mais natural é a utilização da plataforma.

  98. Tudo isso em pouquíssimos dias :)

  99. None
  100. Machine learning não é rocket science e está ao nosso

    alcance para aprendizado e contribuição.
  101. https://github.com/josephmisiti/awesome- machine-learning

  102. Próximos passos

  103. Atualmente, a personalização de experiências digitais é uma grande tendência.

  104. O aprendizado de máquina chega como um enorme aliado nessa

    empreitada.
  105. Tendências 2018+

  106. None
  107. Com o aumento do poder computacional, algoritmos de ML se

    tornarão cada vez mais acessíveis.
  108. Guerra de plataformas entre Google, IBM, Microsoft e Facebook.

  109. Maior procura por profissionais de data science.

  110. Machine learning revolucionará a tecnologia como a conhecemos.

  111. Perguntas?

  112. Obrigada!

  113. Get in touch. /in/isabellasilveira isabella.silveira.souza@gmail.com @silveira_bells /bella-silveira