Machine Learning en Kubernetes: Cómo predecir la productividad de una formación táctica de fútbol en un ambiente de producción (2020)
RESUMEN: En la actualidad, la “inteligencia artificial” es capaz de proponer soluciones a problemas cada vez más complejos, de una manera mucho más versátil y flexible en comparación a las soluciones tradicionales. No obstante, llevar a producción estos sistemas construidos sobre algoritmos de ​ machine learning y ​ deep learning ​ , es un reto constante que requiere de un gran abanico de funcionalidades como lo son la auto escalabilidad horizontal, autocuración, lanzamientos automáticos, atomicidad, entre otros. Por consiguiente, el objetivo principal de este proyecto consistió en diseñar e implementar una arquitectura de ​ software sólida que sirviese como infraestructura base para el despliegue en producción de soluciones predictivas. Para ello, se retomó el problema de la estimación de la productividad de la formación tactical inicial para equipos del fútbol Europeo. Una vez replicado el desarrollo desde la perspectiva de ciencia de datos y ​ machine learning se diseñó y construyó una plataforma web predictiva basada en una arquitectura de microservicios. Esta arquitectura utiliza tecnologías modernas como ​ Docker y Kubernetes que permiten un despliegue eficiente en producción, permitiendo así incluso el entrenamiento de algoritmos por demanda del usuario según las configuraciones y parámetros elegidos por este. Finalmente, como perspectivas para la continuación del trabajo se plantea la incorporación de ​ service mesh con ​Istio para el descubrimiento de servicios, ​ Kubeflow como operador de ​ Kubernetes para el desarrollo de modelos de ​ machine learning ​ y ​ rancher para automatizar la construcción del cluster.