Bots
by Carlos Toxtli
Presentación
¿Qué es un Bot?
Tipos de Bots
¿Qué he aprendido en todo este tiempo?
Ejemplos: MATT
Descripción
Ejemplos: MATT
Implementación:
Ejemplos: MATT
Lecciones aprendidas:
Ejemplos: TaskBot
Descripción:
Ejemplos: TaskBot
Implementación:
Ejemplos: TaskBot
Lecciones aprendidas:
Otros: ExperTwin
Descripción:
Sistema que es capaz de traer solo los temas que te interesan a tu ambiente de trabajo y buscar sobre ellos (como un Google personal).
Comentarios:
Implementar crawlers que trabajen para ti es muy conveniente, lo que es complejo es crear redes de crawlers para cada usuario.
Otros: AlexaDesktop
Descripción:
Sistema que es capaz de ejecutar acciones en la computadora que fueron solicitadas por voz mediante un asistente de voz.
Comentarios:
Implementar con Sikuli flujos de interacción de la interfaz que fueran invocados desde un webhook que recibe el comando transcrito.
Otros: Hum2Song
Descripción:
Sistema que es capaz de crear el acompañamiento musical de una melodía cantada o tarareada.
Comentarios:
El primer paso es transcribir la voz, pero no a texto, sino a notas. Una vez transcrita se hacen análisi de series de tiempo, predicciones por medio de distintas arquitecturas de redes neuronales.
Otros: DeepPiracy
Descripción:
Sistema que es capaz de ver el contenido que se está proyectando en televisores, monitores o pantallas y mencionar si es contenido con derechos de autor.
Comentarios:
Los bots pueden tener como entrada texto, voz, imagenes, video, etc. El análisis de video altamente distorsionado es complejo pero las técnicas de Redes Neuronales Convolutivas ayudan mucho al proceso.
Mucho más
RPA (Robotic Process Automation)
Es la rama de automatización por software que se encarga de los procesos que simulan la interacción humana y perciben por sensores las señales que nosotros como humanos percibimos por medio de los sentidos.
Herramientas
Como vimos un bot es capaz de entender señales de múltiples fuentes.
Si la información proviene de texto, se pueden usar herramientas como DialogFlow, NLTK, SpaCy, entre otras para analizarla.
Si la información proviene de imágenes podemos usar herramientas en la nube o implementar modelos como Tesseract, YOLO, MobileNet, etc, con datasets como COCO que reconocen muchas categorías.
Si la información proviene de vídeo igualmente podemos segmentarla en imágenes y analizar cuadro por cuadro.
Herramientas
Tipos de análisis de texto
Herramientas para cualquiera de ellas: SpaCy, NLTK, Stanford NLP, POS, NER, OpeNER project
Con Machine Learning
Clasificadores entrenados con Bag of Words o vectores:
MLP, RandomForest, SVM, etc
Generadores con Recurrent Neural Networks
LSTM, Attention, etc.
Algunos Bots que se me hacen útiles
Bots en todo
Conclusiones
Gracias