ML-putkien vakauden ja joustavuuden parantaminen Amazon Packaging Innovationissa Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence -palvelun avulla. Pystysuuntainen haku. Ai.

ML-putkien vakauden ja joustavuuden parantaminen Amazon Packaging Innovationissa Amazon SageMaker Pipelinesin avulla

Ilahduttaakseen asiakkaita ja minimoidakseen pakkausjätteen Amazonin on valittava optimaalinen pakkaustyyppi miljardeille vuosittain lähetettäville paketeille. Jos herkälle esineelle, kuten kahvimukille, käytetään liian vähän suojaa, tuote saapuu vahingoittuneena ja Amazon vaarantaa asiakkaidensa luottamuksen. Liiallinen suojaus lisää kustannuksia ja ylitäytetään kierrätysastioita. Koska saatavilla on satoja miljoonia tuotteita, tarvitaan skaalautuva päätösmekanismi, jotta voidaan jatkuvasti oppia tuotetestauksesta ja asiakaspalautteesta.

Näiden ongelmien ratkaisemiseksi Amazon Packaging Innovation -tiimi kehitti koneoppimismalleja (ML), jotka luokittelevat, soveltuvatko tuotteet Amazonin pakkaustyyppeihin, kuten postiin, pussiin tai laatikoihin, vai voidaanko ne jopa toimittaa ilman lisäpakkauksia. Aiemmin tiimi kehitti mukautetun putkilinjan, joka perustuu AWS-vaihetoiminnot suorittaa viikoittainen koulutusta ja päivittäisiä tai kuukausittaisia ​​päättelytöitä. Ajan mittaan putkisto ei kuitenkaan tarjonnut tarpeeksi joustavuutta uusien arkkitehtuurien mallien käynnistämiseksi. Uusien putkien kehittäminen aiheutti yleiskustannuksia ja vaati koordinointia datatieteilijöiden ja kehittäjien välillä. Näiden vaikeuksien voittamiseksi ja uusien mallien ja arkkitehtuurien käyttöönoton nopeuttamiseksi tiimi päätti järjestää mallikoulutuksen ja päättelyn Amazon SageMaker -putkistot.

Tässä viestissä keskustelemme aiemmasta Step Functions -toimintoihin perustuvasta orkesteriarkkitehtuurista, hahmottelemme koulutus- ja päättelyarkkitehtuureja Pipelinesin avulla ja korostamme Amazon Packaging Innovation -tiimin saavuttamaa joustavuutta.

Amazon Packaging Innovationin entisen ML-putkilinjan haasteet

Jatkuvan palautteen saamiseksi pakettien toimivuudesta koulutetaan joka viikko uusi malli käyttämällä kasvavaa määrää tarroja. Koko tuotevalikoiman päättely suoritetaan kuukausittain, ja päivittäinen päättely suoritetaan juuri-in-time-ennusteiden toimittamiseksi juuri lisätylle varastolle.

Useiden mallien koulutusprosessin automatisoimiseksi ja ennusteiden antamiseksi tiimi oli kehittänyt vaihefunktioihin perustuvan mukautetun putkilinjan seuraavien vaiheiden järjestämiseksi:

  • Tietojen valmistelu koulutus- ja päättelytöitä varten sekä ennusteiden lataaminen tietokantaan (Amazonin punainen siirto) Kanssa AWS-liima.
  • Mallin koulutus ja johtopäätökset Amazon Sage Maker.
  • Mallin suorituskykymittareiden laskenta validointijoukolle AWS-erä.
  • Käyttäminen Amazon DynamoDB tallentaa mallin kokoonpanot (kuten tietojen jakosuhde koulutukseen ja validointiin, malliartefaktin sijainti, mallin tyyppi ja esiintymien lukumäärä koulutukseen ja päättelyyn), mallin suorituskykymittareita ja viimeisin onnistuneesti koulutettu malliversio.
  • Mallin suorituspisteiden erojen laskeminen, koulutusmerkintöjen jakauman muutokset ja syöttötietojen koon vertailu edellisen ja uuden malliversion välillä AWS Lambda toiminnot.
  • Kun otetaan huomioon vaiheiden suuri määrä, putkilinja vaati myös luotettavan hälytysjärjestelmän jokaisessa vaiheessa varoittaakseen sidosryhmiä kaikista ongelmista. Tämä saavutettiin yhdistämällä Amazonin yksinkertainen jonopalvelu (Amazon SQS) ja Amazonin yksinkertainen ilmoituspalvelu (Amazon SNS). Hälytykset luotiin ilmoittamaan liiketoiminnan sidosryhmille, datatieteilijöille ja kehittäjille epäonnistuneista vaiheista ja suurista poikkeamista mallin ja datametriikassa.

Käytettyään tätä ratkaisua lähes 2 vuotta, tiimi tajusi, että tämä toteutus toimi hyvin vain tyypillisessä ML-työnkulussa, jossa yksi malli koulutettiin ja pisteytettiin validointitietojoukossa. Ratkaisu ei kuitenkaan ollut riittävän joustava monimutkaisille malleille, eikä se kestänyt vikoja. Esimerkiksi arkkitehtuuri ei mahdu helposti peräkkäistä mallikoulutusta. Vaiheen lisääminen tai poistaminen oli vaikeaa ilman koko putkilinjan monistamista ja infrastruktuurin muokkaamista. Jopa yksinkertaiset muutokset tietojenkäsittelyvaiheissa, kuten tietojen jakosuhteen säätäminen tai erilaisten ominaisuuksien valitseminen, vaativat koordinaatiota sekä datatieteilijältä että kehittäjältä. Kun putkisto epäonnistui missä tahansa vaiheessa, se oli käynnistettävä uudelleen alusta, mikä johti toistuviin ajoihin ja lisäsi kustannuksia. Välttääkseen toistuvat suoritukset ja epäonnistuneen vaiheen uudelleenkäynnistyksen, tiimi luo uuden kopion lyhennetystä tilakoneesta. Tämä vianetsintä johti tilakoneiden lisääntymiseen, joista jokainen aloitti tavallisesti epäonnistuneista vaiheista. Lopuksi, jos koulutustyössä havaittiin poikkeama tarrojen jakautumisessa, mallipisteissä tai tarrojen määrässä, datatieteilijän oli tarkistettava malli ja sen mittarit manuaalisesti. Sitten datatieteilijä käyttää DynamoDB-taulukkoa malliversioiden kanssa ja päivittää taulukon varmistaakseen, että oikeaa mallia käytettiin seuraavassa päättelytyössä.

Tämän arkkitehtuurin ylläpito vaati vähintään yhden dedikoidun resurssin ja lisäksi kokopäiväisen resurssin kehittämiseen. Koska putkilinjan laajentaminen uusiin käyttötapauksiin vaikeutti, datatieteilijät olivat alkaneet kehittää omia työnkulkujaan, mikä puolestaan ​​oli johtanut kasvavaan koodikantaan, useisiin tietotaulukoihin samanlaisilla tietojärjestelmillä ja hajautettuun mallien seurantaan. Näiden ongelmien kasautuminen oli johtanut joukkueen tuottavuuden laskuun ja yleiskustannuksiin.

Vastatakseen näihin haasteisiin Amazon Packaging Innovation -tiimi arvioi muita olemassa olevia MLOps-ratkaisuja, mukaan lukien SageMaker Pipelines (Joulukuun 2020 julkaisuilmoitus). Pipelines on SageMakerin ominaisuus päästä päähän ML-työnkulkujen rakentamiseen, hallintaan, automatisoimiseen ja skaalamiseen. Pipelinesin avulla voit vähentää vaiheiden määrää koko ML-työnkulussa, ja se on riittävän joustava, jotta datatutkijat voivat määrittää mukautetun ML-työnkulun. Se huolehtii vaiheiden seurannasta ja kirjaamisesta. Sen mukana tulee myös mallirekisteri, joka versioi automaattisesti uudet mallit. Mallirekisterissä on sisäänrakennettu hyväksyntätyönkulku mallien valitsemiseksi tuotannossa päätelmistä varten. Liukulinjat mahdollistavat myös samoilla argumenteilla kutsuttujen vaiheiden välimuistiin tallentamisen. Jos edellinen ajo löytyy, välimuisti luodaan, mikä mahdollistaa helpon uudelleenkäynnistyksen onnistuneesti suoritettujen vaiheiden uudelleenlaskemisen sijaan.

Arviointiprosessissa Pipelines erottui muista ratkaisuista joustavuudellaan ja nykyisten ja tulevien työnkulkujen tukemiseen ja laajentamiseen tarkoitettujen ominaisuuksien saatavuudella. Pipelinesiin siirtyminen vapautti kehittäjien aikaa alustan ylläpidosta ja vianetsinnästä ja ohjasi huomion uusien ominaisuuksien lisäämiseen. Tässä viestissä esittelemme koulutus- ja päättelytyönkulkujen suunnittelua Amazon Packaging Innovation -tiimissä käyttäen Pipelinesiä. Keskustelemme myös eduista ja kustannussäästöistä, joita tiimi saavutti siirtymällä Pipelinesiin.

Koulutusputki

Amazon Packaging Innovation -tiimi kouluttaa malleja jokaiselle pakkaustyypille käyttämällä kasvavaa määrää etikettejä. Seuraava kaavio kuvaa koko prosessin.

Työnkulku alkaa purkamalla tarrat ja ominaisuudet Amazon Redshift -tietokannasta ja purkamalla tiedot kohteeseen Amazonin yksinkertainen tallennuspalvelu (Amazon S3) ajoitetun purkaus-, muunnos- ja lataustyön (ETL) kautta. Syöttötietojen lisäksi S3-ämpäriin sijoitetaan tiedostoobjekti mallityypin ja parametrien kanssa. Tämä tiedosto toimii liukuhihnan laukaisimena Lambda-funktion kautta.

Seuraavat vaiheet ovat täysin muokattavissa ja määritellyt kokonaan tietotieteilijä, joka käyttää SageMaker Python SDK for Pipelines -ohjelmistoa. Tässä viestissä esittämässämme skenaariossa syöttötiedot jaetaan koulutus- ja validointisarjoiksi ja tallennetaan takaisin S3-säihöön käynnistämällä SageMaker Processing -työ.

Kun tiedot ovat valmiit Amazon S3:ssa, SageMaker-koulutustyö alkaa. Kun malli on koulutettu ja luotu onnistuneesti, mallin arviointivaihe suoritetaan validointitiedoille SageMaker-erämuunnostyön kautta. Mallin mittareita verrataan sitten edellisen viikon mallimittauksiin käyttämällä SageMaker Processing -työtä. Tiimi on määritellyt useita mukautettuja kriteerejä mallin suorituskyvyn poikkeamien arvioimiseksi. Malli joko hylätään tai hyväksytään näiden kriteerien perusteella. Jos malli hylätään, seuraaviin päättelytöihin käytetään edellistä hyväksyttyä mallia. Jos malli hyväksytään, sen versio rekisteröidään ja sitä mallia käytetään päättelytöihin. Sidosryhmät saavat ilmoituksen tuloksesta kautta amazonin pilvikello hälytykset.

Seuraava kuvakaappaus kohteesta Amazon SageMaker Studio näyttää koulutusputken vaiheet.

PakkausInnovaatio-SMP-koulutus

Pipelines seuraa jokaista liukuhihnaa, jota voit seurata Studiossa. Vaihtoehtoisesti voit tiedustella ajon edistymistä käyttämällä Boto3 tai AWS-komentoriviliitäntä (AWS CLI). Voit visualisoida mallin mittareita Studiossa ja verrata eri malliversioita.

Päätelmäputki

Amazon Packaging Innovation -tiimi päivittää ennusteet koko tuotevalikoimasta kuukausittain. Päivittäiset ennusteet luodaan antamaan juuri-in-time pakkaussuosituksia äskettäin lisätylle varastolle käyttämällä viimeisintä koulutettua mallia. Tämä edellyttää, että päättelyputkea suoritetaan päivittäin eri tietomäärillä. Seuraava kaavio havainnollistaa tätä työnkulkua.

PakkausInnovaatio-päätelmä-arkkitehtuuri

Kuten koulutusputkistossa, päättely alkaa tietojen purkamisesta Amazon Redshiftistä S3-ämpäriin. Amazon S3:een sijoitettu tiedostoobjekti laukaisee Lambda-toiminnon, joka käynnistää päättelyputken. Ominaisuudet valmistetaan päätelmiä varten ja tiedot jaetaan sopivan kokoisiksi tiedostoiksi SageMaker Processing -työn avulla. Seuraavaksi liukuhihna tunnistaa viimeisimmän hyväksytyn mallin ennusteiden suorittamiseksi ja niiden lataamiseksi S3-säihöön. Lopuksi ennusteet ladataan takaisin Amazon Redshiftiin käyttämällä boto3-data API:ta SageMaker Processing -työn sisällä.

Seuraava Studion kuvakaappaus näyttää päättelyputken tiedot.

ML-putkien vakauden ja joustavuuden parantaminen Amazon Packaging Innovationissa Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence -palvelun avulla. Pystysuuntainen haku. Ai.

Edut, jos valitaan ML-työnkulkujen suunnittelu SageMaker Pipelinesin avulla

Tässä osiossa käsittelemme voittoja, joita Amazon Packaging Innovation -tiimi saavutti siirtymällä Pipelinesiin mallikoulutuksen ja johtopäätösten tekemiseen.

Valmistetut tuotantotason MLOps-ominaisuudet

Verratessaan erilaisia ​​sisäisiä ja ulkoisia ratkaisuja seuraavaan ML-putkiratkaisuun, yksi datatieteilijä pystyi prototyyppien ja kehittämään täyden version ML-työnkulusta Pipelinesillä Studio Jupyter -ympäristössä alle kolmessa viikossa. Jo prototyyppivaiheessa kävi selväksi, että Pipelines tarjosi kaikki tuotantotason työnkulkuun tarvittavat infrastruktuurikomponentit: mallin versioinnin, välimuistin ja hälytykset. Näiden ominaisuuksien välitön saatavuus tarkoitti, että niiden kehittämiseen ja mukauttamiseen ei kulunut ylimääräistä aikaa. Tämä oli selkeä osoitus arvosta, mikä vakuutti Amazon Packaging Innovation -tiimin siitä, että Pipelines oli oikea ratkaisu.

Joustavuus ML-mallien kehittämisessä

Suurin hyöty ryhmän datatieteilijöille oli kyky kokeilla helposti ja iteroida eri malleja. Riippumatta siitä, mitä puitteita he pitivät parempana ML-työhönsä ja siihen liittyvien vaiheiden ja ominaisuuksien määrästä, Pipelines vastasi heidän tarpeisiinsa. Datatieteilijät saivat mahdollisuuden kokeilla ilman, että heidän oli odotettava ohjelmistokehityksen sprinttiä lisätäkseen lisäominaisuuden tai -vaiheen.

Alennetut kustannukset

SageMakerin Pipelines-ominaisuus on Ilmainen: maksat vain laskentaresursseista ja koulutukseen ja päättelyyn liittyvästä tallennustilasta. Kuitenkin, kun ajattelet kustannuksia, sinun on otettava huomioon käytettyjen palveluiden kustannusten lisäksi myös kehittäjätunnit, jotka tarvitaan työnkulun ylläpitoon, virheenkorjaukseen ja sen korjaamiseen. Orkestrointi Pipelinesillä on yksinkertaisempaa, koska se koostuu harvemmista kappaleista ja tutusta infrastruktuurista. Aiemmin uuden ominaisuuden lisääminen vaati vähintään kahta henkilöä (tietotieteilijä ja ohjelmistosuunnittelija) Amazon Packaging Innovation -tiimistä sen toteuttamiseen. Uudelleen suunnitellun putkilinjan myötä suunnittelutyöt kohdistuvat nyt lisää mukautettuun infrastruktuuriin putkilinjan ympärillä, kuten yhden tietovaraston luominen koneoppimiskoodin seurantaa varten, mallin käyttöönoton yksinkertaistaminen AWS-tileillä, integroitujen ETL-töiden kehittäminen ja yhteiset uudelleenkäytettäviä toimintoja.

Mahdollisuus tallentaa vaiheet välimuistiin samankaltaisella syötteellä auttoi myös alentamaan kustannuksia, koska tiimit olivat epätodennäköisempiä ajamaan koko putkilinjaa uudelleen. Sen sijaan he voisivat helposti aloittaa sen epäonnistumisesta.

Yhteenveto

Amazon Packaging Innovation -tiimi kouluttaa ML-malleja kuukausittain ja päivittää säännöllisesti suositeltuja tuotepakkaustyyppejä koskevia ennusteita. Nämä suositukset auttoivat heitä saavuttamaan useita tiimin ja yrityksen laajuisia tavoitteita vähentämällä jätettä ja ilahduttamalla asiakkaita jokaisella tilauksella. Koulutus- ja päättelyputkien tulee toimia luotettavasti säännöllisesti, mutta silti mahdollistaa mallien jatkuva parantaminen.

Pipelinesiin siirtyminen antoi tiimille mahdollisuuden ottaa käyttöön neljä uutta multimodaalista malliarkkitehtuuria tuotantoon alle kahdessa kuukaudessa. Uuden mallin käyttöönotto edellisellä arkkitehtuurilla olisi vaatinut 2 päivää (samalla malliarkkitehtuurilla) 5 kuukauteen (uudella malliarkkitehtuurilla). Saman mallin käyttöönotto Pipelinesin avulla auttoi tiimiä lyhentämään kehitysaikaa 1 tuntiin samalla malliarkkitehtuurilla ja viiteen päivään uudella malliarkkitehtuurilla. Tämä tarkoittaa lähes 4 prosentin säästöä työajasta.

Lisäresurssit

Lisätietoja on seuraavissa resursseissa:


Tietoja Tekijät

Ankur-Shukla-kirjoittajaAnkur Shukla on johtava tietotutkija AWS-ProServessä Palo Altossa. Ankurilla on yli 15 vuoden konsultointikokemus työskentelystä suoraan asiakkaan kanssa ja auttaa heitä ratkaisemaan liiketoimintaongelmia teknologian avulla. Hän johtaa useita maailmanlaajuisia soveltavaa tiede- ja ML-Ops-hankkeita AWS:ssä. Vapaa-ajallaan hän lukee ja viettää aikaa perheen kanssa.

Akash-Singla-kirjoittajaAkash Singla on vanhempi System Dev -insinööri Amazon Packaging Innovation -tiimin kanssa. Hänellä on yli 17 vuoden kokemus kriittisten liiketoimintaongelmien ratkaisemisesta teknologian avulla useille liiketoiminta-aloille. Tällä hetkellä hän keskittyy NAWS-infrastruktuurin päivittämiseen useiden pakkauskeskeisten sovellusten skaalaamiseksi paremmin.

Vitalina-Komashko-kirjailijaVitalina Komashko on tietotutkija, jolla on AWS Professional Services. Hänellä on tohtorintutkinto farmakologiassa ja toksikologiassa, mutta hän siirtyi kokeellisesta työstä datatieteeseen, koska hän halusi "omistaa tiedon generoinnin ja tulosten tulkinnan". Aiemmin urallaan hän työskenteli biotekniikka- ja lääkeyhtiöiden parissa. Hän nauttii AWS:ssä eri toimialojen asiakkaiden ongelmien ratkaisemisesta ja heidän ainutlaatuisista haasteistaan ​​oppimisesta.

Kirjailija Prasanth-MeiyappanPrasanth Meiyappan on vanhempi sovellettu tutkija Amazon Packaging Innovationin parissa yli 4 vuoden ajan. Hänellä on yli 6 vuoden kokemus alalta koneoppimisesta ja hän on toimittanut tuotteita parantaakseen hakuasiakaskokemusta ja parantaakseen asiakkaiden pakkauskokemusta. Prasanth on intohimoinen kestävä kehitys ja on tohtorintutkinto ilmastonmuutoksen tilastollisesta mallintamisesta.

Matthew-Bales - kirjoittajaMatthew Bales on vanhempi tutkija, joka pyrkii optimoimaan pakettityyppien valinnan asiakaspalautteen ja koneoppimisen avulla. Ennen Amazonia Matt työskenteli post-docina suorittamassa hiukkasfysiikan simulaatioita Saksassa ja edellisessä elämässään radioaktiivisten lääketieteellisten implanttien tuotantopäällikkönä startupissa. Hän on koulutukseltaan Ph.D. fysiikassa Michiganin yliopistosta.

Aikaleima:

Lisää aiheesta AWS-koneoppiminen