ML para todos: una introducción a la plataforma ML de Nordstrom

(Ariana Bray) (17 de abril de 2020)

Nuestra estrategia para habilitar el aprendizaje automático de autoservicio a escala

Foto de Pietro Jeng en Unsplash

Desde la gestión de la logística de la cadena de suministro hasta (la creación de estilos seleccionados (recomendaciones de estilo digital) para millones de clientes), cada vez más equipos de Nordstrom están aprovechando el poder del aprendizaje automático (ML) para continuar mejorando la experiencia del cliente. Desde elegir una fuente de datos hasta elegir un lenguaje de programación, todos lo hacen de manera diferente. ¿Dónde entra el equipo de la plataforma de aprendizaje automático de Nordstrom? Presentamos Cerebro , una plataforma de aprendizaje automático para todos. En este artículo, discutiremos nuestra visión de Cerebro, la necesidad de una plataforma de aprendizaje automático y los problemas que abordamos al diseñar Cerebro.

Nuestra visión

Nuestra visión de Cerebro fue crear una plataforma que empodere a los científicos de datos, analistas y otros desarrolladores de ML para crear soluciones de ML escalables que generen un impacto comercial directo; en otras palabras, nuestra misión es habilitar el aprendizaje automático de autoservicio a escala. Cerebro tiene como objetivo proporcionar a los usuarios un conjunto unificado de herramientas que pueden utilizar para desarrollar rápidamente e implementar con confianza sus soluciones de aprendizaje automático.

En resumen, el propósito principal de Cerebro es proporcionar una manera fácil de gestionar el ciclo de vida de un modelo. Cerebro impacta directamente en todo Nordstrom no solo al permitir que los modelos se lleven a producción más rápido, sino también al permitir que otros equipos usen Cerebro SDK para reemplazar sus servicios con nuestras soluciones ML. Cerebro ya ha sido utilizado por varios equipos dentro de Nordstrom para atender sus proyectos. Nuestra plataforma se ha utilizado para impulsar herramientas internas como el pronóstico de modelos. Mantenemos las siguientes pautas a la vanguardia de nuestras decisiones de diseño:

Logramos estos objetivos mediante el uso de automatizaciones para crear una experiencia de usuario cómoda.

Automatizaciones para una experiencia de usuario cómoda

La necesidad

Durante mucho tiempo, los científicos de datos de Nordstrom han buscado nuevas formas de resolver esta pregunta: cómo habilitar un flujo de trabajo de aprendizaje automático de extremo a extremo de grado de producción .

El flujo de trabajo también debe incluir los muchos aspectos del aprendizaje automático.

Integrar ingenieros de datos dentro de cada equipo para crear soluciones únicas para estas necesidades simplemente no es rentable opción. Permitir que esos equipos de ciencia de datos gestionen todo el ciclo de vida del aprendizaje automático (desde la ingestión de datos hasta el servicio de modelos) llevaría una cantidad de tiempo inaceptable, lo que ralentizaría la organización en su conjunto. En resumen, necesitábamos una forma de abstraer la ingeniería del aprendizaje automático.

Las oportunidades

Hay problemas ampliamente conocidos que surgen al implementar un modelo en producción. Además de esos problemas, el equipo de ML Platform también tiene que abordar problemas específicos de Nordstrom:

  • Muchos modelos, muchos estándares : Nordstrom utiliza métricas de nivel empresarial y soluciones de registro, pero sin un punto de contacto para los resultados de esas métricas y registros, ¿cuán realmente efectivos son? ¿Quién es responsable de mantener la salud del servicio y el equilibrador de carga? ¿Cuáles son algunas métricas que se deben monitorear?
  • Scale : los casos de uso de ciencia de datos se limitan a un instancia de proceso única e independiente. Debido a la ausencia de una plataforma de AA de nivel empresarial, no se aprovecha la computación distribuida.
  • Flujo de trabajo : En ausencia de flujos de trabajo de AA, los equipos de ingeniería de Nordstrom a menudo tienen que realizar ajustes importantes en un proyecto dirigido por la ciencia de datos para que esté listo para producción.
  • Aprendizaje de nuevas herramientas: En ausencia de una abstracción entre ML e ingeniería, quienes trabajan en proyectos de ML deben aprender nuevas herramientas y tecnologías. Este esfuerzo lleva mucho tiempo, requiere apoyo de ingeniería y agrega retrasos a la línea de tiempo para crear un modelo listo para producción.

¿Por qué no usar simplemente una plataforma existente?

Hay muchas lagunas en las ofertas de ML SaaS existentes:

  • No hay una tienda de funciones centralizada
  • No hay soporte para todos los modelos e idiomas
  • Modelos específicos de software
  • Sin seguimiento de modelos; sin código → función → modelo linaje
  • Ajuste de hiperparámetros generalizado específico del marco
  • Desafíos de integración con la infraestructura existente
  • Modelos de suscripción costosos

Decidimos construir una plataforma que brinde a los científicos de datos lo que necesitan y muchas de las brechas dejadas por otras soluciones de plataforma de aprendizaje automático.

Por qué estamos construyendo Cerebro

Cerebro es una plataforma que democratiza el aprendizaje automático. En esencia, Cerebro fortalece la asociación y cierra la brecha entre la ciencia de datos y la ingeniería.

Cerebro ofrece a los usuarios una variedad de beneficios, algunos de los cuales se destacan a continuación:

* Autoservicio : se reduce la dependencia del usuario de un equipo de ingeniería independiente;

* Consistente : nuestro enfoque se alinea con los flujos de trabajo de AA existentes utilizados por la comunidad científica de datos;

* Menos nuevas tecnologías – la necesidad de que un usuario aprenda nuevas tecnologías se reduce al mínimo absoluto porque proporcionamos abstracción a través de nuestras interfaces;

* Fácil de usar – Cerebro no ralentiza el proceso de producción de modelos .

En lugar de contratar más ingenieros para respaldar los casos de uso de ciencia de datos en constante expansión , hemos creado una plataforma que puede escalar para habilitar esos casos de uso. En lugar de tomar decisiones basadas en software de terceros, queremos tomar decisiones basadas en algoritmos personalizados.

Beneficios de usar Cerebro

Ven como eres: abstracciones para un flujo de trabajo estandarizado

Nuestro equipo no quería adoptar un enfoque prescriptivo y pedir a todos los equipos que usaran las mismas herramientas y tecnologías. En cambio, hemos desarrollado abstracciones que ayudan a crear un flujo de trabajo estandarizado: la calma sobre la tormenta. Los usuarios tienen una variedad de formas de crear, desarrollar e implementar sus proyectos.

Sin tecnología patentada

No estamos introduciendo ninguna tecnología que sea propiedad de ninguna empresa u organización; por lo tanto, no tenemos costos de licencia.

No nuevo Se necesita infraestructura informática

Estamos aprovechando las plataformas informáticas ya establecidas en Nordstrom, no configurando ninguna nueva.

Elija la suya propia Fuente de datos

En lugar de pedirle a cada equipo que use una fuente de datos específica, Cerebro permite a los usuarios conectarse de forma segura a varias de las bases de datos y almacenes de datos más populares. A medida que la plataforma madure, habilitaremos conexiones a aún más fuentes de datos.

Cloud Provider-Agnostic

Si bien Cerebro tiene algunas dependencias de proveedores específicos de la nube, estamos construyendo una Solución independiente de la nube que se puede ampliar fácilmente para admitir múltiples ofertas en la nube.

Sin restricciones en los marcos de capacitación de modelos compatibles

Cerebro es compatible con la mayoría de los marcos de aprendizaje automático populares listos para usar. Cualquier marco que un científico de datos quiera usar puede ser compatible con cambios mínimos o nulos.

Linaje entre código, datos y modelo

Con valiosos metadatos disponibles en cada paso, Cerebro proporciona una manera de unir el código escritos → los datos usados ​​→ y los modelo . Los usuarios pueden obtener información sobre cómo se publica el modelo y también habilitar la medición del rendimiento / efectividad del modelo.

Pruebas y control de calidad

Cerebro facilita la prueba de la lógica sin problemas como parte del proceso de Integración Continua. La calidad de los datos se afirma en cada paso.

One-Stop Shop

Cerebro puede manejarlo todo. Los usuarios pueden:

  • crear un proyecto de aprendizaje automático con su propio repositorio de Gitlab
  • realizar desarrollo local
  • servir modelos sin conexión y en línea
  • orquestar el proyecto con Kubernetes o Apache Spark en Kubernetes
  • administrar las canalizaciones del proyecto con software de código abierto de nivel empresarial

Historia de dos usuarios

Si un usuario no se preocupa por las abstracciones, no tiene que usarlas. Sin embargo, la gran mayoría de usuarios disfruta usando nuestras abstracciones para completar sus proyectos.

A medida que el equipo de la plataforma de aprendizaje automático continúa construyendo Cerebro, los principios a los que nos sometemos sirven como recordatorios importantes de nuestro objetivo final.

Nuestros principios

  • Modularidad : Cerebro es mucho más que un punto final que los científicos de datos pasan por modelos en: hemos desarrollado un SDK y tenemos varios proyectos de exhibición para que los científicos de datos puedan ver el mejor caso de uso para sus proyectos. Al aplicar las mejores prácticas dentro de nuestro SDK, nuestros usuarios pueden independientemente utilizar nuestra plataforma con una ayuda mínima del equipo de MLP y tener la confianza que las herramientas que utilizan en cada etapa del ciclo de vida del modelo son las correctas.
  • Comunicación abierta : No tiene sentido construir nada si nadie lo usa; para ese fin, nuestro equipo tiene horas de oficina dos veces por semana donde cualquiera puede pasar para solucionar preguntas más detalladas que no se pueden resolver a través de mensajes. Además, el equipo celebra reuniones quincenales con los equipos de ciencia de datos para comprender sus necesidades y evitar que se desvíen. Debido a que ofrecemos nuevas funciones cada dos meses, esta comunicación constante es crucial.
  • Adopción alta : Nosotros estamos trabajando para integrar nuestro SDK con herramientas de Nordstrom ampliamente utilizadas, como NordyPy , lo que permite una experiencia de usuario cómoda. A medida que la plataforma se desarrolle, la barrera de entrada será cada vez más baja. Esto permite que los consumidores de la plataforma provengan de todo Nordstrom, no solo ciencia e ingeniería de datos .

¿Qué sigue?

En el futuro artículos, discutiremos el futuro de Cerebro, las próximas funciones y el potencial de código abierto de la plataforma.

Nos gustaría agradecer a Nate Lee, otro ingeniero de ML Platform que ayudó a escribir este artículo – así como Rizky Ramdhani, Xingtai Li y Owais Malik, miembros del equipo de ML Platform que brindaron valiosos comentarios.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *