ML For All: Introducere în platforma ML Nordstrom

(Ariana Bray) (17 aprilie 2020)

Strategia noastră pentru activarea învățării automate cu autoservire la scară

Fotografie de Pietro Jeng pe Unsplash

De la gestionarea logisticii lanțului de aprovizionare până la (construirea de look-uri curate (recomandări de stil digital) pentru milioane de clienți), tot mai multe echipe de la Nordstrom folosesc puterea învățării automate (ML) pentru a continua să îmbunătățească experiența clientului. De la alegerea unei surse de date până la alegerea unui limbaj de programare, toată lumea o face diferit. Unde intră echipa Nordstroms Machine Learning Platform? Vă prezentăm Cerebro , o platformă de învățare automată pentru toată lumea. În acest articol, vom discuta despre viziunea noastră pentru Cerebro, despre necesitatea unei platforme de învățare automată și despre problemele pe care le-am abordat atunci când proiectăm Cerebro.

Viziunea noastră

Viziunea noastră pentru Cerebro urma să creeze o platformă care să împuternicească oamenii de știință de date, analiștii și alți dezvoltatori de ML pentru a crea soluții de ML scalabile care să conducă la impactul direct al afacerii – cu alte cuvinte, misiunea noastră este de a permite învățarea automată cu autoservire la scară. Cerebro își propune să ofere utilizatorilor un set unificat de instrumente pe care le pot folosi pentru a dezvolta rapid și pentru a-și implementa cu încredere soluțiile de ML.

În rezumat, scopul principal al Cerebro este de a oferi o modalitate ușoară de a gestionați ciclul de viață al unui model. Cerebro are un impact direct asupra întregului Nordstrom nu numai permițând modelelor să fie împinse la producție mai repede, ci și permițând altor echipe să folosească SDK Cerebro pentru a-și înlocui serviciile cu soluțiile noastre ML. Cerebro a fost deja folosit de mai multe echipe din cadrul Nordstrom pentru a-și servi proiectele. Platforma noastră a fost utilizată pentru a alimenta instrumente interne, cum ar fi prognoza modelului. Păstrăm următoarele linii directoare în prim-planul deciziilor noastre de proiectare:

Realizăm aceste obiective utilizând automatizări pentru a crea o experiență de utilizare confortabilă.

Automatizări pentru o experiență confortabilă a utilizatorului

Nevoia

De mult timp, oamenii de știință ai datelor Nordstrom au căutat noi modalități de a rezolva această întrebare – cum să activați un flux de lucru de învățare automată de la un nivel la altul de producție .

De asemenea, fluxul de lucru trebuie să includă numeroasele aspecte ale învățării automate.

Incorporarea inginerilor de date în fiecare echipă pentru a crea soluții unice pentru aceste nevoi pur și simplu nu este rentabilă opțiune. Permiterea acelor echipe de știință a datelor să gestioneze întregul ciclu de viață al învățării automate (de la ingestia de date la difuzarea modelelor) ar necesita o cantitate de timp inacceptabilă, încetinind organizația în ansamblu. Pe scurt, aveam nevoie de o modalitate de inginerie abstractă din învățarea automată.

Oportunitățile

Există probleme pe scară largă care vin cu implementarea unui model în producție. Pe lângă aceste probleme, echipa platformei ML trebuie să abordeze și problemele specifice Nordstrom:

  • Multe modele, multe standarde : Nordstrom folosește măsurători și soluții de înregistrare la nivel de întreprindere – dar fără un punct de contact pentru rezultatele acestor valori și jurnale, cât de eficiente sunt acestea? Cine este responsabil pentru menținerea sănătății serviciului și a echilibrului de sarcină? Care sunt unele valori care ar trebui monitorizate?
  • Scală : cazurile de utilizare a științei datelor sunt limitate la un o singură instanță de calcul independentă. Din cauza absenței unei platforme ML la nivel de întreprindere, calculul distribuit nu este valorificat.
  • Flux de lucru : În absența fluxurilor de lucru ML, echipele de ingineri de la Nordstrom trebuie adesea să facă ajustări semnificative la un proiect condus de știința datelor pentru a-l pregăti pentru producție.
  • Învățarea instrumentelor noi: În absența unei abstracții între ML și inginerie, cei care lucrează la proiecte ML trebuie să învețe noi instrumente și tehnologii. Acest efort consumă mult timp, necesită asistență tehnică și adaugă întârzieri la calendarul de creare a unui model pregătit pentru producție.

De ce să nu folosim doar o platformă existentă?

Există multe lacune în ofertele ML SaaS existente:

  • Nu există un depozit centralizat de funcții
  • Nu există suport pentru toate modelele și limbile
  • Modele specifice software-ului
  • Fără urmărire model; nu cod → caracteristică → model descendență
  • Acord de hiperparametru generalizat specific cadrului
  • Provocări de integrare cu infrastructura existentă
  • Modele de abonament costisitoare

Am decis să construim o platformă care să ofere oamenilor de știință de date ceea ce au nevoie și completează multe dintre golurile lăsate de alte soluții de platformă ML.

De ce construim Cerebro

Cerebro este o platformă care democratizează învățarea automată. În centrul său, Cerebro întărește parteneriatul și acoperă decalajul dintre știința datelor și inginerie.

Cerebro oferă utilizatorilor o serie de avantaje, dintre care unele sunt evidențiate mai jos:

* Self-service – dependența utilizatorului de o echipă de ingineri separată este redusă;

* Coerent – abordarea noastră se aliniază cu fluxurile de lucru ML existente utilizate de comunitatea științei datelor;

* Mai puține tehnologii noi – necesitatea unui utilizator de a învăța noi tehnologii este redusă la minimul absolut, deoarece oferim abstractizare prin interfețele noastre;

* Ușor de utilizat – Cerebro nu încetinește procesul de productionizing modele.

În loc să angajeze mai mulți ingineri pentru a sprijini cazuri de utilizare în continuă extindere a științei datelor , am creat o platformă care poate fi scalată pentru a permite acele cazuri de utilizare. În loc să luăm decizii bazate pe software de la terți, dorim să luăm decizii personalizate bazate pe algoritmi.

Avantajele utilizării Cerebro

Vino așa cum ești: Abstracții pentru un flux de lucru standardizat

Echipa noastră nu a dorit să adopte o abordare prescriptivă și să solicite fiecărei echipe să utilizeze aceleași instrumente și tehnologii. În schimb, am dezvoltat abstracții care ajută la crearea unui flux de lucru standardizat – calmul peste furtuna. Utilizatorii au o varietate de moduri de a crea, dezvolta și implementa proiectele lor.

Fără tehnologie proprietară

Nu introducem nicio tehnologie proprietară pentru nicio companie sau organizație – prin urmare, nu avem costuri de licențiere.

Nu Nou Infrastructură de calcul necesară

Utilizăm platformele de calcul deja stabilite la Nordstrom, nu configurăm altele noi.

Alegeți propria dvs. Sursă de date

În loc să solicite fiecărei echipe să utilizeze o anumită sursă de date, Cerebro permite utilizatorilor să se conecteze în siguranță la mai multe dintre cele mai populare baze de date și depozite de date. Pe măsură ce platforma se maturizează, vom permite conexiuni la și mai multe surse de date.

Cloud Provider-Agnostic

În timp ce Cerebro are unele dependențe de furnizori de cloud specifici, ne dezvoltăm către o soluție cloud-agnostică care poate fi extinsă cu ușurință pentru a suporta mai multe oferte de cloud.

Nu sunt restricționate restricțiile privind cadrele de instruire model / div>

Cerebro acceptă majoritatea cadrelor de ML populare. Orice cadru pe care un om de știință al datelor ar dori să-l folosească poate fi acceptat cu modificări minime până la fără modificări.

Liniage între cod, date și model

Cu metadate valoroase disponibile la fiecare pas, Cerebro oferă o modalitate de a lega împreună cod scris → datele date utilizate → și model . Utilizatorii pot obține informații despre modul în care este servit modelul și, de asemenea, pot activa măsurarea performanței / eficacității modelului.

Testare și control al calității

Cerebro face mai ușoară testarea logică fără probleme ca parte a procesului de integrare continuă. Calitatea datelor este afirmată la fiecare pas.

Ghișeu unic

Cerebro poate gestiona totul. Utilizatorii pot:

  • să creeze un proiect de învățare automată cu propriul depozit Gitlab
  • să realizeze dezvoltare locală
  • să servească modele offline și online
  • orchestrați proiectul cu Kubernetes sau Apache Spark pe Kubernetes
  • gestionați conductele de proiect cu software open source de nivel enterprise

A Tale of Two Users

Dacă unui utilizator nu îi pasă de abstractizări, nu trebuie să le folosească. Cu toate acestea, marea majoritate a utilizatorilor se bucură să folosească abstracțiile noastre pentru a-și finaliza proiectele.

Pe măsură ce echipa Machine Learning Platform continuă să construiască Cerebro, principiile pe care le ținem servesc drept amintiri importante ale obiectivului nostru final.

Principiile noastre

  • Modularitate : Cerebro este mult mai mult decât un simplu punct final pe care oamenii de știință de date îl adoptă în – am dezvoltat un SDK și avem mai multe proiecte de prezentare, astfel încât oamenii de știință să poată vedea cel mai bun caz de utilizare pentru proiectele lor. Aplicând cele mai bune practici din SDK-ul nostru, utilizatorii noștri pot utiliza în mod independent platforma noastră cu ajutorul minim al echipei MLP și au încredere că instrumentele pe care le folosesc în fiecare etapă a ciclului de viață al modelului sunt cele corecte.
  • Comunicare deschisă : Nu are rost să construiască nimic dacă nimeni nu îl folosește – în acest scop, echipa noastră are de două ori pe săptămână orele de birou unde oricine poate trece pentru a depana întrebări mai detaliate care nu pot fi rezolvate prin mesagerie. În plus, echipa organizează întâlniri bisăptămânale cu echipe de știință a datelor pentru a le înțelege nevoile și pentru a preveni ieșirea din curs. Deoarece oferim noi funcții la fiecare două luni, această comunicare constantă este crucială.
  • Adopție înaltă : lucrează la integrarea SDK-ului nostru cu instrumente Nordstrom utilizate pe scară largă, cum ar fi NordyPy , permițând o experiență de utilizare confortabilă. Pe măsură ce platforma se dezvoltă, bariera de intrare va deveni din ce în ce mai mică. Acest lucru permite consumatorilor platformei să vină din Nordstrom – nu doar știința și ingineria datelor .

Ce urmează?

În viitor articole, vom discuta despre viitorul lui Cerebro, despre funcțiile viitoare și despre potențialul open-source al platformei.

Am dori să mulțumim lui Nate Lee – un alt inginer ML Platform care a contribuit la scrierea acestui articol – precum și Rizky Ramdhani, Xingtai Li și Owais Malik, membrii echipei platformei ML care au oferit feedback valoros.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *