Kui olete amazon.com-ist otsinud kaupa, mida osta, olete kasutanud Amazon Search teenuseid. Amazon Searchis vastutame oma klientide otsingu- ja avastamiskogemuse eest kogu maailmas. Taustal indekseerime oma ülemaailmset tootekataloogi, juurutame väga skaleeritavaid AWS-parke ja kasutame täiustatud masinõpet (ML), et sobitada asjakohaseid ja huvitavaid tooteid iga kliendi päringuga.
Meie teadlased koolitavad regulaarselt välja tuhandeid ML-mudeleid, et parandada otsingutulemuste kvaliteeti. Laiaulatusliku katsetamise toetamine kujutab endast oma väljakutseid, eriti mis puudutab neid ML-mudeleid koolitavate teadlaste tootlikkuse parandamist.
Selles postituses jagame, kuidas me juhtimissüsteemi üles ehitasime Amazon SageMaker koolitustööd, mis võimaldab meie teadlastel tuhandeid katseid vallandada ja unustada ning vajadusel teavitada. Nüüd saavad nad keskenduda väärtuslikele ülesannetele ja algoritmiliste vigade lahendamisele, säästes sellega 60% oma ajast.
Väljakutse
Amazon Searchis lahendavad meie teadlased teabeotsingu probleeme, katsetades ja käivitades SageMakeris arvukalt ML-mudeli koolitustöid. Meie meeskonna uuendustega sammu pidamiseks on meie mudelite keerukus ja koolitustööde arv aja jooksul kasvanud. SageMakeri koolitustööd võimaldavad meil vähendada nende mudelite ulatusliku väljaõppe ja häälestamise aega ja kulusid, ilma et oleks vaja infrastruktuuri hallata.
Nagu kõik selliste suuremahuliste ML-projektide puhul, võivad ka koolitustööd erinevate tegurite tõttu ebaõnnestuda. See postitus keskendub võimsuse nappusele ja algoritmi vigadest tingitud tõrgetele.
Kavandasime tööhaldussüsteemiga arhitektuuri, et taluda ja vähendada töö ebaõnnestumise tõenäosust võimsuse puudumise või algoritmi vigade tõttu. See võimaldab teadlastel vallandada ja unustada tuhandeid koolitustöid, neid mööduva tõrke korral automaatselt uuesti proovida ja vajadusel edu või ebaõnnestumise kohta teateid saada.
Lahenduse ülevaade
Järgmisel lahendusskeemil kasutame oma lahenduse põhiüksusena SageMakeri koolitustöid. See tähendab, et töö esindab ML-mudeli täielikku väljaõpet.
Selle lahenduse kõrgetasemeline töövoog on järgmine:
- Teadlased kasutavad API-d, et esitada süsteemile uus töö.
- Töö on registreeritud ettevõttes
New
olek metaandmete poes. - Tööde planeerija toodab asünkroonselt
New
töid metaandmete poest, analüüsib nende sisendit ja proovib käivitada SageMakeri koolitustööd igaühe jaoks. Nende olek muutubLaunched
orFailed
sõltuvalt edust. - Monitor kontrollib tööde edenemist korrapäraste ajavahemike järel ja annab nendest aru
Completed
,Failed
võiInProgress
olek metaandmete salves. - Teavitamiseks käivitatakse teataja
Completed
jaFailed
teadlastele töökohti.
Tööde ajaloo säilitamine metaandmete poes võimaldab ka meie meeskonnal teha trendide analüüsi ja jälgida projekti edenemist.
See töögraafiku lahendus kasutab lõdvalt seotud serverita komponente, mis põhinevad AWS Lambda, Amazon DynamoDB, Amazoni lihtne teavitusteenus (Amazon SNS) ja Amazon EventBridge. See tagab horisontaalse mastaapsuse, võimaldades meie teadlastel käivitada tuhandeid töid minimaalse töökoormusega. Järgmine diagramm illustreerib serverita arhitektuuri.
Järgmistes jaotistes käsitleme üksikasjalikumalt iga teenust ja selle komponente.
DynamoDB kui metaandmete salvestuskoht tööde käitamiseks
DynamoDB kasutuslihtsus ja skaleeritavus muutsid tööde metaandmete säilitamise DynamoDB tabelis loomulikuks valikuks. See lahendus salvestab mitu teadlaste esitatud tööde atribuuti, aidates seeläbi edenemise jälgimisel ja töövoo korraldamisel. Kõige olulisemad atribuudid on järgmised:
- Töö ID - Unikaalne töö ID. See võib olla automaatselt loodud või teadlase poolt pakutav.
- Töö staatus - töö staatus.
- JobArgs – Muud koolitustöö loomiseks vajalikud argumendid, nagu Amazon S3 sisestustee, koolituspildi URI ja palju muud. Koolitustöö loomiseks vajalike parameetrite täieliku loendi leiate jaotisest Loo koolitustöö.
Lambda põhiloogika jaoks
Kasutame kolme konteineripõhine Lambda funktsioonid töövoo juhtimiseks:
- Esitage töö – Seda funktsiooni kasutavad teadlased, kui neil on vaja uusi töökohti luua. Lihtsuse huvides toimib see API-na. Saate seda ka esiküljega Amazon API värav, vajadusel. See funktsioon registreerib tööd DynamoDB tabelis.
- Käivitage Jobs – See funktsioon laadib perioodiliselt alla
New
töid DynamoDB tabelist ja käivitab need SageMakeri abil Loo koolitustöö käsk. See proovib uuesti mööduvate tõrgete korral, ntResourceLimitExceeded
jaCapacityError
, et tagada instrumendi vastupidavus süsteemile. Seejärel värskendab see töö olekut kuiLaunched
orFailed
sõltuvalt edust. - Jälgige töökohti – See funktsioon jälgib perioodiliselt töö edenemist, kasutades nuppu Kirjeldage koolitustööd käsk ja värskendab vastavalt DynamoDB tabelit. See küsitleb
Failed
tööd metaandmetest ja hindab, kas need tuleks uuesti esitada või märkida lõplikult ebaõnnestunuks. Samuti avaldab see teadlastele teavitussõnumeid, kui nende töö jõuab lõppseisundisse.
EventBridge ajakava koostamiseks
Kasutame EventBridge'i funktsioonide Launch Jobs ja Monitor Jobs Lambda käitamiseks ajakava alusel. Lisateabe saamiseks vaadake Õpetus: AWS Lambda funktsioonide ajastamine EventBridge'i abil.
Teise võimalusena võite kasutada ka Amazon DynamoDB Streams päästikute jaoks. Lisateabe saamiseks vt DynamoDB Streams ja AWS Lambda päästikud.
Märguanded Amazon SNS-iga
Meie teadlased on teavitatud e-posti teel Amazon SNS-i kaudu kui nende töökohad jõuavad lõppseisundisse (Failed
pärast maksimaalset arvu korduskatseid), Completed
või Stopped
.
Järeldus
Selles postituses jagasime, kuidas Amazon Search lisab ML-mudeli koolituse töökoormustele vastupidavust, ajastades neid ja proovides uuesti võimsuse nappuse või algoritmivigade korral. Kogu töövoo korraldamiseks kasutasime Lambda funktsioone koos DynamoDB tabeliga keskse metaandmete hoidlana.
Selline ajakavade süsteem võimaldab teadlastel esitada oma töökohad ja need unustada. See säästab aega ja võimaldab neil keskenduda paremate mudelite kirjutamisele.
Oma õpingutes edasi saamiseks võite külastada Suurepärane SageMaker ja leiate ühest kohast kõik asjakohased ja ajakohased ressursid, mis on vajalikud SageMakeriga töötamiseks.
Autoritest
Luochao Wang on Amazon Searchi tarkvarainsener. Ta keskendub skaleeritavatele hajutatud süsteemidele ja automatiseerimistööriistadele pilves, et kiirendada masinõppe rakenduste teadusliku innovatsiooni tempot.
Ishan Bhatt on Amazon Prime Video meeskonna tarkvarainsener. Ta töötab peamiselt MLOps-ruumis ja tal on viimase 4 aasta jooksul kogemusi MLOps-toodete loomisel Amazon SageMakeri abil.
Abhinandan Patni on Amazon Searchi vanemtarkvarainsener. Ta keskendub süsteemide ja tööriistade loomisele skaleeritava hajutatud süvaõppe koolituse ja reaalajas järelduste tegemiseks.
Eiman Elnahrawy on Amazon Searchi peamine tarkvarainsener, kes juhib masinõppe kiirendamise, skaleerimise ja automatiseerimise alal. Tema teadmised hõlmavad mitut valdkonda, sealhulgas masinõpet, hajutatud süsteeme ja isikupärastamist.
Sofian Hamiti on AI/ML-i spetsialist lahenduste arhitekt AWSis. Ta aitab klientidel erinevates tööstusharudes kiirendada nende tehisintellekti/ML-i teekonda, aidates neil luua ja kasutusele võtta täielikud masinõppelahendused.
Dr Romi Datta on Amazon SageMakeri meeskonna tootehalduse vanemjuht, kes vastutab koolituse, töötlemise ja funktsioonide poe eest. Ta on olnud AWS-is üle 4 aasta, täites mitmeid tootehalduse juhtrolle SageMakeris, S3-s ja IoT-s. Enne AWS-i töötas ta erinevatel tootehalduse, inseneri ja operatiivjuhtimise ametikohtadel ettevõtetes IBM, Texas Instruments ja Nvidia. Tal on MS ja Ph.D. aastal Austini Texase ülikooli elektri- ja arvutitehnika erialal ning Chicago Boothi ülikooli ärikoolis MBA.
RJ on Search M5 meeskonna insener, kes juhib suuremahuliste süvaõppesüsteemide loomist koolituse ja järelduste tegemiseks. Töövälisel ajal uurib ta erinevaid toidukööke ja tegeleb reketispordiga.
- Täpsem (300)
- AI
- ai kunst
- ai kunsti generaator
- on robot
- Amazon SageMakeri autopiloot
- tehisintellekti
- tehisintellekti sertifikaat
- tehisintellekt panganduses
- tehisintellekti robot
- tehisintellekti robotid
- tehisintellekti tarkvara
- AWS-i masinõpe
- blockchain
- plokiahela konverents ai
- coingenius
- vestluslik tehisintellekt
- krüptokonverents ai
- dall's
- sügav õpe
- google ai
- masinõpe
- Platon
- plato ai
- Platoni andmete intelligentsus
- Platoni mäng
- PlatoData
- platogaming
- skaala ai
- süntaks
- sephyrnet