Learning Rate es un boletín para aquellos que sienten curiosidad por el mundo de la IA y MLOps. Tendrá noticias mías el primer sábado de cada mes con actualizaciones e ideas sobre las últimas noticias y artículos sobre IA. ¡Suscríbete aquí!
Para empezar, veamos cómo se estructura una aplicación web típica. La siguiente figura muestra las entidades que participan en un escenario habitual donde un usuario interactúa con una aplicación web:
Ser testigo del trabajo que tiene que hacer su servidor es desalentador. Sin embargo, hay una muy buena razón para usar este enfoque; tiene que fallar rápido y fallar mucho. Cuando está creando un prototipo de una nueva aplicación ML, es bueno tener algunas cosas en su lugar: Tenga una interfaz de usuario básica para que sea más fácil para sus usuarios interactuar con la aplicación Coloque su aplicación detrás de un URL, por lo que es más fácil compartirlo con sus amigos y evaluadores. Herramientas como Streamlit y Gradio pueden hacer el trabajo pesado por usted. Por lo tanto, durante sus primeros días, donde debe implementar temprano y con frecuencia, definitivamente debe aprovechar sus funciones. Además, a medida que desarrolla su modelo, su enfoque debe permanecer en esto. Por lo tanto, manténgalo simple y agregue complejidad más tarde. Si está trabajando en una empresa, reutilizar la infraestructura existente es otra buena razón para seguir este enfoque. Por lo tanto, es posible que su empresa ya haya establecido procesos para implementar de manera confiable el código en los servidores, y puede tomar un paseo a cuestas.
Habiendo dicho esto, hay muchas razones por las que no querría seguir esta arquitectura al implementar en producción. Primero, el servidor web puede estar escrito en un lenguaje diferente (por ejemplo, ruby o javascript). Ahora, debe cargar su modelo de alguna manera en este lenguaje y, si bien existen enfoques para hacerlo, son desafiantes y propensos a errores. Entonces, su modelo en producción cambiará con frecuencia. La degradación del rendimiento, los problemas de desviación de conceptos y los nuevos datos harán que actualice su modelo con frecuencia. Por otro lado, el código de su servidor web no cambiará con tanta frecuencia. Si sigue la arquitectura de modelo en servidor, tendrá que implementar todo desde cero cada vez que tenga que actualizar su modelo. Estará de acuerdo conmigo en que este no es un proceso de implementación bueno y optimizado para su aplicación. A continuación, es posible que el hardware de su servidor no esté optimizado para las cargas de trabajo de ML. Por ejemplo, es posible que no tenga acceso a dispositivos GPU que su modelo pueda aprovechar para hacer predicciones más rápido. Ahora, puede argumentar que es posible que no necesite dispositivos GPU durante la inferencia, pero en un artículo posterior, donde hablaremos sobre la optimización del rendimiento, es posible que descubra que los necesita después de todo, según su caso de uso. Finalmente, su El modelo y su servidor web probablemente escalarán de manera diferente. Si su modelo es complicado o grande, es posible que desee alojarlo en GPU y distribuir la carga en muchas máquinas. No querrá llevar toda esa complejidad a su servidor web. Además, su modelo consumirá los recursos de su servidor web, que utilizará todo su poder para hacer que el modelo funcione. En esta historia, vimos por qué querría usar herramientas como Streamlit y Gradio para implementar versiones rápidas y frecuentes de su modelo. aplicación de aprendizaje automático. Vimos cuáles son las ventajas y desventajas de la arquitectura de modelo en servidor y por qué no querría seguir este camino en producción. Entonces, ¿qué puede hacer? En la siguiente historia, veremos cómo separar su modelo de su servidor web y, finalmente, usar una herramienta conocida para servir su modelo en un entorno listo para producción. Mi nombre es Dimitris Poulopoulos y soy un ingeniero de aprendizaje automático que trabaja para Arrikto. He diseñado e implementado soluciones de inteligencia artificial y software para clientes importantes como la Comisión Europea, Eurostat, el FMI, el Banco Central Europeo, la OCDE e IKEA. Si está interesado en leer más publicaciones sobre aprendizaje automático, aprendizaje profundo, ciencia de datos, y DataOps, sígueme en Medium, LinkedIn o @james2pl en Twitter. Las opiniones expresadas son exclusivamente mías y no expresan los puntos de vista ni las opiniones de mi empleador.
Los días felices de la PDA y Blackberry han quedado definitivamente atrás, pero el factor…
Tutorial sobre cómo pronosticar usando un modelo autorregresivo en PythonFoto de Aron Visuals en UnsplashForecasting…
Si tienes un iPhone, los AirPods Pro son la opción obvia para escuchar música, ¡aunque…
Ilustración de Alex Castro / The Verge Plus nuevos rumores sobre el quinto Galaxy Fold.…
Se rumorea que los auriculares premium de próxima generación de Apple, los AirPods Max 2,…
El desarrollador Motive Studio y el editor EA han lanzado un nuevo tráiler de la…