ML For All: Introduzione alla piattaforma ML di Nordstrom

(Ariana Bray) (17 aprile 2020)

La nostra strategia per abilitare il machine learning self-service su larga scala

Foto di Pietro Jeng su Unsplash

Dalla gestione della logistica della catena di approvvigionamento alla (creazione di look curati (consigli sullo stile digitale) per milioni di clienti), sempre più team di Nordstrom stanno sfruttando potenza del machine learning (ML) per continuare a migliorare lesperienza del cliente. Dalla scelta di unorigine dati alla scelta di un linguaggio di programmazione, ognuno lo fa in modo diverso. Da dove viene il team di Machine Learning Platform di Nordstrom? Presentazione di Cerebro , una piattaforma di machine learning per tutti. In questo articolo, discuteremo la nostra visione per Cerebro, la necessità di una piattaforma di apprendimento automatico e i problemi che abbiamo affrontato durante la progettazione di Cerebro.

La nostra visione

La nostra visione per Cerebro era quello di creare una piattaforma che consentisse a data scientist, analisti e altri sviluppatori di ML di creare soluzioni ML scalabili che guidassero limpatto aziendale diretto, in altre parole, la nostra missione è abilitare lapprendimento automatico self-service su larga scala. Cerebro mira a fornire agli utenti un set unificato di strumenti che possono utilizzare per sviluppare rapidamente e distribuire con sicurezza le loro soluzioni ML.

In sintesi, lo scopo principale di Cerebro è fornire un modo semplice per gestire il ciclo di vita di un modello. Cerebro ha un impatto diretto su tutta Nordstrom non solo consentendo ai modelli di essere spinti in produzione più velocemente, ma anche consentendo ad altri team di utilizzare Cerebro SDK per sostituire i loro servizi con le nostre soluzioni ML. Cerebro è già stato utilizzato da più team allinterno di Nordstrom per servire i loro progetti. La nostra piattaforma è stata utilizzata per alimentare strumenti interni come la previsione del modello. Manteniamo le seguenti linee guida in primo piano nelle nostre decisioni di progettazione:

Raggiungiamo questi obiettivi utilizzando le automazioni per creare unesperienza utente confortevole.

Automazioni per unesperienza utente confortevole

La necessità

Per molto tempo, i data scientist di Nordstrom hanno cercato nuovi modi per risolvere questa domanda: come abilitare un flusso di lavoro di machine learning end-to-end di livello di produzione .

Il flusso di lavoro deve anche includere i molti aspetti del machine learning.

Incorporare i data engineer in ogni team per creare soluzioni una tantum per queste esigenze semplicemente non è conveniente opzione. Consentire a questi team di data science di gestire lintero ciclo di vita del machine learning (dallimmissione dei dati alla pubblicazione dei modelli) richiederebbe una quantità di tempo inaccettabile, rallentando lintera organizzazione. In breve, avevamo bisogno di un modo per astrarre lingegneria dal machine learning

Le opportunità

Ci sono problemi ampiamente conosciuti che derivano dalla distribuzione di un modello in produzione. Oltre a questi problemi, il team ML Platform deve anche affrontare problemi specifici di Nordstrom:

  • Molti modelli, molti standard : Nordstrom utilizza metriche e soluzioni di registrazione di livello aziendale, ma senza un punto di contatto per i risultati di tali metriche e registri, quanto sono veramente efficaci? Chi è responsabile del mantenimento dellintegrità del servizio e del bilanciamento del carico? Quali sono alcune metriche che dovrebbero essere monitorate?
  • Scala : i casi di utilizzo della scienza dei dati sono limitati a un singola istanza di calcolo standalone. A causa dellassenza di una piattaforma ML di livello aziendale, il calcolo distribuito non viene sfruttato.
  • Flusso di lavoro : In assenza di flussi di lavoro ML, i team di ingegneri di Nordstrom devono spesso apportare modifiche significative a un progetto guidato dalla scienza dei dati per renderlo pronto per la produzione.
  • Apprendimento di nuovi strumenti: In assenza di unastrazione tra ML e ingegneria, coloro che lavorano su progetti ML devono apprendere nuovi strumenti e tecnologie. Questo sforzo richiede tempo, richiede supporto tecnico e aggiunge ritardi alla sequenza temporale della creazione di un modello pronto per la produzione.

Perché non utilizzare solo una piattaforma esistente?

Esistono molte lacune nelle offerte SaaS ML esistenti:

  • Nessun archivio di funzionalità centralizzato
  • Nessun supporto per tutti i modelli e le lingue
  • Modelli specifici del software
  • Nessun tracciamento del modello; no codice → funzione → modello lineage
  • Regolazione iperparametrica generalizzata specifica del framework
  • Sfide di integrazione con linfrastruttura esistente
  • Modelli di abbonamento costosi

Abbiamo deciso di creare una piattaforma che fornisca ai data scientist ciò di cui hanno bisogno e riempie molte delle lacune lasciate da altre soluzioni della piattaforma ML.

Perché stiamo costruendo Cerebro

Cerebro è una piattaforma che democratizza il machine learning. In sostanza, Cerebro rafforza la partnership e colma il divario tra scienza dei dati e ingegneria.

Cerebro offre agli utenti una serie di vantaggi, alcuni dei quali sono evidenziati di seguito:

* Self-service – la dipendenza dellutente da un team di ingegneri separato è ridotta;

* Coerente : il nostro approccio è in linea con i flussi di lavoro ML esistenti utilizzati dalla comunità di data science;

* Meno nuove tecnologie – la necessità per un utente di apprendere nuove tecnologie è ridotta al minimo assoluto perché forniamo astrazione attraverso le nostre interfacce;

* Facile da usare – Cerebro non rallenta il processo di productionizing .

Piuttosto che assumere più ingegneri per supportare casi duso di data science in continua espansione , abbiamo creato una piattaforma scalabile per consentire questi casi duso. Invece di prendere decisioni basate su software di terze parti, vogliamo prendere decisioni personalizzate basate su algoritmi.

Vantaggi dellutilizzo di Cerebro

Come as You Are: astrazioni per un flusso di lavoro standardizzato

Il nostro team non voleva adottare un approccio prescrittivo e chiedere a ogni team di utilizzare gli stessi strumenti e tecnologie. Invece, abbiamo sviluppato astrazioni che aiutano a creare un flusso di lavoro standardizzato: la calma sopra la tempesta. Gli utenti hanno a disposizione diversi modi per creare, sviluppare e distribuire i propri progetti.

Nessuna tecnologia proprietaria

Non stiamo introducendo alcuna tecnologia proprietaria di alcuna azienda o organizzazione, pertanto non abbiamo costi di licenza.

No Novità Infrastruttura di calcolo necessaria

Stiamo sfruttando le piattaforme di calcolo già stabilite in Nordstrom, non configurandone di nuove.

Scegli la tua Origine dati

Invece di chiedere a ogni team di utilizzare unorigine dati specifica, Cerebro consente agli utenti di connettersi in modo sicuro a diversi database e data warehouse più diffusi. Man mano che la piattaforma matura, consentiremo connessioni a un numero ancora maggiore di origini dati.

Cloud Provider-Agnostic

Sebbene Cerebro abbia alcune dipendenze da provider di cloud specifici, stiamo costruendo verso una piena soluzione indipendente dal cloud che può essere facilmente estesa per supportare più offerte cloud.

Nessuna restrizione sui framework di addestramento del modello supportati

Cerebro supporta la maggior parte dei più diffusi framework ML fuori dagli schemi. Qualsiasi framework che un data scientist vorrebbe utilizzare può essere supportato con modifiche minime o nulle.

Derivazione tra codice, dati e modello

Con preziosi metadati disponibili in ogni fase, Cerebro fornisce un modo per collegare il codice scritto → i dati utilizzati → e il modello . Gli utenti possono ottenere informazioni su come viene offerto il modello e abilitare anche la misurazione delle prestazioni / efficacia del modello.

Test e controllo qualità

Cerebro semplifica il test della logica senza interruzioni come parte del processo di integrazione continua. La qualità dei dati viene affermata in ogni fase.

One-Stop Shop

Cerebro può gestire tutto. Gli utenti possono:

  • creare un progetto di machine learning con il proprio repository Gitlab
  • eseguire lo sviluppo locale
  • servire modelli offline e online
  • orchestra il progetto con Kubernetes o Apache Spark su Kubernetes
  • gestisci le pipeline di progetto con software open source di livello aziendale

A Tale of Two Users

Se un utente non si interessa delle astrazioni, non è tenuto a usarle. Tuttavia, la stragrande maggioranza degli utenti ama utilizzare le nostre astrazioni per completare i propri progetti.

Mentre il team della piattaforma di apprendimento automatico continua a costruire Cerebro, i principi a cui ci atteniamo servono come importanti promemoria del nostro obiettivo finale.

I nostri principi

  • Modularità : Cerebro è molto più di un semplice endpoint a cui i data scientist passano modelli in – abbiamo sviluppato un SDK e abbiamo più progetti di presentazione in modo che i data scientist possano vedere il miglior caso duso per i loro progetti. Applicando le best practice allinterno del nostro SDK, i nostri utenti possono indipendentemente utilizzare la nostra piattaforma con il minimo aiuto del team MLP e avere la fiducia che gli strumenti che utilizzano in ogni fase del ciclo di vita del modello siano quelli corretti.
  • Comunicazione aperta : Non ha senso costruire qualcosa se nessuno lo usa: a tal fine, il nostro team ha orario di ufficio bisettimanale in cui chiunque può passare per risolvere domande più dettagliate che non possono essere risolte tramite la messaggistica. Inoltre, il team tiene riunioni bisettimanali con i team di data science per comprendere le loro esigenze e per evitare di andare fuori rotta. Poiché forniamo nuove funzionalità ogni due mesi, questa comunicazione costante è fondamentale.
  • Alta adozione : stanno lavorando per integrare il nostro SDK con strumenti Nordstrom ampiamente utilizzati come NordyPy , consentendo unesperienza utente confortevole. Man mano che la piattaforma si sviluppa, la barriera allingresso si abbasserà sempre di più. Ciò consente ai consumatori della piattaforma di provenire da tutta Nordstrom, non solo scienza e ingegneria dei dati .

Quali sono le prospettive?

In futuro articoli, discuteremo del futuro di Cerebro, delle funzionalità in arrivo e del potenziale open source della piattaforma.

Vorremmo ringraziare Nate Lee, un altro ingegnere di ML Platform che ha contribuito a scrivere questo articolo – così come Rizky Ramdhani, Xingtai Li e Owais Malik, membri del team di ML Platform che hanno fornito un prezioso feedback.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *