Koneoppimistoimintojen (MLOps) alustan rakentaminen nopeasti kehittyvässä tekoälyn (AI) ja koneoppimisen (ML) ympäristössä organisaatioille on olennaista, jotta datatieteiden kokeilun ja käyttöönoton välinen kuilu voidaan kaventaa saumattomasti ja samalla täyttää mallin suorituskykyä koskevat vaatimukset. turvallisuus ja vaatimustenmukaisuus.
Sääntely- ja vaatimustenmukaisuusvaatimusten täyttämiseksi tärkeimmät vaatimukset tällaisen alustan suunnittelussa ovat:
- Osoitetietojen ajautuminen
- Tarkkaile mallin suorituskykyä
- Helpottaa automaattista mallin uudelleenkoulutusta
- Tarjoa mallin hyväksymisprosessi
- Pidä mallit turvallisessa ympäristössä
Tässä viestissä näytämme, kuinka luodaan MLOps-kehys vastaamaan näihin tarpeisiin käyttämällä AWS-palvelujen ja kolmannen osapuolen työkalusarjojen yhdistelmää. Ratkaisu sisältää usean ympäristön asennuksen automaattisella mallin uudelleenkoulutuksella, eräpäätelmillä ja valvonnalla Amazon SageMaker -mallimonitori, mallin versiointi kanssa SageMaker-mallirekisterija CI/CD-liukuhihna, joka helpottaa ML-koodin ja putkien edistämistä eri ympäristöissä käyttämällä Amazon Sage Maker, Amazon EventBridge, Amazonin yksinkertainen ilmoituspalvelu (Amazon S3), HashiCorp Terraform, GitHubja Jenkins CI/CD. Rakennamme mallin ennustamaan mammografisen massaleesion vakavuutta (hyvänlaatuinen tai pahanlaatuinen) XGBoost-algoritmi käyttämällä julkisesti saatavilla olevia UCI Mammografia Mass tietojoukko ja ota se käyttöön MLOps-kehyksen avulla. Täydelliset ohjeet koodiineen ovat saatavilla osoitteessa GitHub-arkisto.
Ratkaisun yleiskatsaus
Seuraava arkkitehtuurikaavio näyttää yleiskatsauksen MLOps-kehyksestä seuraavilla avainkomponenteilla:
- Usean tilin strategia – Kaksi erilaista ympäristöä (kehittäjä ja prod) on asetettu kahdelle eri AWS-tilille noudattaen AWS Well-Architected parhaita käytäntöjä, ja kolmas tili on määritetty keskusmallirekisteriin:
- Kehittäjäympäristö – Missä an Amazon SageMaker Studio -verkkotunnus on perustettu mahdollistamaan mallin kehittäminen, mallikoulutus ja ML-putkien testaus (koulutus ja päättely), ennen kuin malli on valmis levitettäväksi korkeampiin ympäristöihin.
- Tuotantoympäristö – Missä ML-putkistot kehittäjiltä siirretään ensimmäiseksi vaiheeksi ja aikataulutetaan ja niitä seurataan ajan myötä.
- Keskitetty mallirekisteri - Amazon SageMaker -mallirekisteri on asetettu erilliselle AWS-tilille seuraamaan kehitys- ja tuotantoympäristöissä luotuja malliversioita.
- CI/CD ja lähteen ohjaus – ML-putkien käyttöönotto eri ympäristöissä hoidetaan Jenkinsin kanssa määritetyn CI/CD:n kautta sekä GitHubin kautta hoidettava versionhallinta. Vastaavaan ympäristöön yhdistetyt koodimuutokset git-haara käynnistävät CI/CD-työnkulun, joka tekee tarvittavat muutokset annettuun kohdeympäristöön.
- Eräennusteet malliseurannan kanssa – Päätelmäputki, joka on rakennettu Amazon SageMaker -putkistot toimii ajoitetusti ennusteiden luomiseksi sekä mallin seurannan kanssa SageMaker Model Monitorin avulla tietojen ajautumisen havaitsemiseen.
- Automaattinen uudelleenkoulutusmekanismi – SageMaker Pipelinesin avulla rakennettu koulutusputkisto käynnistyy aina, kun päättelyputkessa havaitaan tietojen ajautuminen. Kun malli on koulutettu, se rekisteröidään keskusmallirekisteriin mallin hyväksyjän hyväksyttäviksi. Kun päivitetty malliversio on hyväksytty, sitä käytetään ennusteiden luomiseen päättelyputken kautta.
- Infrastruktuuri koodina – Infrastruktuuri koodina (IaC), luotu käyttäen HashiCorp Terraform, tukee päättelyputken aikataulutusta EventBridgen avulla, junaputken laukaisua EventBridge-sääntö ja lähettää ilmoituksia käyttämällä Amazonin yksinkertainen ilmoituspalvelu (Amazon SNS) Aiheet.
MLOps-työnkulku sisältää seuraavat vaiheet:
- Käytä SageMaker Studio -verkkotunnusta kehitystilillä, kloonaa GitHub-arkisto, käy läpi mallin kehitysprosessi toimitetun mallimallin avulla ja luo juna- ja päätelmäputket.
- Suorita kehitystilillä oleva junaputkisto, joka luo malliartefaktit koulutetulle malliversiolle ja rekisteröi mallin SageMaker-mallirekisteriin keskitetylle mallirekisteritilille.
- Hyväksy malli SageMaker-mallirekisterissä keskitetyssä mallirekisteritilissä.
- Työnnä koodi (juna- ja päättelyputket sekä Terraform IaC -koodi luodaksesi EventBridge-aikataulun, EventBridge-säännön ja SNS-aiheen) GitHub-arkiston ominaisuushaaraan. Luo vetopyyntö koodin yhdistämiseksi GitHub-arkiston päähaaraan.
- Käynnistä Jenkinsin CI/CD-putki, joka on määritetty GitHub-arkiston kanssa. CI/CD-liukuhihna ottaa koodin käyttöön prod-tilillä juna- ja päättelyputkien luomiseksi sekä Terraform-koodin EventBridge-aikataulun, EventBridge-säännön ja SNS-aiheen luomiseksi.
- Päätelmäputkilinja on ajoitettu ajamaan päivittäin, kun taas junaputkilinja on asetettu toimimaan aina, kun päättelyputkesta havaitaan tietojen ajautumista.
- Ilmoitukset lähetetään SNS-aiheen kautta aina, kun joko junassa tai päättelyputkessa on vika.
Edellytykset
Tätä ratkaisua varten sinulla on oltava seuraavat edellytykset:
- Kolme AWS-tiliä (kehittäjä-, prod- ja keskusrekisteritilit)
- Jokaiselle kolmelle AWS-tilille on määritetty SageMaker Studio -verkkotunnus (katso Laivalla Amazon SageMaker Studioon tai katso video Aluksella nopeasti Amazon SageMaker Studioon asennusohjeet)
- Jenkins (käytämme Jenkins 2.401.1) järjestelmänvalvojan oikeuksilla asennettuna AWS:ään
- Terraform-versio 1.5.5 tai uudempi asennettuna Jenkins-palvelimelle
Tätä viestiä varten työskentelemme us-east-1
Alue ottaa ratkaisun käyttöön.
Tarjoa KMS-avaimia kehittäjä- ja tuotetileillä
Ensimmäinen askelemme on luoda AWS-avainhallintapalvelu (AWS KMS) avaimet kehittäjä- ja tuotetileillä.
Luo KMS-avain kehittäjätilille ja anna käyttöoikeus tuotantotilille
Suorita seuraavat vaiheet luodaksesi KMS-avain kehittäjätilille:
- Valitse AWS KMS -konsolissa Asiakkaan hallinnoimat avaimet navigointipaneelissa.
- Valita Luo avain.
- varten Avaintyyppivalitse Symmetrinen.
- varten Avaimen käyttövalitse Salaa ja pura salaus.
- Valita seuraava.
- Anna tuotantotilin numero antaaksesi tuotantotilille pääsyn kehittäjätilillä määritettyyn KMS-avaimeen. Tämä on pakollinen vaihe, koska mallin artefaktit salataan KMS-avaimella ensimmäisen kerran, kun mallia opetetaan kehittäjätilillä, ennen kuin ne kirjoitetaan mallirekisteritilin S3-säilöyn. Tuotantotili tarvitsee pääsyn KMS-avaimeen, jotta se voi purkaa mallin artefaktien salauksen ja suorittaa johtopäätösprosessin.
- Valita seuraava ja viimeistele avaimesi luominen.
Kun avain on valmis, sen pitäisi olla näkyvissä AWS KMS -konsolissa.
Luo KMS-avain tuotantotilille
Suorita samat vaiheet edellisessä osiossa luodaksesi asiakkaan hallinnoima KMS-avain tuotantotilille. Voit ohittaa vaiheen jakaaksesi KMS-avaimen toiselle tilille.
Määritä malliartefaktien S3-säilö keskitetylle mallirekisteritilille
Luo haluamasi S3-ämpäri merkkijonolla sagemaker
nimeämiskäytännössä osana segmentin nimeä keskitetyssä mallirekisteritilissä ja päivitä S3-säilössä oleva säilökäytäntö antamalla sekä dev- että prod-tililtä luvat lukea ja kirjoittaa malliartefakteja S3-säilöyn.
Seuraava koodi on S3-säilössä päivitettävä säilökäytäntö:
Määritä IAM-roolit AWS-tileissäsi
Seuraava vaihe on perustaminen AWS-henkilöllisyyden ja käyttöoikeuksien hallinta (IAM) roolit AWS-tileilläsi, joilla on käyttöoikeudet AWS Lambda, SageMaker ja Jenkins.
Lambdan suorittajan rooli
Perustaa Lambdan suoritusroolit dev- ja prod-tileillä, joita Lambda-toiminto käyttää osana SageMaker Pipelines Lambda-askel. Tämä vaihe suoritetaan päättelyliukuhihnasta viimeisimmän hyväksytyn mallin hakemiseksi, jonka avulla päätelmät luodaan. Luo IAM-rooleja dev- ja prod-tileihin nimeämiskäytännön mukaisesti arn:aws:iam::<account-id>:role/lambda-sagemaker-role
ja liitä mukaan seuraavat IAM-käytännöt:
- Käytäntö 1 – Luo sisäinen käytäntö nimeltä
cross-account-model-registry-access
, joka antaa pääsyn mallirekisteriin määritettyyn mallipakettiin keskustilillä: - Käytäntö 2 – Kiinnitä AmazonSageMakerFullAccess, joka on AWS-hallittu käytäntö joka antaa täyden pääsyn SageMakeriin. Se tarjoaa myös valitun pääsyn liittyviin palveluihin, kuten AWS-sovelluksen automaattinen skaalaus, Amazon S3, Amazonin elastisten säiliörekisteri (Amazon ECR) ja Amazon CloudWatch -lokit.
- Käytäntö 3 – Kiinnitä AWSLambda_FullAccess, joka on AWS-hallittu käytäntö, joka antaa täyden pääsyn Lambdaan, Lambda-konsolin ominaisuuksiin ja muihin liittyviin AWS-palveluihin.
- Käytäntö 4 – Käytä seuraavaa IAM-luottamuskäytäntöä IAM-roolissa:
SageMaker-suoritusrooli
Kehittäjä- ja prod-tileihin määritetyille SageMaker Studio -verkkotunnuksille tulee kuhunkin liittää suoritusrooli, joka löytyy Verkkotunnuksen asetukset -välilehti verkkotunnuksen tietosivulla, kuten seuraavassa kuvakaappauksessa näkyy. Tätä roolia käytetään koulutustöiden, käsittelytöiden ja muiden tehtävien suorittamiseen SageMaker Studio -verkkotunnuksessa.
Lisää seuraavat käytännöt SageMaker-suoritusrooliin molemmilla tileillä:
- Käytäntö 1 – Luo sisäinen käytäntö nimeltä
cross-account-model-artifacts-s3-bucket-access
, joka antaa pääsyn mallin keskusrekisteritilin S3-alueelle, joka tallentaa mallin artefaktit: - Käytäntö 2 – Luo sisäinen käytäntö nimeltä
cross-account-model-registry-access
, joka antaa pääsyn mallipakkaukseen mallirekisterissä keskitetyssä mallirekisteritilissä: - Käytäntö 3 – Luo sisäinen käytäntö nimeltä
kms-key-access-policy
, joka antaa pääsyn edellisessä vaiheessa luotuun KMS-avaimeen. Anna tilitunnus, jossa käytäntöä luodaan, ja kyseiselle tilille luotu KMS-avaintunnus. - Käytäntö 4 – Kiinnitä AmazonSageMakerFullAccess, joka on AWS-hallittu käytäntö joka antaa täyden pääsyn SageMakeriin ja valitse pääsyn niihin liittyviin palveluihin.
- Käytäntö 5 – Kiinnitä AWSLambda_FullAccess, joka on AWS-hallittu käytäntö, joka antaa täyden pääsyn Lambdaan, Lambda-konsolin ominaisuuksiin ja muihin liittyviin AWS-palveluihin.
- Käytäntö 6 – Kiinnitä CloudWatchEventsFullAccess, joka on AWS-hallittu käytäntö, joka antaa täyden pääsyn CloudWatch-tapahtumiin.
- Käytäntö 7 – Lisää seuraava IAM-luottamuskäytäntö SageMaker-suorituksen IAM-rooliin:
- Käytäntö 8 (erityisesti tuotetilin SageMaker-suoritusrooliin) – Luo sisäinen käytäntö nimeltä
cross-account-kms-key-access-policy
, joka antaa pääsyn kehittäjätilillä luotuun KMS-avaimeen. Tätä tarvitaan, jotta päättelyputki voi lukea mallin artefaktit, jotka on tallennettu keskitetylle mallirekisteritilille, jossa mallin artefaktit salataan kehittäjätilin KMS-avaimella, kun mallin ensimmäinen versio luodaan kehittäjätilistä.
Monien tilien Jenkinsin rooli
Määritä IAM-rooli nimeltä cross-account-jenkins-role
tuotetilillä, jonka Jenkins ottaa käyttöön ML-putkistot ja vastaavan infrastruktuurin tuotantotilille.
Lisää seuraavat hallitut IAM-käytännöt rooliin:
CloudWatchFullAccess
AmazonS3FullAccess
AmazonSNSFullAccess
AmazonSageMakerFullAccess
AmazonEventBridgeFullAccess
AWSLambda_FullAccess
Päivitä roolin luottamussuhde antaaksesi luvat Jenkins-palvelinta isännöivälle AWS-tilille:
Päivitä Jenkins-palvelimeen liittyvän IAM-roolin käyttöoikeudet
Olettaen, että Jenkins on määritetty AWS:lle, päivitä Jenkinsiin liittyvä IAM-rooli ja lisää seuraavat käytännöt, jotka antavat Jenkinsille oikeuden ottaa käyttöön resurssit tuotantotilillä:
- Käytäntö 1 – Luo seuraava sisäinen käytäntö nimeltä
assume-production-role-policy
: - Käytäntö 2 – Kiinnitä
CloudWatchFullAccess
hallinnoitu IAM-käytäntö.
Määritä mallipakettiryhmä keskitetyssä mallirekisteritilissä
Luo keskitetyn mallirekisteritilin SageMaker Studio -toimialueelta mallipakettiryhmä nimeltä mammo-severity-model-package
käyttämällä seuraavaa koodinpätkää (jotka voit käyttää Jupyter-muistikirjalla):
Määritä mallipaketin käyttöoikeus IAM-rooleille kehittäjä- ja tuotetileillä
Tarjoa pääsy dev- ja prod-tileihin luotuihin SageMaker-suoritusrooleihin, jotta voit rekisteröidä malliversioita mallipaketissa mammo-severity-model-package
keskitetyssä mallirekisterissä molemmilta tileiltä. Suorita mallirekisteritilin SageMaker Studio -toimialueelta seuraava koodi Jupyter-muistikirjassa:
Asenna Jenkins
Tässä osiossa määritämme Jenkinsin luomaan ML-liukuhihnat ja vastaavan Terraform-infrastruktuurin tuotetilille Jenkinsin CI/CD-liukuhihnan kautta.
- Luo CloudWatch-konsolissa lokiryhmä nimeltä
jenkins-log
tuotetilillä, jolle Jenkins työntää lokit CI/CD-liukuhihnasta. Lokiryhmä tulee luoda samalle alueelle, johon Jenkins-palvelin on määritetty. - Asenna seuraavat lisäosat Jenkins-palvelimellasi:
- Määritä AWS-tunnistetiedot Jenkinsissä käyttämällä tilien välistä IAM-roolia (
cross-account-jenkins-role
) tuotetilillä. - varten järjestelmän kokoonpano, valitse AWS.
- Anna aiemmin luomasi tunnistetiedot ja CloudWatch-lokiryhmä.
- Määritä GitHub-kirjautumistiedot Jenkinsissä.
- Luo uusi projekti Jenkinsissä.
- Anna projektin nimi ja valitse Putki.
- On general välilehti, valitse GitHub-projekti ja astu haarukka GitHub-arkisto URL.
- valita Tämä projekti on parametroitu.
- On Lisää parametri valikosta, valitse Merkkijonoparametri.
- varten Nimi, tulla sisään
prodAccount
. - varten Oletusarvo, anna tuotetilin tunnus.
- Alle Projektin lisäasetuksetVarten Määritelmävalitse Pipeline-skripti SCM:ltä.
- varten SCM, valitse mennä.
- varten Tietovaraston URL-osoite, syötä haarukka GitHub-arkisto URL.
- varten Valtakirja, anna Jenkinsiin tallennetut GitHub-kirjautumistiedot.
- enter
main
vuonna Oksat rakentaa osio, jonka perusteella CI/CD-liukuhihna laukaistaan. - varten Script Path, tulla sisään
Jenkinsfile
. - Valita Säästä.
Jenkins-putki pitäisi luoda ja näkyä kojelaudassasi.
Varaa S3-ämpärit, kerää ja valmistele tietoja
Suorita seuraavat vaiheet määrittääksesi S3-säihöt ja tiedot:
- Luo haluamasi S3-ämpäri merkkijonolla
sagemaker
nimeämiskäytännössä osana ryhmän nimeä sekä dev- että prod-tileillä datajoukkojen ja mallin artefaktien tallentamiseksi. - Aseta S3-säilö ylläpitämään Terraform-tilaa tuotantotilillä.
- Lataa ja tallenna julkisesti saatavilla UCI Mammografia Mass tietojoukko S3-säilöyn, jonka loit aiemmin kehittäjätilillä.
- Haarukka ja kloonaa GitHub-arkisto kehittäjätilin SageMaker Studio -verkkotunnuksessa. Repolla on seuraava kansiorakenne:
- /environments – Tuotantoympäristön määritysskripti
- /mlops-infra – Koodi AWS-palvelujen käyttöönottoon Terraform-koodilla
- /putket – Koodi SageMaker-putkistokomponenteille
- Jenkinsfile – Jenkinsin CI/CD-putken kautta käyttöön otettava komentosarja
- setup.py – Tarvitaan tarvittavien Python-moduulien asentamiseen ja run-pipeline-komennon luomiseen
- mammography-severity-modeling.ipynb – Mahdollistaa ML-työnkulun luomisen ja suorittamisen
- Luo kansio nimeltä data kloonatussa GitHub-arkistokansiossa ja tallenna kopio julkisesti saatavilla olevasta kansiosta UCI Mammografia Mass aineisto.
- Seuraa Jupyterin muistikirjaa
mammography-severity-modeling.ipynb
. - Suorita seuraava koodi muistikirjassa esikäsitelläksesi tietojoukon ja ladataksesi sen kehittäjätilin S3-säihöön:
Koodi luo seuraavat tietojoukot:
-
- data/ mammo-train-dataset-part1.csv – Käytetään mallin ensimmäisen version kouluttamiseen.
- data/ mammo-train-dataset-part2.csv – Käytetään mallin toisen version kouluttamiseen yhdessä mammo-train-dataset-part1.csv-tietojoukon kanssa.
- data/mammo-batch-dataset.csv – Käytetään johtopäätösten tekemiseen.
- data/mammo-batch-dataset-outliers.csv – Tuo tietojoukkoon poikkeavia, jotta päättelyputkisto epäonnistuu. Tämän avulla voimme testata mallia käynnistääksemme mallin automaattisen uudelleenkoulutuksen.
- Lataa tietojoukko
mammo-train-dataset-part1.csv
etuliitteen allamammography-severity-model/train-dataset
ja lataa tietojoukotmammo-batch-dataset.csv
jamammo-batch-dataset-outliers.csv
etuliitteellemammography-severity-model/batch-dataset
kehittäjätilillä luodusta S3-alueesta: - Lataa tietojoukot
mammo-train-dataset-part1.csv
jamammo-train-dataset-part2.csv
etuliitteen allamammography-severity-model/train-dataset
tuotetilillä Amazon S3 -konsolin kautta luotuun S3-ämpäriin. - Lataa tietojoukot
mammo-batch-dataset.csv
jamammo-batch-dataset-outliers.csv
etuliitteellemammography-severity-model/batch-dataset
tuotetilin S3-ämpäri.
Aja junaputkia
Alle <project-name>/pipelines/train
, voit nähdä seuraavat Python-skriptit:
- scripts/raw_preprocess.py – Integroituu SageMaker Processingiin ominaisuuksien suunnittelua varten
- scripts/evaluate_model.py – Mahdollistaa tässä tapauksessa mallimittauslaskennan
auc_score
- train_pipeline.py – Sisältää mallin koulutusputken koodin
Suorita seuraavat vaiheet:
- Lataa skriptit Amazon S3:een:
- Hanki junaputkien esimerkki:
- Lähetä junaputkisto ja aja se:
Seuraava kuva esittää koulutusputken onnistuneen ajon. Valmistelun viimeinen vaihe rekisteröi mallin keskitetylle mallirekisteritilille.
Hyväksy malli keskusmallirekisterissä
Kirjaudu sisään keskitetyn mallirekisterin tilille ja käytä SageMaker-mallirekisteriä SageMaker Studio -verkkotunnuksessa. Muuta malliversion tilaksi Hyväksytty.
Kun malli on hyväksytty, sen tila tulee muuttaa malliversiossa.
Suorita päättelyputki (valinnainen)
Tämä vaihe ei ole pakollinen, mutta voit silti suorittaa päättelyputken ennusteiden luomiseksi kehittäjätilillä.
Alle <project-name>/pipelines/inference
, voit nähdä seuraavat Python-skriptit:
- scripts/lambda_helper.py – Poimii viimeisimmän hyväksytyn malliversion keskusmallirekisteritililtä SageMaker Pipelines Lambda -vaiheen avulla
- inference_pipeline.py – Sisältää mallin päättelyputken koodin
Suorita seuraavat vaiheet:
- Lataa skripti S3-ämpäriin:
- Hanki päätelmäputken ilmentymä käyttämällä normaalia erätietojoukkoa:
- Lähetä päättelyputki ja suorita se:
Seuraava kuva näyttää onnistuneen päättelyputken ajon. Liukuhihnan viimeinen vaihe luo ennusteet ja tallentaa ne S3-alueeseen. Käytämme MonitorBatchTransformStep seurataksesi erämuunnostyön syötteitä. Jos poikkeavuuksia on, päättelyputki menee epäonnistuneeseen tilaan.
Suorita Jenkins-putki
- environment/
GitHub-arkistossa oleva kansio sisältää tuotetilin määrityskomentosarjan. Suorita seuraavat vaiheet käynnistääksesi Jenkins-putki:
- Päivitä asetusskripti
prod.tfvars.json
edellisissä vaiheissa luotujen resurssien perusteella: - Kun päivitys on tehty, työnnä koodi haarautuneeseen GitHub-tietovarastoon ja yhdistä koodi päähaaraan.
- Siirry Jenkins-käyttöliittymään ja valitse Rakenna parametreilla, ja käynnistää edellisissä vaiheissa luodun CI/CD-liukuhihnan.
Kun koonti on valmis ja onnistunut, voit kirjautua sisään prod-tilille ja nähdä SageMaker Studio -verkkotunnuksen harjoitus- ja päätelmäputket.
Lisäksi näet kolme EventBridge-sääntöä EventBridge-konsolissa tuotantotilillä:
- Ajoita päättelyputki
- Lähetä vikailmoitus junaputkesta
- Kun päättelyputki ei laukaise junaputkea, lähetä ilmoitus
Lopuksi näet SNS-ilmoitusaiheen Amazon SNS -konsolissa, joka lähettää ilmoituksia sähköpostitse. Saat sähköpostin, jossa sinua pyydetään vahvistamaan näiden ilmoitussähköpostien hyväksyminen.
Testaa päättelyputkistoa erätietojoukolla ilman poikkeavia arvoja
Testaaksemme, toimiiko päättelyputki odotetulla tavalla tuotetilillä, voimme kirjautua sisään tuotantotilille ja käynnistää päättelyputken käyttämällä erätietojoukkoa ilman poikkeavuuksia.
Suorita liukuhihna SageMaker Pipelines -konsolin kautta tuotetilin SageMaker Studio -verkkotunnuksessa, jossa transform_input
on tietojoukon S3-URI ilman poikkeamia (s3://<s3-bucket-in-prod-account>/mammography-severity-model/data/mammo-batch-dataset.csv
).
Päätelmäliukuhihna onnistuu ja kirjoittaa ennusteet takaisin S3-alueeseen.
Testaa päättelyputkistoa käyttämällä erätietojoukkoa, jossa on poikkeavia arvoja
Voit suorittaa päättelyputken käyttämällä erätietojoukkoa poikkeavuuksilla tarkistaaksesi, toimiiko automaattinen uudelleenkoulutusmekanismi odotetulla tavalla.
Suorita liukuhihna SageMaker Pipelines -konsolin kautta tuotetilin SageMaker Studio -verkkotunnuksessa, jossa transform_input
on tietojoukon S3-URI, jossa on poikkeavuuksia (s3://<s3-bucket-in-prod-account>/mammography-severity-model/data/mammo-batch-dataset-outliers.csv
).
Päätelmäputki epäonnistuu odotetusti, mikä laukaisee EventBridge-säännön, joka puolestaan laukaisee junaputken.
Hetken kuluttua sinun pitäisi nähdä uusi junaputkilinja SageMaker Pipelines -konsolissa, joka poimii kaksi eri junatietojoukkoa (mammo-train-dataset-part1.csv
ja mammo-train-dataset-part2.csv
) ladattu S3-ämpäriin mallin uudelleenopettamiseksi.
Näet myös ilmoituksen, joka lähetetään SNS-aiheen tilaamaasi sähköpostiin.
Jos haluat käyttää päivitettyä malliversiota, kirjaudu sisään keskitetyn mallirekisterin tilille ja hyväksy mallin versio, joka noudetaan seuraavan ajoitetun EventBridge-säännön kautta käynnistetyn päättelyputken ajon aikana.
Vaikka juna- ja päättelyputket käyttävät staattista tietojoukon URL-osoitetta, voit antaa tietojoukon URL-osoitteen välitettäväksi junalle ja päättelyputkeen dynaamisina muuttujina, jotta voit käyttää päivitettyjä tietojoukkoja mallin uudelleenkouluttamiseen ja ennusteiden luomiseen tosielämässä.
Puhdistaa
Vältä tulevia maksuja suorittamalla seuraavat vaiheet:
- Poista SageMaker Studio -verkkotunnus kaikista AWS-tileistä.
- Poista kaikki SageMakerin ulkopuolella luodut resurssit, mukaan lukien S3-ryhmät, IAM-roolit, EventBridge-säännöt ja SNS-aihe, jotka on määritetty Terraformin kautta tuotetilissä.
- Poista tilien välillä luodut SageMaker-putket käyttämällä AWS-komentoriviliitäntä (AWS CLI).
Yhteenveto
Organisaatioiden on usein mukauduttava koko yrityksen laajuisiin työkalusarjoihin mahdollistaakseen yhteistyön eri toiminnallisten alueiden ja tiimien välillä. Tämä yhteistyö varmistaa, että MLOps-alustasi voi mukautua muuttuviin liiketoiminnan tarpeisiin ja nopeuttaa ML:n käyttöönottoa eri tiimeissä. Tässä viestissä selitettiin, kuinka luodaan MLOps-kehys usean ympäristön asetuksissa mahdollistamaan automaattinen mallin uudelleenkoulutus, eräpäätelmät ja seuranta Amazon SageMaker Model Monitorin avulla, mallien versiointi SageMaker Model Registry -sovelluksella ja ML-koodin ja putkien edistäminen eri ympäristöissä CI/CD-putki. Esittelimme tämän ratkaisun AWS-palveluiden ja kolmannen osapuolen työkalusarjojen yhdistelmällä. Katso ohjeet tämän ratkaisun käyttöönotosta GitHub-arkisto. Voit myös laajentaa tätä ratkaisua tuomalla omat tietolähteesi ja mallinnuskehyksesi.
Tietoja Tekijät
Gayatri Ghanakota on vanhempi koneoppimisinsinööri, jolla on AWS-asiantuntijapalvelut. Hän on intohimoinen AI/ML-ratkaisujen kehittämiseen, käyttöönottoon ja selittämiseen eri aloilla. Ennen tätä roolia hän johti useita aloitteita tietotutkijana ja ML-insinöörinä rahoitus- ja vähittäiskaupan alan parhaiden globaalien yritysten kanssa. Hänellä on tietojenkäsittelytieteen maisterin tutkinto, joka on erikoistunut tietotieteeseen Coloradon yliopistosta Boulderista.
Sunita Koppar on vanhempi Data Lake -arkkitehti, jolla on AWS Professional Services. Hän on intohimoinen ratkaisemaan asiakkaiden kipupisteitä ison datan käsittelyssä ja tarjoamaan pitkäaikaisia skaalautuvia ratkaisuja. Ennen tätä roolia hän kehitti tuotteita Internet-, televiestintä- ja autoteollisuuden aloille ja on ollut AWS-asiakas. Hän on suorittanut maisterin tutkinnon datatieteessä Kalifornian yliopistosta Riversidesta.
Saswata Dash on DevOps-konsultti AWS-asiantuntijapalveluiden kanssa. Hän on työskennellyt asiakkaiden kanssa terveydenhuollon ja biotieteiden, ilmailun ja valmistuksen aloilla. Hän on intohimoinen kaikkeen automaatioon ja hänellä on kattava kokemus yritystason asiakasratkaisujen suunnittelusta ja rakentamisesta AWS:ssä. Työn ulkopuolella hän harjoittaa intohimoaan valokuvaamiseen ja auringonlaskujen näkemiseen.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoData.Network Vertical Generatiivinen Ai. Vahvista itseäsi. Pääsy tästä.
- PlatoAiStream. Web3 Intelligence. Tietoa laajennettu. Pääsy tästä.
- PlatoESG. hiili, CleanTech, energia, ympäristö, Aurinko, Jätehuolto. Pääsy tästä.
- PlatonHealth. Biotekniikan ja kliinisten kokeiden älykkyys. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/machine-learning/promote-pipelines-in-a-multi-environment-setup-using-amazon-sagemaker-model-registry-hashicorp-terraform-github-and-jenkins-ci-cd/
- :on
- :On
- :ei
- :missä
- $ YLÖS
- 1
- 10
- 100
- 12
- 13
- 14
- 16
- 17
- 19
- 23
- 27
- 31
- 320
- 7
- 8
- 9
- a
- Meistä
- kiihdyttää
- hyväksyminen
- pääsy
- Tili
- Tilit
- poikki
- Toiminta
- sopeuttaa
- lisätä
- osoite
- hallinnollinen
- Hyväksyminen
- Jälkeen
- ikä
- AI
- kohdista
- Kaikki
- sallia
- mahdollistaa
- pitkin
- Myös
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- an
- ja
- Toinen
- Kaikki
- Hakemus
- sopiva
- hyväksyä
- hyväksytty
- arkkitehtuuri
- OVAT
- alueet
- noin
- keinotekoinen
- tekoäly
- Tekoäly (AI)
- AS
- pyytäminen
- liittyvä
- olettaa
- liittää
- auto
- Automatisoitu
- automaattisesti
- Automaatio
- Automotive
- saatavissa
- ilmailu
- välttää
- AWS
- AWS asiakas
- AWS-asiantuntijapalvelut
- takaisin
- perustua
- perusta
- BE
- koska
- ollut
- ennen
- ovat
- PARAS
- parhaat käytännöt
- välillä
- Iso
- Big Data
- sekä
- Sivuliike
- siltana
- Tuominen
- rakentaa
- Rakentaminen
- rakennettu
- liiketoiminta
- mutta
- by
- laskeminen
- Kalifornia
- nimeltään
- CAN
- tapaus
- keskeinen
- muuttaa
- muuttunut
- Muutokset
- maksut
- tarkastaa
- valinta
- Valita
- koodi
- yhteistyö
- kerätä
- Colorado
- Sarake
- Pylväät
- KOM
- yhdistelmä
- täydellinen
- noudattaminen
- osat
- kattava
- tietokone
- Tietojenkäsittelyoppi
- ehto
- Konfigurointi
- Vahvistaa
- Console
- konsultti
- Kontti
- sisältää
- ohjaus
- Sopimus
- muuntaa
- vastaava
- luoda
- luotu
- Luominen
- Valtakirja
- Ylittää
- asiakas
- Asiakasratkaisut
- Asiakkaat
- päivittäin
- kojelauta
- tiedot
- Datajärvi
- tietojenkäsittely
- tietojen tutkija
- aineistot
- Pura
- oletusarvo
- Aste
- sijoittaa
- levityspinnalta
- käyttöönotto
- lauennut
- suunnittelu
- yksityiskohdat
- havaita
- havaittu
- dev
- kehitetty
- kehittämällä
- Kehitys
- DICT
- eri
- verkkotunnuksen
- verkkotunnuksia
- aikana
- dynaaminen
- kukin
- Aikaisemmin
- vaikutus
- myöskään
- sähköpostit
- mahdollistaa
- salattu
- insinööri
- varmistaa
- enter
- ympäristö
- ympäristöissä
- olennainen
- Tapahtumat
- kehittyvä
- teloitus
- odotettu
- experience
- selitti
- selitetään
- laajentaa
- helpottamaan
- FAIL
- Epäonnistui
- epäonnistuu
- Epäonnistuminen
- Ominaisuus
- Ominaisuudet
- harvat
- Kuva
- filee
- lopullinen
- taloudellinen
- viimeistely
- yritykset
- Etunimi
- ensimmäistä kertaa
- jälkeen
- varten
- löytyi
- Puitteet
- puitteet
- alkaen
- Täyttää
- koko
- toiminto
- toiminnallinen
- tulevaisuutta
- kuilu
- tuottaa
- syntyy
- synnyttää
- saada
- mennä
- GitHub
- Antaa
- tietty
- antaa
- Global
- Go
- Goes
- avustukset
- Ryhmä
- Olla
- terveydenhuollon
- hänen
- korkeampi
- pitää
- hotellit
- Miten
- Miten
- HTML
- http
- HTTPS
- ID
- Identiteetti
- if
- täytäntöönpanosta
- tuoda
- in
- sisältää
- Mukaan lukien
- indeksi
- Infrastruktuuri
- ensin
- aloitteita
- tuloa
- asentaa
- asennetaan
- esimerkki
- ohjeet
- integroi
- Älykkyys
- Internet
- tulee
- esitellä
- IT
- Job
- Työpaikat
- jpg
- json
- avain
- avaimet
- Merkki
- järvi
- Landschaft
- myöhemmin
- uusin
- oppiminen
- Led
- velkarahalla
- elämä
- Life Sciences
- linja
- log
- pitkän aikavälin
- kone
- koneoppiminen
- tärkein
- ylläpitää
- tehdä
- onnistui
- johto
- valmistus
- Marginaali
- Massa
- maisterin
- mekanismi
- kokous
- valikko
- mennä
- Metrics
- puuttuva
- ML
- MLOps
- malli
- mallintaminen
- mallit
- muokata
- Moduulit
- Moments
- monitori
- seurataan
- seuranta
- lisää
- moninkertainen
- nimi
- nimetty
- nimeäminen
- suunnistus
- Tarve
- tarvitaan
- tarpeet
- Uusi
- seuraava
- normaali
- muistikirja
- ilmoituksen
- ilmoitukset
- numero
- numpy
- of
- usein
- on
- ONE
- Operations
- or
- tilata
- organisaatioiden
- Muut
- ulos
- ulkopuolella
- yli
- yleiskatsaus
- oma
- paketti
- sivulla
- Kipu
- pandas
- lasi
- osa
- osat
- Hyväksytty
- intohimo
- intohimoinen
- Kuvio
- suorituskyky
- Oikeudet
- valokuvaus
- poimitaan
- poimii
- putki
- foorumi
- Platon
- Platonin tietotieto
- PlatonData
- pistettä
- politiikkaa
- politiikka
- Kirje
- käytännöt
- ennustaa
- Ennusteet
- Valmistella
- edellytyksiä
- edellinen
- Pääasiallinen
- Aikaisempi
- oikeudet
- prosessi
- käsittely
- tuotanto
- Tuotteemme
- ammatillinen
- projekti
- edistää
- Ylennetty
- edistäminen
- toimittaa
- mikäli
- tarjoaa
- tarjoamalla
- säännös
- julkisesti
- Vetää
- Jatka
- Työnnä
- Python
- nopeasti
- nopeasti
- raaka
- Lue
- valmis
- todellinen maailma
- alue
- ilmoittautua
- kirjattu
- rekisterit
- rekisterin
- sääntelyn
- liittyvä
- yhteys
- poistaa
- säilytyspaikka
- pyyntö
- tarvitaan
- vaatimukset
- resurssi
- Esittelymateriaalit
- vastaus
- vähittäiskauppa
- palata
- Jokiranta
- Rooli
- roolit
- juuri
- Sääntö
- säännöt
- ajaa
- toimii
- sagemaker
- SageMaker-putkistot
- sama
- Säästä
- tallennettu
- skaalautuva
- skenaario
- aikataulu
- suunniteltu
- aikataulutus
- tiede
- tieteet
- Tiedemies
- käsikirjoitus
- skriptejä
- saumattomasti
- Toinen
- Osa
- turvallinen
- turvallisuus
- nähdä
- lähettää
- lähettäminen
- lähettää
- lähetetty
- erillinen
- palvelin
- palvelu
- Palvelut
- setti
- settings
- setup
- Muoto
- Jaa:
- hän
- shouldnt
- näyttää
- malliesimerkki
- esitetty
- Näytä
- Yksinkertainen
- pätkä
- So
- ratkaisu
- Ratkaisumme
- Solving
- lähde
- Lähteet
- Tila
- erikoistunut
- erityinen
- jakaa
- Osavaltio
- Lausunto
- staattinen
- Tila
- Vaihe
- Askeleet
- Yhä
- verkkokaupasta
- tallennettu
- varastot
- jono
- rakenne
- studio
- onnistunut
- niin
- Tukee
- Kohde
- tiimit
- Telecom
- terraform
- testi
- Testaus
- että
- -
- Niitä
- sitten
- Siellä.
- Nämä
- asiat
- kolmas
- kolmannen osapuolen
- tätä
- kolmella
- Kautta
- aika
- että
- työkalusarjat
- ylin
- aihe
- raita
- Juna
- koulutettu
- koulutus
- Muuttaa
- laukaista
- laukeaa
- liipaisu
- totta
- Luottamus
- VUORO
- kaksi
- ui
- varten
- yliopisto
- University of California
- Päivitykset
- päivitetty
- ladattu
- URL
- us
- käyttää
- käytetty
- käyttämällä
- hyödyllisyys
- arvot
- eri
- versio
- versiot
- kautta
- Video
- näkyvä
- Katso
- we
- verkko
- verkkopalvelut
- kun
- aina kun
- taas
- joka
- vaikka
- tulee
- with
- sisällä
- ilman
- Referenssit
- työskenteli
- työnkulku
- työskentely
- toimii
- kirjoittaa
- kirjallinen
- Voit
- Sinun
- youtube
- zephyrnet