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.
BOT
DE RESULTADOS ELECTORALES
EN NODE.JS
J AV I E R A B A D Í A , D I C 2 0 1 6
¿POR QUE?
DEMO
D I R E C TA M E N T E A L A P I S C I N A
backend
service
ANATOMÍA DE UN BOT
plataforma
entender
procesar
responder
ENTENDER
N L - U N D E R S TA N D I N G
INTENT
parameter
parameter
‘ganador’
‘Durango’ 48027
‘2016’
ALTERNATIVAS
• NLTK (python)
• Freeling (C++)
• https://stanfy.com/blog/advanced-natural-language-
processing-tools-for-bo...
ML-’PREDECIR’ LA INTENCIÓN
extraer features
predecir
INTENT
contexto
PRE-PROCESO
FEATURES - REGEX
ML – PREDECIR – DECISION TREES
modificado para añadir classifier.fromJSON()
TRAINING THE MODEL
MANUAL REWIRING = PARCHEAR
DISPATCH
PROCESARP I E C E O F C A K E
TAN FÁCIL COMO LLAMAR A LA API
REST
RESPONDERN L - G E N E R A T I O N
VARIEDAD
RESPONDER A LO DESCONOCIDO = NO
PROVOCAR
PLATAFORMA
OPCIONES
twitter FB messenger telegram UI Web/Móvilwhatsapp
✓
✗
fácil de
desarrollar
penetración
chat-friendly
✓ ✓✓ ✗✗ ✗
✓...
TWITTER
• API de twitter
–stream o poll
• escuchar mensajes (filtrados)
• publicar mensajes o enviar dm
• quotas
–automati...
RECIBIENDOTWEETS
ASYNC - COORDINAR TAREAS ASÍNCRONAS
POST-MORTEMI N G E N I E R Í A S O C I A L
PRUEBAS PREVIAS - ENTRENAMIENTO
•usando la interfaz web
•3 generaciones
–yo solo
–yo y algunos amigos
–yo, algunos amigos ...
TWITTER != INTERACTIVO
•en twitter la gente no chatea
•responder a @menciones no funciona
•quotas
–2500 mensajes por hora
USUARIOS IMPACIENTES
• hay que promocionar el bot con antelación
• hay que generar contenido “interesante” antes de que
em...
RECURSOS
RECURSOS
• NLP
– NLTK
– Freeling
– https://stanfy.com/blog/advanced-
natural-language-processing-tools-
for-bot-makers/
• ...
¡GRACIAS!
E S T O E S T O D O A M I G O S
Anatomía de un Bot para Resultados Electorales
Anatomía de un Bot para Resultados Electorales
Anatomía de un Bot para Resultados Electorales
Upcoming SlideShare
Loading in …5
×

Anatomía de un Bot para Resultados Electorales

348 views

Published on

Charla del Meetup de Node-js el 13 de Dicembre de 2016

Published in: Software
  • Be the first to comment

  • Be the first to like this

Anatomía de un Bot para Resultados Electorales

  1. 1. BOT DE RESULTADOS ELECTORALES EN NODE.JS J AV I E R A B A D Í A , D I C 2 0 1 6
  2. 2. ¿POR QUE?
  3. 3. DEMO D I R E C TA M E N T E A L A P I S C I N A
  4. 4. backend service ANATOMÍA DE UN BOT plataforma entender procesar responder
  5. 5. ENTENDER N L - U N D E R S TA N D I N G
  6. 6. INTENT parameter parameter ‘ganador’ ‘Durango’ 48027 ‘2016’
  7. 7. ALTERNATIVAS • NLTK (python) • Freeling (C++) • https://stanfy.com/blog/advanced-natural-language- processing-tools-for-bot-makers/ – wit.ai (Facebook) – LUIS (Microsoft) – api.ai ($) – Alexa (AWS) – Watson (IBM)
  8. 8. ML-’PREDECIR’ LA INTENCIÓN extraer features predecir INTENT contexto
  9. 9. PRE-PROCESO
  10. 10. FEATURES - REGEX
  11. 11. ML – PREDECIR – DECISION TREES modificado para añadir classifier.fromJSON()
  12. 12. TRAINING THE MODEL
  13. 13. MANUAL REWIRING = PARCHEAR
  14. 14. DISPATCH
  15. 15. PROCESARP I E C E O F C A K E
  16. 16. TAN FÁCIL COMO LLAMAR A LA API REST
  17. 17. RESPONDERN L - G E N E R A T I O N
  18. 18. VARIEDAD
  19. 19. RESPONDER A LO DESCONOCIDO = NO PROVOCAR
  20. 20. PLATAFORMA
  21. 21. OPCIONES twitter FB messenger telegram UI Web/Móvilwhatsapp ✓ ✗ fácil de desarrollar penetración chat-friendly ✓ ✓✓ ✗✗ ✗ ✓✓ ✓✓✓✓ ✓ ✓ ✓✗ ✓✓ ✓✓
  22. 22. TWITTER • API de twitter –stream o poll • escuchar mensajes (filtrados) • publicar mensajes o enviar dm • quotas –automation rules and best practices https://support.twitter.com/articles/76915 –the twitter rules https://support.twitter.com/articles/18311 –pri queue
  23. 23. RECIBIENDOTWEETS
  24. 24. ASYNC - COORDINAR TAREAS ASÍNCRONAS
  25. 25. POST-MORTEMI N G E N I E R Í A S O C I A L
  26. 26. PRUEBAS PREVIAS - ENTRENAMIENTO •usando la interfaz web •3 generaciones –yo solo –yo y algunos amigos –yo, algunos amigos y toda la lista de nodejs- madrid •información muy valiosa •patrón de uso distinto que a través de twitter
  27. 27. TWITTER != INTERACTIVO •en twitter la gente no chatea •responder a @menciones no funciona •quotas –2500 mensajes por hora
  28. 28. USUARIOS IMPACIENTES • hay que promocionar el bot con antelación • hay que generar contenido “interesante” antes de que empiece el “sarao” • la gente prueba y no vuelve
  29. 29. RECURSOS
  30. 30. RECURSOS • NLP – NLTK – Freeling – https://stanfy.com/blog/advanced- natural-language-processing-tools- for-bot-makers/ • Bots – https://botmakers.org/ + canal de Slack – https://botwiki.org/tutorials/twitterbo ts/ – https://ursooperduper.github.io/2014 /10/27/twitter-bot-with-node-js-part- 1.html • twitter – automation rules and best practices – https://support.twitter.com/articles/76 915) – the twitter rules – https://support.twitter.com/articles/18 311) • módulos npm – Decision Tree – Twit
  31. 31. ¡GRACIAS! E S T O E S T O D O A M I G O S

×