Desde Linux David Naranjo  

Metaflow: el framework de Netflix para los proyectos de aprendizaje automático

Metaflow

Metaflow es un framework de Netflix escrito en Python que fue diseñado para facilitar la ejecución de proyectos de aprendizaje automático desde que se forman como un prototipo hasta la producción. Esta herramienta está destinada a ayudar a los especialistas en datos a implementar modelos de aprendizaje automático más rápido para la producción.

Netflix ha utilizado Metaflow internamente durante los últimos dos años para crear y administrar cientos de proyectos de ciencia de datos desde el procesamiento del lenguaje natural hasta la investigación de operaciones. Para ayudar a los científicos con datos de todas las empresas, el equipo de ciencia de datos de Netflix ha abierto su biblioteca Metaflow, según una publicación de su blog que el equipo lanzó el martes pasado.

Metaflow es una parte clave de la infraestructura de aprendizaje automático “centrada en el ser humano” que el equipo de ciencia de datos utiliza para construir e implementar flujos de trabajo como parte de su negocio.

Netflix utiliza el aprendizaje automático en todos los aspectos de su negocio, desde el análisis de escenarios hasta la optimización de los cronogramas de producción, el pronóstico de abandono, la fijación de precios, la traducción y la optimización.

Metaflow es un marco de nube nativo, que aprovecha la elasticidad de diseño de la nube tanto para el cómputo como para el almacenamiento. Y Netflix, que ha sido uno de los mayores usuarios de Amazon Web Services (AWS) durante muchos años, ha acumulado mucha experiencia operativa y conocimientos en informática en la nube, especialmente AWS. Como era de esperar, como parte del marco de código abierto, la compañía se asoció con AWS para integrar Metaflow a la perfección con los diversos servicios de AWS.

Metaflow se integra con muchos servicios de AWS, incluida la capacidad de obtener una vista previa de todo el código y los datos en Amazon S3, que Netflix utiliza como su “lago de datos”. Como resultado, la compañía tiene una solución completa para administrar versiones y realizar un seguimiento de los experimentos sin intervención del usuario. Esta capacidad debería ayudar a los usuarios a escalar rápidamente modelos utilizando los servicios de almacenamiento, informática y aprendizaje automático de AWS.

Aprendizaje automatico

Además, Metaflow viene con un cliente S3 de alto rendimiento que puede cargar datos de hasta 10 Gbps. Según Netflix, “este cliente ha sido enormemente popular entre nuestros usuarios, que ahora pueden cargar datos en sus flujos de trabajo un orden de magnitud más rápido que antes, lo que permite ciclos de iteración más rápidos”.

Según la publicación del blog, Netflix dice que comenzó a partir de una observación clave para llevar a la implementación de su marco. De hecho, según la compañía, la mayoría de sus especialistas en datos no tenían nada en contra de escribir código Python.

Lo que querían era poder conservar la libertad de usar código arbitrario e idiomático para expresar su lógica de negocios. A estos científicos de datos les gusta expresar la lógica empresarial a través del código Python, pero no quieren perder su tiempo.

“Sin embargo, no quieren pasar demasiado tiempo pensando en jerarquías de objetos, problemas de empaque o en el manejo de API oscuras no relacionadas con su trabajo. La infraestructura debería permitirles ejercer su libertad como especialistas en datos, pero debería proporcionar suficientes barandillas y andamios para que no tengan que preocuparse demasiado por la arquitectura del software “, lee en la publicación del blog de Netflix.

A partir de esta observación, la idea detrás de Metaflow es dar a los especialistas en datos de Netflix la oportunidad de ver desde el principio si un modelo prototipo fallará en la producción, lo que les permitiría resolver cualquier problema e idealmente, acelerar el despliegue.

Los especialistas en datos pueden estructurar su flujo de trabajo en forma de un gráfico acíclico dirigido (DAG) de pasos. Los pasos pueden ser código Python arbitrario. En este ejemplo hipotético, la transmisión maneja dos versiones de un modelo en paralelo y elige la que obtiene la puntuación más alta.

Según el equipo de ciencia de datos de Netflix, hay muchos marcos existentes, como Apache Airflow o Luigi, que permiten la ejecución de DAG compuestos de código arbitrario de Python, con la diferencia de que se han incluido muchos detalles en Metaflow.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.