Improving stability and flexibility of ML pipelines at Amazon Packaging Innovation with Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Izboljšanje stabilnosti in prilagodljivosti cevovodov ML pri Amazon Packaging Innovation z Amazon SageMaker Pipelines

To delight customers and minimize packaging waste, Amazon must select the optimal packaging type for billions of packages shipped every year. If too little protection is used for a fragile item such as a coffee mug, the item will arrive damaged and Amazon risks their customer’s trust. Using too much protection will result in increased costs and overfull recycling bins. With hundreds of millions of products available, a scalable decision mechanism is needed to continuously learn from product testing and customer feedback.

Da bi rešili te težave, je skupina Amazon Packaging Innovation razvila modele strojnega učenja (ML), ki razvrščajo, ali so izdelki primerni za vrste embalaže Amazon, kot so poštne pošiljke, vrečke ali škatle, ali pa jih je mogoče celo poslati brez dodatne embalaže. Prej je ekipa razvila cevovod po meri, ki temelji na Korak funkcije AWS za izvajanje tedenskega usposabljanja in dnevnih ali mesečnih opravil sklepanja. Vendar sčasoma cevovod ni zagotovil zadostne prilagodljivosti za lansiranje modelov z novimi arhitekturami. Razvoj novih cevovodov je predstavljal dodatne stroške in zahteval usklajevanje med podatkovnimi znanstveniki in razvijalci. Da bi premagali te težave in izboljšali hitrost uvajanja novih modelov in arhitektur, se je ekipa odločila, da bo organizirala usposabljanje in sklepanje modelov z Amazonski cevovodi SageMaker.

V tem prispevku razpravljamo o prejšnji arhitekturi orkestracije, ki temelji na funkcijah korakov, opisujemo arhitekture učenja in sklepanja z uporabo cevovodov ter poudarjamo prilagodljivost, ki jo je dosegla ekipa Amazon Packaging Innovation.

Izzivi nekdanjega cevovoda ML pri Amazon Packaging Innovation

Da bi vključili stalne povratne informacije o učinkovitosti paketov, se vsak teden usposablja nov model z uporabo vedno večjega števila oznak. Sklepanje za celotno zalogo izdelkov se izvaja mesečno, dnevno sklepanje pa se izvaja za zagotavljanje pravočasnih napovedi za novo dodano zalogo.

Za avtomatizacijo procesa usposabljanja več modelov in zagotavljanje napovedi je ekipa razvila cevovod po meri, ki temelji na funkcijah korakov za orkestracijo naslednjih korakov:

  • Data preparation for training and inference jobs and loading of predictions to the database (Amazon RedShift) Z AWS lepilo.
  • Usposabljanje modela in sklepanje z Amazon SageMaker.
  • Izračun meritev uspešnosti modela na validacijskem nizu z Serija AWS.
  • Uporaba Amazon DynamoDB to store model configurations (such as data split ratio for training and validation, model artifact location, model type, and number of instances for training and inference), model performance metrics, and the latest successfully trained model version.
  • Calculation of the differences in the model performance scores, changes in the distribution of the training labels, and comparing the size of the input data between the previous and the new model versions with AWS Lambda funkcije.
  • Given the large number of steps, the pipeline also required a reliable alarming system at each step to alert the stakeholders of any issues. This was accomplished via a combination of Storitev Amazon Simple Queue Service (Amazon SQS) in Amazon Simple notification Service (Amazon SNS). The alarms were created to notify the business stakeholders, data scientists, and developers about any failed steps and large deviations in the model and data metrics.

Po skoraj 2-letni uporabi te rešitve je ekipa ugotovila, da je ta izvedba dobro delovala samo za tipičen potek dela ML, kjer je bil en sam model usposobljen in ocenjen na naboru validacijskih podatkov. Vendar pa rešitev ni bila dovolj prilagodljiva za kompleksne modele in ni bila odporna na okvare. Na primer, arhitektura se ni zlahka prilagodila zaporednemu usposabljanju modelov. Težko je bilo dodati ali odstraniti korak brez podvajanja celotnega cevovoda in spreminjanja infrastrukture. Celo preproste spremembe v korakih obdelave podatkov, kot je prilagoditev razmerja delitve podatkov ali izbira drugačnega nabora funkcij, so zahtevale usklajevanje podatkovnega znanstvenika in razvijalca. Ko je cevovod v katerem koli koraku odpovedal, ga je bilo treba znova zagnati od začetka, kar je povzročilo ponavljajoče se zagone in višje stroške. Da bi se izognili ponavljajočim se zagonom in ponovnemu zagonu iz neuspelega koraka, bi ekipa ustvarila novo kopijo skrajšanega stroja stanja. To odpravljanje težav je povzročilo širjenje državnih avtomatov, od katerih se je vsak začel s običajno neuspešnimi koraki. Nazadnje, če je delo usposabljanja naletelo na odstopanje v porazdelitvi oznak, rezultatu modela ali številu oznak, je moral podatkovni znanstvenik ročno pregledati model in njegove meritve. Nato bi podatkovni znanstvenik dostopal do tabele DynamoDB z različicami modela in posodobil tabelo, da bi zagotovil, da je bil za naslednje opravilo sklepanja uporabljen pravilen model.

Vzdrževanje te arhitekture je zahtevalo vsaj en namenski vir in dodaten vir za polni delovni čas za razvoj. Glede na težave pri razširitvi cevovoda za prilagoditev novim primerom uporabe so podatkovni znanstveniki začeli razvijati lastne poteke dela, kar je posledično privedlo do rastoče kodne baze, več podatkovnih tabel s podobnimi podatkovnimi shemami in decentraliziranega spremljanja modela. Kopičenje teh težav je povzročilo nižjo produktivnost ekipe in povečane režijske stroške.

Za reševanje teh izzivov je ekipa Amazon Packaging Innovation ocenila druge obstoječe rešitve za MLOps, vključno s cevovodi SageMaker (Obvestilo o izdaji decembra 2020). Cevovodi so zmožnost SageMakerja za gradnjo, upravljanje, avtomatizacijo in skaliranje delovnih tokov ML od konca do konca. Cevovodi vam omogočajo zmanjšanje števila korakov v celotnem poteku dela ML in so dovolj prilagodljivi, da podatkovnim znanstvenikom omogočajo definiranje poteka dela ML po meri. Skrbi za spremljanje in beleženje korakov. Priložen je tudi register modelov, ki samodejno izda nove modele. Register modelov ima vgrajene poteke dela za odobritev za izbiro modelov za sklepanje v proizvodnji. Cevovodi omogočajo tudi predpomnjenje korakov, ki so klicani z enakimi argumenti. Če je najden prejšnji zagon, se ustvari predpomnilnik, ki omogoča enostaven ponovni zagon namesto ponovnega izračunavanja uspešno izvedenih korakov.

V procesu ocenjevanja je Pipelines izstopal od drugih rešitev po svoji prilagodljivosti in razpoložljivosti funkcij za podporo in razširitev trenutnih in prihodnjih delovnih tokov. Prehod na cevovode je razvijalcem sprostil čas za vzdrževanje platforme in odpravljanje težav ter preusmeril pozornost k dodajanju novih funkcij. V tej objavi predstavljamo zasnovo za usposabljanje in delovne tokove sklepanja v skupini Amazon Packaging Innovation z uporabo cevovodov. Razpravljamo tudi o prednostih in zmanjšanju stroškov, ki jih je ekipa dosegla s prehodom na Pipelines.

Cevovod za usposabljanje

Ekipa Amazon Packaging Innovation usposablja modele za vsako vrsto paketa z uporabo vse večjega števila oznak. Naslednji diagram prikazuje celoten postopek.

The workflow begins by extracting labels and features from an Amazon Redshift database and unloading the data to Preprosta storitev shranjevanja Amazon (Amazon S3) prek načrtovanega opravila ekstrahiranja, preoblikovanja in nalaganja (ETL). Skupaj z vhodnimi podatki se v vedro S3 postavi datotečni objekt s tipom modela in parametri. Ta datoteka služi kot sprožilec cevovoda prek funkcije Lambda.

Naslednji koraki so povsem prilagodljivi in ​​jih v celoti definira podatkovni znanstvenik z uporabo SDK-ja SageMaker Python za cevovode. V scenariju, ki ga predstavljamo v tej objavi, so vhodni podatki razdeljeni na nize za usposabljanje in preverjanje ter shranjeni nazaj v vedro S3 z zagonom opravila SageMaker Processing.

Ko so podatki pripravljeni v Amazon S3, se začne izobraževalno delo SageMaker. Ko je model uspešno usposobljen in ustvarjen, se na validacijskih podatkih izvede korak vrednotenja modela prek opravila paketnega preoblikovanja SageMaker. Meritve modela se nato primerjajo z meritvami modela prejšnjega tedna z uporabo opravila SageMaker Processing. Skupina je določila več meril po meri za ocenjevanje odstopanj v delovanju modela. Na podlagi teh meril je model zavrnjen ali odobren. Če je model zavrnjen, se za naslednja opravila sklepanja uporabi prejšnji odobreni model. Če je model odobren, je njegova različica registrirana in ta model se uporablja za opravila sklepanja. Deležniki prejmejo obvestilo o izidu prek amazoncloudwatch alarmi.

The following screenshot from Amazon SageMaker Studio shows the steps of the training pipeline.

PackagingInnovation-SMP-training

Cevovodi spremljajo vsak potek cevovoda, ki ga lahko spremljate v Studiu. Druga možnost je, da poizvedujete o napredku teka z uporabo Boto3 ali Vmesnik ukazne vrstice AWS (AWS CLI). V Studiu si lahko vizualizirate meritve modela in primerjate različne različice modela.

Sklepni cevovod

Ekipa Amazon Packaging Innovation mesečno osvežuje napovedi za celotno zalogo izdelkov. Dnevne napovedi so ustvarjene za zagotavljanje pravočasnih priporočil za pakiranje za novo dodane zaloge z uporabo najnovejšega usposobljenega modela. To zahteva, da se cevovod sklepanja dnevno izvaja z različnimi količinami podatkov. Naslednji diagram ponazarja ta potek dela.

PackagingInnovation-inference-architecture

Podobno kot pri usposabljanju se sklepanje začne z razkladanjem podatkov iz Amazon Redshift v vedro S3. Objekt datoteke, postavljen v Amazon S3, sproži funkcijo Lambda, ki sproži cevovod sklepanja. Funkcije so pripravljene za sklepanje in podatki so razdeljeni v datoteke ustrezne velikosti s pomočjo opravila SageMaker Processing. Nato cevovod identificira najnovejši odobreni model za izvajanje napovedi in jih naloži v vedro S3. Nazadnje se napovedi naložijo nazaj v Amazon Redshift z uporabo boto3-data API znotraj opravila SageMaker Processing.

Naslednji posnetek zaslona iz Studia prikazuje podrobnosti sklepnega cevovoda.

Improving stability and flexibility of ML pipelines at Amazon Packaging Innovation with Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Prednosti izbire načrtovanja delovnih tokov ML s SageMaker Pipelines

V tem razdelku razpravljamo o pridobitvah, ki jih je skupina Amazon Packaging Innovation dosegla s prehodom na cevovode za modelno usposabljanje in sklepanje.

Out-of-the-box production-level MLOps features

While comparing different internal and external solutions for the next ML pipeline solution, a single data scientist was able to prototype and develop a full version of an ML workflow with Pipelines in a Studio Jupyter environment in less than 3 weeks. Even at the prototyping stage, it became clear that Pipelines provided all necessary infrastructure components required for a production level workflow: model versioning, caching, and alarms. Immediate availability of these features meant that no additional time would be spent developing and customizing them. This was a clear demonstration of value, which convinced the Amazon Packaging Innovation team that Pipelines was the right solution.

Prilagodljivost pri razvoju modelov ML

The biggest gain for the data scientists on the team was the ability to experiment easily and iterate through different models. Regardless of what framework they preferred for their ML work and the number of steps and features it involved, Pipelines accommodated their needs. The data scientists were empowered to experiment without having to wait to get on the software development sprint to add an additional feature or step.

Zmanjšani stroški

Zmogljivost cevovodov SageMakerja je brezplačno: plačate samo za računalniške vire in shranjevanje, povezano z usposabljanjem in sklepanjem. Ko pa razmišljate o stroških, morate upoštevati ne le stroške uporabljenih storitev, temveč tudi ure razvijalcev, ki so potrebne za vzdrževanje poteka dela, odpravljanje napak in popravke. Orkestriranje s cevovodi je enostavnejše, ker je sestavljeno iz manj delov in znane infrastrukture. Prej sta bila za dodajanje nove funkcije potrebni vsaj dve osebi (podatkovni znanstvenik in programski inženir) v ekipi Amazon Packaging Innovation, ki sta jo implementirali. S preoblikovanim cevovodom so inženirska prizadevanja zdaj usmerjena v dodatno prilagojeno infrastrukturo okoli cevovoda, kot je ustvarjanje enotnega repozitorija za sledenje kodi strojnega učenja, poenostavitev uvajanja modela v računih AWS, razvoj integriranih opravil ETL in skupnih funkcije za večkratno uporabo.

Zmožnost predpomnilnika korakov s podobnim vnosom je prav tako prispevala k zmanjšanju stroškov, ker je bilo manj verjetno, da bodo ekipe ponovno zagnale celoten cevovod. Namesto tega bi ga zlahka začeli od točke neuspeha.

zaključek

Ekipa Amazon Packaging Innovation mesečno usposablja modele ML in redno posodablja napovedi za priporočene vrste embalaže izdelkov. Ta priporočila so jim pomagala doseči številne cilje za celotno ekipo in podjetje z zmanjšanjem odpadkov in razveseljevanjem strank z vsakim naročilom. Cevovodi za usposabljanje in sklepanje morajo redno delovati zanesljivo, hkrati pa omogočati nenehno izboljševanje modelov.

Prehod na cevovode je ekipi omogočil uvedbo štirih novih arhitektur večmodalnih modelov v proizvodnjo v manj kot 2 mesecih. Uvedba novega modela s prejšnjo arhitekturo bi zahtevala 5 dni (z isto arhitekturo modela) do 1 mesec (z novo arhitekturo modela). Uvedba istega modela z uporabo cevovodov je ekipi omogočila skrajšanje časa razvoja na 4 ure z isto arhitekturo modela in na 5 dni z novo arhitekturo modela. To pomeni prihranek skoraj 80 % delovnih ur.

Dodatni viri

Za več informacij glejte naslednje vire:


O avtorjih

Ankur-Shukla-avtorAnkur Šukla is a Principal Data Scientist at AWS-ProServe based in Palo Alto. Ankur has more than 15 years of consulting experience working directly with the customer and help them solve business problem with technology. He leads multiple global applied science and ML-Ops initiatives within AWS. In his free time, he enjoys reading and spending time with family.

Akash-Singla-avtorAkash Singla is a Sr. System Dev Engineer with Amazon Packaging Innovation team. He has more than 17 years of experience solving critical business problems through technology for several business verticals. He currently focuses on upgrading NAWS infrastructure for variety of packaging centric applications to scale them better.

Vitalina-Komashko-authorVitalina Komaško je podatkovni znanstvenik pri AWS Professional Services. Ima doktorat iz farmakologije in toksikologije, vendar je z eksperimentalnega dela prešla na podatkovno znanost, ker je želela »lastiti ustvarjanje podatkov in interpretacijo rezultatov«. Na začetku svoje kariere je sodelovala z biotehnološkimi in farmacevtskimi podjetji. Pri AWS uživa v reševanju problemov strank iz različnih panog in spoznavanju njihovih edinstvenih izzivov.

Prasanth-Meiyappan-authorPrasanth Meiyappan je starejši uporabni znanstvenik pri Amazon Packaging Innovation že 4+ leta. Ima več kot 6 let industrijskih izkušenj na področju strojnega učenja in je pošiljal izdelke za izboljšanje uporabniške izkušnje pri iskanju in pakiranja strank. Prasanth je navdušen nad trajnostjo in ima doktorat iz statističnega modeliranja podnebnih sprememb.

Matthew-Bales-avtorMatthew Bales je višji raziskovalec, ki se ukvarja z optimizacijo izbire vrste paketa z uporabo povratnih informacij strank in strojnega učenja. Pred Amazonom je Matt delal kot podoktor in izvajal simulacije fizike delcev v Nemčiji, v prejšnjem življenju pa je bil vodja proizvodnje radioaktivnih medicinskih vsadkov v zagonskem podjetju. Ima doktorat znanosti. doktor fizike na Univerzi v Michiganu.

Časovni žig:

Več od Strojno učenje AWS