ML pour tous: une introduction à la plate-forme ML de Nordstrom

(Ariana Bray) (17 avril 2020)

Notre stratégie pour activer lapprentissage automatique en libre-service à grande échelle

Photo de Pietro Jeng sur Unsplash

De la gestion de la logistique de la chaîne dapprovisionnement à (la création de looks sélectionnés (recommandations de style numérique) pour des millions de clients), de plus en plus déquipes de Nordstrom exploitent le la puissance de lapprentissage automatique (ML) pour continuer à améliorer lexpérience client. De la sélection dune source de données au choix dun langage de programmation, tout le monde le fait différemment. Doù vient léquipe de la plate-forme dapprentissage machine de Nordstrom? Présentation de Cerebro , une plate-forme dapprentissage automatique pour tous. Dans cet article, nous discuterons de notre vision de Cerebro, du besoin dune plateforme dapprentissage automatique et des problèmes que nous avons résolus lors de la conception de Cerebro.

Notre vision

Notre vision de Cerebro était de créer une plate-forme qui permet aux scientifiques des données, aux analystes et aux autres développeurs de ML de créer des solutions de ML évolutives qui ont un impact direct sur lentreprise – en dautres termes, notre mission est de permettre lapprentissage automatique en libre-service à grande échelle. Cerebro vise à fournir aux utilisateurs un ensemble unifié doutils quils peuvent utiliser pour développer rapidement et déployer en toute confiance leurs solutions ML.

En résumé, lobjectif principal de Cerebro est de fournir un moyen simple de gérer le cycle de vie dun modèle. Cerebro a un impact direct sur tout Nordstrom non seulement en permettant aux modèles dêtre mis en production plus rapidement, mais aussi en permettant à dautres équipes dutiliser le SDK Cerebro pour remplacer leurs services par nos solutions ML. Cerebro a déjà été utilisé par plusieurs équipes au sein de Nordstrom pour servir leurs projets. Notre plateforme a été utilisée pour alimenter des outils internes tels que la prévision de modèles. Nous gardons les directives suivantes au premier plan de nos décisions de conception:

Nous atteignons ces objectifs en utilisant des automatisations pour créer une expérience utilisateur confortable.

Des automatisations pour une expérience utilisateur confortable

Le besoin

Depuis longtemps, les data scientists de Nordstrom ont cherché de nouvelles façons de résoudre cette question: comment activer un flux de travail dapprentissage automatique de bout en bout de niveau production .

Le flux de travail doit également inclure les nombreux aspects de lapprentissage automatique.

Intégrer des ingénieurs de données dans chaque équipe pour créer des solutions ponctuelles pour ces besoins nest tout simplement pas rentable option. Permettre à ces équipes de science des données de gérer lensemble du cycle de vie de lapprentissage automatique (de lingestion de données à la diffusion de modèles) prendrait un temps inacceptable, ralentissant lorganisation dans son ensemble. En bref, nous avions besoin dun moyen d faire abstraction de lingénierie à partir du machine learning.

Les opportunités

Il y a des problèmes largement connus liés au déploiement dun modèle en production. En plus de ces problèmes, léquipe de ML Platform doit également sattaquer à des problèmes spécifiques à Nordstrom:

  • De nombreux modèles, de nombreuses normes : Nordstrom utilise des métriques et des solutions de journalisation de niveau entreprise – mais sans point de contact unique pour les résultats de ces métriques et journaux, quelle est leur efficacité? Qui est responsable du maintien de lintégrité du service et de léquilibreur de charge? Quelles sont les métriques à surveiller?
  • Scale : les cas dutilisation de la science des données sont limités à un instance de calcul unique et autonome. En raison de l’absence de plate-forme ML de niveau entreprise, le calcul distribué n’est pas exploité.
  • Workflow : En labsence de flux de travail ML, les équipes dingénieurs de Nordstrom doivent souvent apporter des ajustements importants à un projet axé sur la science des données pour le rendre prêt pour la production.
  • Apprentissage de nouveaux outils: En labsence dabstraction entre le ML et lingénierie, ceux qui travaillent sur des projets de ML doivent apprendre de nouveaux outils et technologies. Cet effort prend du temps, nécessite une assistance technique et ajoute des retards au calendrier de création dun modèle prêt pour la production.

Pourquoi ne pas simplement utiliser une plate-forme existante?

Il existe de nombreuses lacunes dans les offres ML SaaS existantes:

  • Pas de magasin de fonctionnalités centralisé
  • Pas de prise en charge pour tous les modèles et toutes les langues
  • Modèles spécifiques au logiciel
  • Pas de suivi des modèles; pas de code → fonctionnalité → modèle lignage
  • Réglage dhyperparamètres généralisé spécifique au framework
  • Problèmes dintégration avec linfrastructure existante
  • Modèles dabonnement coûteux

Nous avons décidé de créer une plate-forme qui donne aux scientifiques des données ce dont ils ont besoin et remplit beaucoup des lacunes laissées par dautres solutions de plate-forme de ML.

Pourquoi nous construisons Cerebro

Cerebro est une plate-forme qui démocratise lapprentissage automatique. À la base, Cerebro renforce le partenariat et comble le fossé entre la science des données et lingénierie.

Cerebro offre aux utilisateurs une gamme davantages, dont certains sont mis en évidence ci-dessous:

* Self-service – la dépendance de lutilisateur à une équipe dingénierie distincte est réduite;

* Cohérent – notre approche saligne sur les workflows de ML existants utilisés par la communauté de la science des données;

* Moins de nouvelles technologies – le besoin pour un utilisateur dapprendre de nouvelles technologies est réduit au strict minimum car nous fournissons labstraction via nos interfaces;

* Facile à utiliser – Cerebro ne ralentit pas le processus de production des modèles .

Plutôt que dembaucher plus dingénieurs pour prendre en charge des cas dutilisation de la science des données en constante expansion , nous avons construit une plate-forme qui peut évoluer pour permettre ces cas dutilisation. Au lieu de prendre des décisions basées sur des logiciels tiers, nous souhaitons prendre des décisions basées sur des algorithmes personnalisés.

Avantages de lutilisation de Cerebro

Venez comme vous êtes: abstractions pour un flux de travail standardisé

Notre équipe na pas voulu adopter une approche normative et demander à chaque équipe dutiliser les mêmes outils et technologies. Au lieu de cela, nous avons développé des abstractions qui aident à créer un flux de travail standardisé – le calme sur la tempête. Les utilisateurs disposent de différentes méthodes pour créer, développer et déployer leurs projets.

Aucune technologie propriétaire

Nous nintroduisons aucune technologie propre à une entreprise ou organisation. Par conséquent, nous navons aucun frais de licence.

Non Nouveau Infrastructure de calcul nécessaire

Nous exploitons les plates-formes de calcul déjà établies chez Nordstrom, sans en créer de nouvelles.

Choisissez la vôtre Source de données

Plutôt que de demander à chaque équipe dutiliser une source de données spécifique, Cerebro permet aux utilisateurs de se connecter en toute sécurité à plusieurs des bases de données et entrepôts de données les plus populaires. Au fur et à mesure que la plate-forme mûrit, nous activerons les connexions à encore plus de sources de données.

Fournisseur de cloud indépendant

Bien que Cerebro ait des dépendances sur des fournisseurs de cloud spécifiques, nous nous dirigeons vers une Solution indépendante du cloud qui peut être facilement étendue pour prendre en charge plusieurs offres cloud.

Aucune restriction sur les cadres de formation de modèles pris en charge

Cerebro prend en charge la plupart des frameworks ML populaires prêts à lemploi. Tout cadre quun data scientist souhaiterait utiliser peut être pris en charge avec des modifications minimes à nulles.

Lignage entre le code, les données et le modèle

Avec des métadonnées précieuses disponibles à chaque étape, Cerebro fournit un moyen de relier le code écrit → les données utilisées → et les modèle . Les utilisateurs peuvent obtenir des informations sur la façon dont le modèle est servi et également activer la mesure des performances / efficacité du modèle.

Test et contrôle qualité

Cerebro permet de tester facilement la logique dans le cadre du processus dintégration continue. La qualité des données est affirmée à chaque étape.

One-Stop Shop

Cerebro peut tout gérer. Les utilisateurs peuvent:

  • créer un projet dapprentissage automatique avec son propre référentiel Gitlab
  • effectuer un développement local
  • servir des modèles hors ligne et en ligne
  • orchestrez le projet avec Kubernetes ou Apache Spark sur Kubernetes
  • gérez les pipelines de projets avec un logiciel open source de niveau entreprise

A Tale of Two Users

Si un utilisateur ne se soucie pas des abstractions, il nest pas obligé de les utiliser. Cependant, la grande majorité des utilisateurs aiment utiliser nos abstractions pour mener à bien leurs projets.

Alors que léquipe de la plateforme dapprentissage automatique continue de développer Cerebro, les principes auxquels nous nous attachons nous rappellent notre objectif final.

Nos principes

  • Modularité : Cerebro est bien plus quun simple point de terminaison auquel les data scientists transmettent des modèles into – nous avons développé un SDK et avons plusieurs projets de démonstration afin que les scientifiques des données puissent voir le meilleur cas dutilisation pour leurs projets. En appliquant les meilleures pratiques au sein de notre SDK, nos utilisateurs peuvent indépendamment utiliser notre plate-forme avec une aide minimale de léquipe MLP et avoir la confiance que les outils quils utilisent à chaque étape du cycle de vie du modèle sont les bons.
  • Communication ouverte : Il ne sert à rien de construire quoi que ce soit si personne ne lutilise – à cette fin, notre équipe a des heures de bureau deux fois par semaine où tout le monde peut passer pour résoudre des questions plus détaillées qui ne peuvent pas être résolues via la messagerie. De plus, léquipe organise des réunions toutes les deux semaines avec les équipes de science des données pour comprendre leurs besoins et éviter de dérailler. Comme nous proposons de nouvelles fonctionnalités tous les deux mois, cette communication constante est cruciale.
  • Forte adoption : Nous travaillent sur lintégration de notre SDK avec des outils Nordstrom largement utilisés tels que NordyPy , permettant une expérience utilisateur confortable. À mesure que la plate-forme se développe, la barrière à lentrée diminuera de plus en plus. Cela permet aux utilisateurs de la plate-forme de venir de tout Nordstrom – pas seulement de la science et de lingénierie des données .

Et maintenant?

À lavenir articles, nous discuterons de lavenir de Cerebro, des fonctionnalités à venir et du potentiel open source de la plate-forme.

Nous tenons à remercier Nate Lee – un autre ingénieur de ML Platform qui a aidé à écrire cet article – ainsi que Rizky Ramdhani, Xingtai Li et Owais Malik, membres de léquipe ML Platform qui ont fourni de précieux commentaires.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *