Vzdrževanje delovnih tokov strojnega učenja (ML) v proizvodnji je zahtevna naloga, saj zahteva ustvarjanje cevovodov za stalno integracijo in neprekinjeno dostavo (CI/CD) za kodo in modele ML, različico modela, spremljanje premikanja podatkov in koncepta, ponovno usposabljanje modela in priročnik postopek odobritve za zagotovitev, da nove različice modela izpolnjujejo zahteve glede zmogljivosti in skladnosti.
V tej objavi opisujemo, kako ustvariti delovni tok MLOps za paketno sklepanje, ki avtomatizira razporejanje opravil, spremljanje modela, ponovno usposabljanje in registracijo ter obravnavo napak in obveščanje z uporabo Amazon SageMaker, Amazon EventBridge, AWS Lambda, Amazon Simple notification Service (Amazon SNS), HashiCorp Terraform in GitLab CI/CD. Predstavljen potek dela MLOps zagotavlja predlogo za večkratno uporabo za upravljanje življenjskega cikla ML z avtomatizacijo, spremljanjem, revizijo in razširljivostjo, s čimer se zmanjšajo kompleksnost in stroški vzdrževanja delovnih obremenitev paketnega sklepanja v proizvodnji.
Pregled rešitev
Naslednja slika ponazarja predlagano ciljno arhitekturo MLOps za paketno sklepanje podjetij za organizacije, ki uporabljajo infrastrukturo GitLab CI/CD in Terraform kot kodo (IaC) v povezavi z orodji in storitvami AWS. GitLab CI/CD služi kot makro-orkestrator, orkestrira model build
in model deploy
cevovodi, ki vključujejo pridobivanje, gradnjo in oskrbo Amazonski cevovodi SageMaker in podporne vire z uporabo SDK-ja SageMaker Python in Terraform. SDK SageMaker Python se uporablja za ustvarjanje ali posodobitev cevovodov SageMaker za usposabljanje, usposabljanje z optimizacijo hiperparametrov (HPO) in paketno sklepanje. Terraform se uporablja za ustvarjanje dodatnih virov, kot so pravila EventBridge, funkcije Lambda in teme SNS za spremljanje cevovodov SageMaker in pošiljanje obvestil (na primer, ko korak cevovoda spodleti ali uspe). SageMaker Pipelines služi kot orkestrator za usposabljanje modelov ML in poteke dela sklepanja.
Ta zasnova arhitekture predstavlja strategijo z več računi, kjer se modeli ML gradijo, usposabljajo in registrirajo v osrednjem registru modelov znotraj računa za razvoj podatkovne znanosti (ki ima več nadzora kot tipičen račun za razvoj aplikacij). Nato se z uporabo avtomatizacije iz orodij DevOps, kot je GitLab CI/CD, namestijo cevovodi sklepanja v uprizoritvene in produkcijske račune. Centralni register modela bi lahko po želji postavili tudi v račun skupnih storitev. Nanašati se na Operacijski model za najboljše prakse v zvezi s strategijo več računov za pranje denarja.
V naslednjih pododdelkih podrobno obravnavamo različne vidike načrtovanja arhitekture.
Infrastruktura kot koda
IaC ponuja način za upravljanje IT infrastrukture prek strojno berljivih datotek, kar zagotavlja učinkovit nadzor različic. V tej objavi in spremnem vzorcu kode prikazujemo uporabo HashiCorp Terraform z GitLab CI/CD za učinkovito upravljanje virov AWS. Ta pristop poudarja ključno prednost IAC, ki ponuja pregleden in ponovljiv proces pri upravljanju infrastrukture IT.
Model usposabljanja in prekvalifikacije
V tej zasnovi cevovod za usposabljanje SageMaker poteka po urniku (prek EventBridge) ali na podlagi Preprosta storitev shranjevanja Amazon (Amazon S3) sprožilec dogodka (na primer, ko se sprožilna datoteka ali novi podatki o usposabljanju, v primeru enega samega podatkovnega objekta o usposabljanju, postavijo v Amazon S3) za redno ponovno umerjanje modela z novimi podatki. Ta cevovod ne uvaja strukturnih ali materialnih sprememb v model, ker uporablja fiksne hiperparametre, ki so bili odobreni med postopkom pregleda modela podjetja.
Cevovod usposabljanja registrira na novo usposobljeno različico modela v Register modelov Amazon SageMaker če model preseže vnaprej določen prag zmogljivosti modela (na primer RMSE za regresijo in rezultat F1 za klasifikacijo). Ko je nova različica modela registrirana v registru modelov, sproži obvestilo odgovornemu podatkovnemu znanstveniku prek Amazon SNS. Podatkovni znanstvenik mora nato pregledati in ročno odobriti najnovejšo različico modela v Amazon SageMaker Studio UI ali prek klica API-ja z uporabo Vmesnik ukazne vrstice AWS (AWS CLI) ali AWS SDK za Python (Boto3), preden je mogoče novo različico modela uporabiti za sklepanje.
Cev za usposabljanje SageMaker in njegove podporne vire je ustvaril GitLab model build
cevovoda, bodisi z ročnim zagonom cevovoda GitLab ali samodejno, ko je koda združena v main
podružnica model build
Git repozitorij.
Zaključek serije
Cevovod paketnega sklepanja SageMaker teče po urniku (prek EventBridge) ali tudi na podlagi sprožilca dogodka S3. Cevovod paketnega sklepanja samodejno potegne zadnjo odobreno različico modela iz registra modelov in jo uporabi za sklepanje. Cevovod paketnega sklepanja vključuje korake za preverjanje kakovosti podatkov glede na osnovno linijo, ustvarjeno s cevovodom za usposabljanje, kot tudi kakovost modela (zmogljivost modela), če so na voljo osnovne oznake resničnosti.
Če cevovod paketnega sklepanja odkrije težave s kakovostjo podatkov, bo o tem obvestil odgovornega podatkovnega znanstvenika prek storitve Amazon SNS. Če odkrije težave s kakovostjo modela (na primer RMSE je večji od vnaprej določenega praga), korak cevovoda za preverjanje kakovosti modela ne bo uspel, kar bo sprožilo dogodek EventBridge za začetek usposabljanja s cevovodom HPO.
GitLab je ustvaril paketno sklepanje SageMaker in njegove podporne vire model deploy
cevovoda, bodisi z ročnim zagonom cevovoda GitLab ali samodejno, ko je koda združena v main
podružnica model deploy
Git repozitorij.
Nastavitev in ponovna nastavitev modela
Usposabljanje SageMaker s cevovodom HPO se sproži, ko korak preverjanja kakovosti modela cevovoda serijskega sklepanja ne uspe. Preverjanje kakovosti modela se izvede s primerjavo napovedi modela z dejanskimi oznakami resničnosti. Če metrika kakovosti modela (na primer RMSE za regresijo in rezultat F1 za klasifikacijo) ne izpolnjuje vnaprej določenega kriterija, je korak preverjanja kakovosti modela označen kot neuspešen. Usposabljanje SageMaker s cevovodom HPO lahko po potrebi sproži tudi ročno (v uporabniškem vmesniku SageMaker Studio ali prek klica API z uporabo AWS CLI ali SDK SageMaker Python), če je to potrebno. Ker se hiperparametri modela spreminjajo, mora odgovorni podatkovni znanstvenik pridobiti odobritev odbora za pregled modela podjetja, preden se lahko nova različica modela odobri v registru modelov.
Usposabljanje SageMaker s cevovodom HPO in njegovimi podpornimi viri je ustvaril GitLab model build
cevovoda, bodisi z ročnim zagonom cevovoda GitLab ali samodejno, ko je koda združena v main
podružnica model build
Git repozitorij.
Spremljanje modela
Podatkovna statistika in izhodišča omejitev so ustvarjeni kot del usposabljanja in usposabljanja s cevovodi HPO. Shranijo se v Amazon S3 in tudi registrirajo z usposobljenim modelom v registru modelov, če model opravi oceno. Predlagana arhitektura za uporabo cevovoda paketnega sklepanja Amazonski model monitorja SageMaker za preverjanje kakovosti podatkov, pri uporabi po meri Obdelava Amazon SageMaker korake za preverjanje kakovosti modela. Ta zasnova ločuje preverjanje kakovosti podatkov in modela, kar vam omogoča, da pošljete opozorilno obvestilo samo, ko je zaznan premik podatkov; in sproži usposabljanje s cevovodom HPO, ko je zaznana kršitev kakovosti modela.
Odobritev modela
Ko je na novo usposobljen model registriran v registru modelov, odgovorni podatkovni znanstvenik prejme obvestilo. Če je bil model usposobljen s cevovodom za usposabljanje (ponovno umerjanje z novimi podatki za usposabljanje, medtem ko so hiperparametri določeni), ni potrebna odobritev odbora za pregled modela podjetja. Podatkovni znanstvenik lahko neodvisno pregleda in odobri novo različico modela. Po drugi strani pa, če je bil model naučen z usposabljanjem s cevovodom HPO (ponovna nastavitev s spreminjanjem hiperparametrov), mora nova različica modela iti skozi postopek pregleda v podjetju, preden se lahko uporabi za sklepanje v proizvodnji. Ko je postopek pregleda končan, lahko podatkovni znanstvenik nadaljuje in odobri novo različico modela v registru modelov. Spreminjanje statusa paketa modela v Approved
bo sprožil funkcijo Lambda prek EventBridge, ta pa bo sprožila GitLab model deploy
cevovod prek klica API-ja. To bo samodejno posodobilo cevovod za sklepanje paketov SageMaker, da bo za sklepanje uporabil zadnjo odobreno različico modela.
Obstajata dva glavna načina za odobritev ali zavrnitev nove različice modela v registru modelov: z uporabo AWS SDK za Python (Boto3) ali iz uporabniškega vmesnika SageMaker Studio. Privzeto sta nastavljena cevovod usposabljanja in cevovod usposabljanja s HPO ModelApprovalStatus
do PendingManualApproval
. Odgovorni podatkovni znanstvenik lahko posodobi status odobritve za model tako, da pokliče update_model_package
API podjetja Boto3. Nanašati se na Posodobite status odobritve modela za podrobnosti o posodabljanju statusa odobritve modela prek uporabniškega vmesnika SageMaker Studio.
Oblikovanje podatkovnega V/I
SageMaker neposredno komunicira z Amazon S3 za branje vnosov in shranjevanje izhodov posameznih korakov v cevovodih za usposabljanje in sklepanje. Naslednji diagram prikazuje, kako različni skripti Python, neobdelani in obdelani podatki za usposabljanje, neobdelani in obdelani podatki o sklepanju, rezultati sklepanja in osnovne oznake resnic (če so na voljo za spremljanje kakovosti modela), artefakti modela, meritve vrednotenja usposabljanja in sklepanja (nadzor kakovosti modela), kot tudi osnovne vrednosti kakovosti podatkov in poročila o kršitvah (za spremljanje kakovosti podatkov) je mogoče organizirati znotraj vedra S3. Smer puščic v diagramu kaže, katere datoteke so vhodi ali izhodi iz ustreznih korakov v cevovodih SageMaker. Puščice so bile barvno označene glede na vrsto koraka cevovoda, da jih je lažje brati. Cevovod bo samodejno naložil skripte Python iz repozitorija GitLab in shranil izhodne datoteke ali artefakte modela iz vsakega koraka na ustrezni poti S3.
Podatkovni inženir je odgovoren za naslednje:
- Nalaganje označenih podatkov o vadbi na ustrezno pot v Amazon S3. To vključuje redno dodajanje novih podatkov o usposabljanju, da zagotovite, da imata cevovod usposabljanja in usposabljanje s cevovodom HPO dostop do nedavnih podatkov o usposabljanju za ponovno usposabljanje modela oziroma ponovno nastavitev.
- Nalaganje vhodnih podatkov za sklepanje na ustrezno pot v vedru S3 pred načrtovanim izvajanjem cevovoda sklepanja.
- Nalaganje osnovnih oznak resnice na ustrezno pot S3 za spremljanje kakovosti modela.
Podatkovni znanstvenik je odgovoren za naslednje:
- Priprava osnovnih oznak resnice in njihovo posredovanje skupini za podatkovni inženiring za nalaganje v Amazon S3.
- Prevajanje modelnih različic, usposobljenih z usposabljanjem s cevovodom HPO, skozi postopek pregleda podjetja in pridobitev potrebnih odobritev.
- Ročno odobritev ali zavrnitev na novo usposobljenih različic modelov v registru modelov.
- Odobritev proizvodnih vrat za sklepni cevovod in podpornih virov, ki bodo napredovali v proizvodnjo.
Vzorčna koda
V tem razdelku predstavljamo vzorčno kodo za operacije paketnega sklepanja z nastavitvijo enega računa, kot je prikazano v naslednjem diagramu arhitekture. Vzorčno kodo lahko najdete v GitHub repozitorij, in lahko služi kot izhodišče za serijsko sklepanje s spremljanjem modela in samodejnim prekvalifikacijo z uporabo vrat kakovosti, ki jih pogosto zahtevajo podjetja. Vzorčna koda se od ciljne arhitekture razlikuje na naslednje načine:
- Uporablja en sam račun AWS za gradnjo in uvajanje modela ML in podpornih virov. Nanašati se na Organizirajte svoje okolje AWS z uporabo več računov za navodila o nastavitvi več računov na AWS.
- Uporablja en sam cevovod GitLab CI/CD za gradnjo in uvajanje modela ML in podpornih virov.
- Ko je nova različica modela usposobljena in odobrena, se cevovod GitLab CI/CD ne sproži samodejno in ga mora odgovorni podatkovni znanstvenik ročno zagnati, da posodobi cevovod paketnega sklepanja SageMaker z najnovejšo odobreno različico modela.
- Podpira samo sprožilce, ki temeljijo na dogodkih S3, za izvajanje cevovodov za usposabljanje in sklepanje SageMaker.
Predpogoji
Pred uvedbo te rešitve morate imeti naslednje predpogoje:
- AWS račun
- Studio SageMaker
- Izvršilna vloga SageMaker z Amazon S3 za branje/pisanje in AWS Service Key Management (AWS KMS) dovoljenja za šifriranje/dešifriranje
- Vedro S3 za shranjevanje podatkov, skriptov in artefaktov modela
- Terraform različica 0.13.5 ali novejša
- GitLab z delujočim Docker runnerjem za zagon cevovodov
- AWS CLI
- jq
- unzip
- Python3 (Python 3.7 ali novejši) in naslednji paketi Python:
- boto3
- sagemaker
- pand
- pyyaml
Struktura skladišča
O GitHub repozitorij vsebuje naslednje imenike in datoteke:
/code/lambda_function/
– Ta imenik vsebuje datoteko Python za funkcijo Lambda, ki pripravlja in pošilja obvestila (prek Amazon SNS) o spremembah stanja korakov cevovodov SageMaker/data/
– Ta imenik vključuje datoteke z neobdelanimi podatki (podatki o usposabljanju, sklepanju in resnični podatki o osnovi)/env_files/
– Ta imenik vsebuje datoteko vhodnih spremenljivk Terraform/pipeline_scripts/
– Ta imenik vsebuje tri skripte Python za ustvarjanje in posodabljanje usposabljanja, sklepanja in usposabljanja s cevovodi HPO SageMaker ter konfiguracijske datoteke za določanje parametrov vsakega cevovoda/scripts/
– Ta imenik vsebuje dodatne skripte Python (kot sta predprocesiranje in vrednotenje), na katere se sklicuje usposabljanje, sklepanje in usposabljanje s cevovodi HPO.gitlab-ci.yml
– Ta datoteka določa konfiguracijo cevovoda GitLab CI/CD/events.tf
– Ta datoteka definira vire EventBridge/lambda.tf
– Ta datoteka definira funkcijo obveščanja Lambda in povezano AWS upravljanje identitete in dostopa (IAM) virov/main.tf
– Ta datoteka definira vire podatkov Terraform in lokalne spremenljivke/sns.tf
– Ta datoteka definira vire Amazon SNS/tags.json
– Ta datoteka JSON vam omogoča, da deklarirate pare ključ-vrednost oznake po meri in jih dodate svojim virom Terraform z uporabo lokalne spremenljivke/variables.tf
– Ta datoteka deklarira vse spremenljivke Terraform
Spremenljivke in konfiguracija
Naslednja tabela prikazuje spremenljivke, ki se uporabljajo za parametriranje te rešitve. Glejte na ./env_files/dev_env.tfvars
datoteko za več podrobnosti.
Ime | Opis |
bucket_name |
Vedro S3, ki se uporablja za shranjevanje podatkov, skriptov in artefaktov modela |
bucket_prefix |
Predpona S3 za projekt ML |
bucket_train_prefix |
Predpona S3 za podatke o usposabljanju |
bucket_inf_prefix |
Predpona S3 za podatke sklepanja |
notification_function_name |
Ime funkcije Lambda, ki pripravlja in pošilja obvestila o spremembah stanja korakov cevovodov SageMaker |
custom_notification_config |
Konfiguracija za prilagajanje obvestilnega sporočila za določene korake cevovoda SageMaker, ko je zaznan določen status izvajanja cevovoda |
email_recipient |
Seznam e-poštnih naslovov za prejemanje obvestil o spremembi stanja korakov cevovodov SageMaker |
pipeline_inf |
Ime cevovoda sklepanja SageMaker |
pipeline_train |
Ime cevovoda za usposabljanje SageMaker |
pipeline_trainwhpo |
Ime usposabljanja SageMaker s cevovodom HPO |
recreate_pipelines |
Če je nastavljeno na true , bodo trije obstoječi cevovodi SageMaker (usposabljanje, sklepanje, usposabljanje s HPO) izbrisani in ustvarjeni bodo novi, ko se zažene GitLab CI/CD |
model_package_group_name |
Ime skupine paketov modela |
accuracy_mse_threshold |
Največja vrednost MSE, preden se zahteva posodobitev modela |
role_arn |
Vloga IAM ARN vloge izvajanja cevovoda SageMaker |
kms_key |
KMS ključ ARN za šifriranje Amazon S3 in SageMaker |
subnet_id |
ID podomrežja za konfiguracijo omrežja SageMaker |
sg_id |
ID varnostne skupine za konfiguracijo omrežja SageMaker |
upload_training_data |
Če je nastavljeno na true , bodo podatki o usposabljanju naloženi v Amazon S3 in ta operacija nalaganja bo sprožila zagon cevovoda za usposabljanje |
upload_inference_data |
Če je nastavljeno na true , bodo podatki sklepanja naloženi v Amazon S3 in ta operacija nalaganja bo sprožila zagon cevovoda sklepanja |
user_id |
ID zaposlenega uporabnika SageMaker, ki je dodan kot oznaka virom SageMaker |
Uvedite rešitev
Izvedite naslednje korake za uvedbo rešitve v svojem računu AWS:
- Klonirajte repozitorij GitHub v svoj delovni imenik.
- Preglejte in spremenite konfiguracijo cevovoda GitLab CI/CD, da bo ustrezala vašemu okolju. Konfiguracija je določena v
./gitlab-ci.yml
Datoteka. - Glejte datoteko README, da posodobite splošne spremenljivke rešitve v
./env_files/dev_env.tfvars
mapa. Ta datoteka vsebuje spremenljivke za skripte Python in avtomatizacijo Terraform.- Preverite dodatne parametre SageMaker Pipelines, ki so definirani v datotekah YAML pod
./batch_scoring_pipeline/pipeline_scripts/
. Preglejte in po potrebi posodobite parametre.
- Preverite dodatne parametre SageMaker Pipelines, ki so definirani v datotekah YAML pod
- Preglejte skripte za ustvarjanje cevovoda SageMaker v
./pipeline_scripts/
kot tudi skripte, na katere se sklicujejo v./scripts/
mapo. Primeri skriptov v repo GitHub temeljijo na Nabor podatkov o ušesih. Če boste uporabili drug nabor podatkov, posodobite skripte, da bodo ustrezali vaši težavi. - Svoje podatkovne datoteke vstavite v
./data/
mapo po naslednjem dogovoru o poimenovanju. Če uporabljate nabor podatkov Abalone skupaj s podanimi vzorčnimi skripti, zagotovite, da so podatkovne datoteke brez glav, da podatki o usposabljanju vključujejo tako neodvisne kot ciljne spremenljivke z ohranjenim prvotnim vrstnim redom stolpcev, podatki o sklepanju vključujejo samo neodvisne spremenljivke in osnovno resnico datoteka vključuje samo ciljno spremenljivko.training-data.csv
inference-data.csv
ground-truth.csv
- Potrdite in potisnite kodo v repozitorij, da sprožite zagon cevovoda GitLab CI/CD (prvi zagon). Upoštevajte, da prvi zagon cevovoda ne bo uspel
pipeline
fazi, ker še ni odobrene različice modela za uporabo skripta cevovoda sklepanja. Preglejte dnevnik korakov in preverite imenovan nov cevovod SageMakerTrainingPipeline
je bil uspešno ustvarjen.
-
- Odprite uporabniški vmesnik SageMaker Studio, nato preglejte in zaženite cevovod usposabljanja.
- Po uspešnem zagonu cevovoda za usposabljanje odobrite registrirano različico modela v registru modelov, nato znova zaženite celoten cevovod GitLab CI/CD.
- Preglejte rezultat načrta Terraform v
build
stopnja. Odobrite priročnikapply
stopnji v cevovodu GitLab CI/CD, da nadaljujete s cevovodom in pooblastite Terraform za ustvarjanje virov za spremljanje in obveščanje v vašem računu AWS. - Nazadnje preglejte stanje izvajanja in izpis cevovodov SageMaker v uporabniškem vmesniku SageMaker Studio in preverite, ali so v vaši e-pošti sporočila z obvestili, kot je prikazano na naslednjem posnetku zaslona. Privzeto telo sporočila je v formatu JSON.
Cevovodi SageMaker
V tem razdelku opisujemo tri cevovode SageMaker v delovnem toku MLOps.
Cevovod za usposabljanje
Usposabljanje je sestavljeno iz naslednjih korakov:
- Korak predprocesiranja, vključno s transformacijo in kodiranjem funkcij
- Korak preverjanja kakovosti podatkov za ustvarjanje podatkovne statistike in izhodišča omejitev z uporabo podatkov za usposabljanje
- Trening korak
- Korak ocenjevanja usposabljanja
- Korak pogoja za preverjanje, ali usposobljeni model dosega vnaprej določen prag zmogljivosti
- Korak registracije modela za registracijo na novo usposobljenega modela v registru modelov, če usposobljeni model dosega zahtevani prag zmogljivosti
Oba skip_check_data_quality
in register_new_baseline_data_quality
parametri so nastavljeni na True
v načrtu usposabljanja. Ti parametri naročijo cevovodu, naj preskoči preverjanje kakovosti podatkov in samo ustvari in registrira novo statistiko podatkov ali osnovne črte omejitev z uporabo podatkov za usposabljanje. Naslednja slika prikazuje uspešno izvedbo cevovoda usposabljanja.
Cevovod paketnega sklepanja
Cevovod paketnega sklepanja je sestavljen iz naslednjih korakov:
- Ustvarjanje modela iz najnovejše odobrene različice modela v registru modelov
- Korak predprocesiranja, vključno s transformacijo in kodiranjem funkcij
- Korak paketnega sklepanja
- Korak predhodne obdelave preverjanja kakovosti podatkov, ki ustvari novo datoteko CSV, ki vsebuje vhodne podatke in napovedi modela, ki se uporabijo za preverjanje kakovosti podatkov
- Korak preverjanja kakovosti podatkov, ki preverja vhodne podatke glede na osnovno statistiko in omejitve, povezane z registriranim modelom
- Korak pogoja za preverjanje, ali so na voljo podatki o resnici na tleh. Če so na voljo podatki o resnični podlagi, bo izveden korak preverjanja kakovosti modela
- Korak izračuna kakovosti modela, ki izračuna zmogljivost modela na podlagi osnovnih oznak resničnosti
Oba skip_check_data_quality
in register_new_baseline_data_quality
parametri so nastavljeni na False
v sklepnem cevovodu. Ti parametri naročijo cevovodu, naj izvede preverjanje kakovosti podatkov z uporabo podatkovne statistike ali izhodišča omejitev, povezanih z registriranim modelom (supplied_baseline_statistics_data_quality
in supplied_baseline_constraints_data_quality
) in preskočite ustvarjanje ali registracijo novih statističnih podatkov in izhodišč omejitev med sklepanjem. Naslednja slika ponazarja izvajanje cevovoda za sklepanje paketov, pri katerem korak preverjanja kakovosti podatkov ni uspel zaradi slabe zmogljivosti modela na podatkih sklepanja. V tem posebnem primeru se bo usposabljanje s cevovodom HPO samodejno sprožilo za natančno nastavitev modela.
Usposabljanje s cevovodom HPO
Usposabljanje s cevovodom HPO je sestavljeno iz naslednjih korakov:
- Korak predprocesiranja (transformacija funkcij in kodiranje)
- Korak preverjanja kakovosti podatkov za ustvarjanje podatkovne statistike in izhodišča omejitev z uporabo podatkov za usposabljanje
- Korak nastavitve hiperparametrov
- Korak ocenjevanja usposabljanja
- Korak pogoja za preverjanje, ali usposobljeni model ustreza vnaprej določenemu pragu natančnosti
- Korak registracije modela, če najbolje usposobljeni model dosega zahtevani prag natančnosti
Oba skip_check_data_quality
in register_new_baseline_data_quality
parametri so nastavljeni na True
pri usposabljanju s HPO cevovodom. Naslednja slika prikazuje uspešno izvedbo usposabljanja s cevovodom HPO.
Čiščenje
Izvedite naslednje korake za čiščenje virov:
- Zaposlite
destroy
stopnji v cevovodu GitLab CI/CD za odstranitev vseh virov, ki jih zagotavlja Terraform. - Uporabite AWS CLI za Seznam in odstrani vse preostale cevovode, ki jih ustvarijo skripti Python.
- Po želji izbrišite druge vire AWS, kot je vedro S3 ali vloga IAM, ustvarjena zunaj cevovoda CI/CD.
zaključek
V tej objavi smo pokazali, kako lahko podjetja ustvarijo delovne tokove MLOps za svoja opravila paketnega sklepanja z uporabo Amazon SageMaker, Amazon EventBridge, AWS Lambda, Amazon SNS, HashiCorp Terraform in GitLab CI/CD. Predstavljeni potek dela avtomatizira spremljanje podatkov in modelov, ponovno usposabljanje modela, pa tudi paketne izvedbe opravil, različice kode in zagotavljanje infrastrukture. To lahko povzroči znatno zmanjšanje zapletenosti in stroškov vzdrževanja opravil serijskega sklepanja v proizvodnji. Za več informacij o podrobnostih izvedbe si oglejte GitHub repo.
O avtorjih
Hasan Shojaei je višji podatkovni znanstvenik pri AWS Professional Services, kjer strankam v različnih panogah, kot so šport, zavarovalništvo in finančne storitve, pomaga rešiti njihove poslovne izzive z uporabo velikih podatkov, strojnega učenja in tehnologij v oblaku. Pred to vlogo je Hasan vodil številne pobude za razvoj novih tehnik modeliranja, ki temeljijo na fiziki in podatkih, za vrhunska energetska podjetja. Zunaj dela je Hasan navdušen nad knjigami, pohodništvom, fotografijo in zgodovino.
Wenxin Liu je starejši arhitekt infrastrukture oblaka. Wenxin podjetniškim podjetjem svetuje, kako pospešiti uvedbo oblaka, in podpira njihove inovacije v oblaku. Je ljubitelj hišnih ljubljenčkov, navdušen je nad deskanjem na snegu in potovanjem.
Vivek Lakšmanan je inženir strojnega učenja pri Amazonu. Ima magisterij iz programskega inženiringa s specializacijo v podatkovni znanosti in več let izkušenj kot MLE. Vivek je navdušen nad uporabo najsodobnejših tehnologij in gradnjo rešitev AI/ML za stranke v oblaku. Navdušen je nad statistiko, NLP in razložljivostjo modelov v AI/ML. V prostem času rad igra kriket in se odpravi na izlete.
Andy Cracchiolo je arhitekt infrastrukture v oblaku. Andy je z več kot 15 leti dela v IT infrastrukturi uspešen in k rezultatom usmerjen IT strokovnjak. Poleg optimizacije IT infrastrukture, operacij in avtomatizacije ima Andy dokazane izkušnje pri analiziranju IT operacij, prepoznavanju nedoslednosti in izvajanju izboljšav procesov, ki povečujejo učinkovitost, zmanjšujejo stroške in povečujejo dobiček.
- Distribucija vsebine in PR s pomočjo SEO. Okrepite se še danes.
- PlatoData.Network Vertical Generative Ai. Opolnomočite se. Dostopite tukaj.
- PlatoAiStream. Web3 Intelligence. Razširjeno znanje. Dostopite tukaj.
- PlatoESG. Avtomobili/EV, Ogljik, CleanTech, Energija, Okolje, sončna energija, Ravnanje z odpadki. Dostopite tukaj.
- PlatoHealth. Obveščanje o biotehnologiji in kliničnih preskušanjih. Dostopite tukaj.
- ChartPrime. Izboljšajte svojo igro trgovanja s ChartPrime. Dostopite tukaj.
- BlockOffsets. Posodobitev okoljskega offset lastništva. Dostopite tukaj.
- vir: https://aws.amazon.com/blogs/machine-learning/mlops-for-batch-inference-with-model-monitoring-and-retraining-using-amazon-sagemaker-hashicorp-terraform-and-gitlab-ci-cd/
- :ima
- : je
- :ne
- :kje
- $GOR
- 100
- 125
- 13
- 15 let
- 15%
- 26%
- 29
- 500
- 7
- a
- O meni
- pospeši
- dostop
- doseženo
- Račun
- računi
- natančnost
- čez
- dejanska
- dodano
- dodajanje
- Poleg tega
- Dodatne
- Naslov
- Sprejetje
- proti
- AI / ML
- vsi
- omogoča
- skupaj
- Prav tako
- Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- analiziranje
- in
- in infrastrukturo
- kaj
- API
- uporaba
- Razvoj aplikacij
- Uporaba
- pristop
- primerno
- odobritev
- odobritve
- odobri
- odobren
- Arhitektura
- SE
- AS
- vidiki
- povezan
- At
- revidabilnost
- odobri
- avto
- avtomatizira
- Samodejno
- samodejno
- Avtomatizacija
- Na voljo
- AWS
- AWS Lambda
- Strokovne storitve AWS
- temeljijo
- Izhodišče
- BE
- ker
- bilo
- pred
- koristi
- BEST
- najboljše prakse
- Big
- Big Podatki
- svet
- telo
- knjige
- tako
- Branch
- Building
- zgrajena
- poslovni
- by
- izračuna
- izračun
- klic
- kliče
- CAN
- primeru
- Osrednji
- izzivi
- izziv
- spremenite
- Spremembe
- spreminjanje
- preveriti
- preverjanje
- Pregledi
- Razvrstitev
- Cloud
- sprejem v oblak
- oblačna infrastruktura
- Koda
- Stolpci
- Podjetja
- primerjavo
- dokončanje
- zapletenosti
- skladnost
- sestavljajo
- Koncept
- konfiguracija
- veznik
- omejitve
- Vsebuje
- neprekinjeno
- nadzor
- Nadzor
- Konvencija
- stroški
- bi
- ustvarjajo
- ustvaril
- ustvari
- Ustvarjanje
- Oblikovanje
- kriket
- po meri
- Stranke, ki so
- vrhunsko
- datum
- znanost o podatkih
- podatkovni znanstvenik
- Podatkov usmerjenih
- izjavi
- privzeto
- opredeljen
- Določa
- Stopnja
- dostava
- izkazati
- Dokazano
- razporedi
- razporejeni
- uvajanja
- opisati
- Oblikovanje
- Podatki
- Podrobnosti
- Zaznali
- Razvoj
- Razvoj
- drugačen
- smer
- neposredno
- imeniki
- Odkritelji
- razpravlja
- Lučki delavec
- ne
- Ne
- 2
- med
- vsak
- lažje
- učinkovito
- učinkovitosti
- učinkovite
- bodisi
- odpravo
- E-naslov
- Zaposlen
- energija
- inženir
- Inženiring
- izboljšave
- zagotovitev
- zagotoviti
- Podjetje
- podjetja
- Celotna
- okolje
- Napaka
- Ocena
- Event
- Primer
- presega
- razburjen
- izvedba
- obstoječih
- izkušnje
- f1
- FAIL
- ni uspelo
- ne uspe
- Feature
- Slika
- file
- datoteke
- finančna
- finančne storitve
- prva
- Všita
- po
- za
- format
- je pokazala,
- iz
- funkcija
- funkcije
- Gates
- splošno
- ustvarila
- ustvarjajo
- git
- GitHub
- Go
- dogaja
- več
- Igrišče
- skupina
- Navodila
- strani
- Ravnanje
- Imajo
- he
- Pomaga
- njegov
- zgodovina
- Kako
- Kako
- HTML
- http
- HTTPS
- Optimizacija hiperparametra
- ID
- identifikacijo
- identiteta
- if
- ponazarja
- Izvajanje
- izvajanja
- in
- vključujejo
- vključuje
- Vključno
- Povečajte
- Neodvisni
- neodvisno
- označuje
- individualna
- industrij
- Podatki
- Infrastruktura
- pobud
- novosti
- vhod
- vhodi
- zavarovanje
- integracija
- interaktivni
- v
- uvesti
- Vprašanja
- IT
- ITS
- Job
- Delovna mesta
- jpg
- json
- samo
- Ključne
- Oznake
- Zadnji
- vodi
- učenje
- Led
- življenski krog
- vrstica
- Seznam
- lokalna
- prijavi
- stroj
- strojno učenje
- Glavne
- vzdrževanje
- Znamka
- upravljanje
- upravljanje
- upravljanje
- Navodilo
- ročno
- označeno
- poveljnika
- Material
- Srečati
- ustreza
- Sporočilo
- sporočil
- meritev
- Meritve
- ML
- MLOps
- Model
- modeliranje
- modeli
- spremenite
- spremljanje
- več
- več
- Imenovan
- poimenovanje
- potrebno
- Nimate
- potrebna
- potrebe
- mreženje
- Novo
- na novo
- nlp
- št
- Obvestilo
- Obvestila
- roman
- predmet
- pridobi
- pridobitev
- of
- ponujanje
- Ponudbe
- pogosto
- on
- tiste
- samo
- Delovanje
- operacije
- optimizacija
- optimizacijo
- or
- Da
- organizacije
- Organizirano
- izvirno
- Ostalo
- izhod
- zunaj
- paket
- pakete
- parov
- parametri
- del
- zlasti
- vozovnice
- strastno
- pot
- Izvedite
- performance
- opravljeno
- fotografija
- plinovod
- Načrt
- načrtovano
- platon
- Platonova podatkovna inteligenca
- PlatoData
- igranje
- Točka
- slaba
- Prispevek
- vaje
- Napovedi
- Pripravlja
- predpogoji
- predstaviti
- predstavljeni
- Predhodna
- problem
- nadaljujte
- Postopek
- Predelano
- proizvodnja
- strokovni
- dobiček
- Promovirano
- predlagano
- dokazano
- če
- zagotavlja
- zagotavljanje
- Potegne
- Push
- Python
- kakovost
- Surovi
- Preberi
- reading
- prejme
- prejema
- nedavno
- zapis
- zmanjša
- zmanjšanje
- o
- Registracija
- registriranih
- registracijo
- registri
- registracija
- registra
- redno
- Preostalih
- ponovljivo
- Poročila
- Skladišče
- predstavlja
- obvezna
- Zahteve
- zahteva
- viri
- tisti,
- oziroma
- odgovorna
- Rezultati
- Nadaljuj
- za večkratno uporabo
- pregleda
- cesta
- vloga
- pravila
- Run
- runner
- tek
- deluje
- sagemaker
- Sklep SageMaker
- SageMaker cevovodi
- Prilagodljivost
- urnik
- razporejanje
- Znanost
- Znanstvenik
- rezultat
- skripte
- SDK
- Oddelek
- pošljite
- pošiljanja
- pošlje
- služijo
- služi
- Storitve
- nastavite
- nastavitev
- več
- deli
- shouldnt
- pokazale
- Razstave
- pomemben
- Enostavno
- sam
- Software
- inženiring programske opreme
- Rešitev
- rešitve
- SOLVE
- Viri
- Sourcing
- specifična
- določeno
- Šport
- Stage
- uprizoritev
- Začetek
- Začetek
- Država
- Statistika
- Status
- Korak
- Koraki
- shranjevanje
- trgovina
- shranjevanje
- Strategija
- strukturno
- studio
- uspešno
- Uspešno
- taka
- Suit
- Podpora
- Podpira
- miza
- TAG
- ob
- ciljna
- Naloga
- skupina
- tehnike
- Tehnologije
- Predloga
- Terraform
- kot
- da
- O
- njihove
- Njih
- POTEM
- Tukaj.
- s tem
- te
- jih
- ta
- 3
- Prag
- skozi
- čas
- do
- orodja
- vrh
- Teme
- sledenje
- evidenca
- usposobljeni
- usposabljanje
- Preoblikovanje
- pregleden
- Potovanje
- sprožijo
- sprožilo
- Resnica
- OBRAT
- dva
- tip
- tipičen
- ui
- pod
- poudarja
- Nadgradnja
- posodabljanje
- naložili
- Prenos
- uporaba
- Rabljeni
- uporabnik
- uporablja
- uporabo
- uporabiti
- uporablja
- vrednost
- spremenljivka
- preverjanje
- različica
- različice
- preko
- POVREDA
- opozorilo
- način..
- načini
- we
- web
- spletne storitve
- Dobro
- kdaj
- ali
- ki
- medtem
- WHO
- bo
- z
- v
- delo
- potek dela
- delovnih tokov
- deluje
- yaml
- let
- še
- Vi
- Vaša rutina za
- zefirnet