Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps

Amazonski SageMaker avtopilot, storitev strojnega učenja z nizko kodo (ML), ki samodejno gradi, usposablja in prilagaja najboljše modele ML na podlagi tabelarnih podatkov, je zdaj integrirana z Amazonski cevovodi SageMaker, prva namensko zgrajena storitev neprekinjene integracije in neprekinjene dostave (CI/CD) za ML. To omogoča avtomatizacijo toka od konca do konca gradnje modelov ML z uporabo avtopilota in integracijo modelov v naslednje korake CI/CD.

Če želite zagnati poskus z avtopilotom znotraj Pipelines, morate do sedaj zgraditi potek dela za gradnjo modela s pisanjem integracijske kode po meri s Pipelines Lambda or Obravnavano koraki. Za več informacij glejte Premaknite modele Amazon SageMaker Autopilot ML iz eksperimentiranja v proizvodnjo z uporabo Amazon SageMaker Pipelines.

S podporo za avtopilot kot izvirnim korakom znotraj Pipelines lahko zdaj dodate korak samodejnega usposabljanja (AutoMLStep) v cevovodih in prikličite poskus avtopilota z Način usposabljanja za sestavljanje. Če na primer gradite potek dela za usposabljanje in vrednotenje ML za primer uporabe odkrivanja goljufij s cevovodi, lahko zdaj zaženete poskus avtopilota z uporabo koraka AutoML, ki samodejno zažene več poskusov, da poišče najboljši model v danem vhodnem nizu podatkov. . Ko je najboljši model ustvarjen z uporabo Modelni korak, je njegovo delovanje mogoče oceniti na podlagi testnih podatkov z uporabo Korak transformacije in Korak obdelave za ocenjevalni skript po meri znotraj cevovodov. Sčasoma lahko model registrirate v register modelov SageMaker z uporabo Modelni korak v kombinaciji z a Pogojni korak.

V tej objavi prikazujemo, kako ustvariti potek dela ML od konca do konca za usposabljanje in ovrednotenje modela ML, ki ga je ustvaril SageMaker, z uporabo na novo zagnanega koraka AutoML v Pipelines in ga registrirati v registru modelov SageMaker. Model ML z najboljšo zmogljivostjo je mogoče namestiti na končno točko SageMaker.

Pregled nabora podatkov

Uporabljamo javno dostopne Nabor podatkov o dohodku iz popisa odraslih 1994 UCI to predict if a person has an annual income of greater than $50,000 per year. This is a binary classification problem; the options for the income target variable are either 50K.

Nabor podatkov vsebuje 32,561 vrstic za usposabljanje in validacijo ter 16,281 vrstic za testiranje s po 15 stolpci. To vključuje demografske podatke o posameznikih in class kot ciljni stolpec, ki označuje dohodkovni razred.

Ime stolpca Opis
starost Neprekinjeno
delovni razred Private, Self-emp-not-inc, Self-emp-inc, Zvezna vlada, Lokalna vlada, Državna vlada, Brez plačila, Nikoli zaposlen
fnlwgt Neprekinjeno
Izobraževanje Bachelors, Some-colledge, 11th, HS-grad, Prof-school, Assoc-acdm, Assoc-voc, 9th, 7th-8th, 12th, Magisterij, 1st-4th, 10th, Doctorate, 5th-6th, Preschool
izobraževanje-št Neprekinjeno
zakonski status Poročen-civ-zakonec, Ločen, Nikoli poročen, Ločen, Vdovec, Poročen-zakonec-odsoten, Poročen-AF-zakonec
oseb Tehnična podpora, obrtniška popravila, druge storitve, prodaja, izvršni vodstveni delavci, strokovni delavci, upravljavci-čistilci, strojni pregledi, adm. Zaščitna služba, oborožene sile
Razmerje Žena, lastni otrok, mož, nečlan družine, drug sorodnik, neporočen
Dirka Beli, azijski-pacio-otočani, ameriško-indijanski-eskimi, drugi, črni
sex Moški, moški
kapitalski dobiček Neprekinjeno
kapitalska izguba Neprekinjeno
ure na teden Neprekinjeno
Domača država Združene države, Kambodža, Anglija, Portoriko, Kanada, Nemčija, oddaljene ZDA (Guam-USVI-itd), Indija, Japonska, Grčija, Jug, Kitajska, Kuba, Iran, Honduras, Filipini, Italija, Poljska, Jamajka , Vietnam, Mehika, Portugalska, Irska, Francija, Dominikanska republika, Laos, Ekvador, Tajvan, Haiti, Kolumbija, Madžarska, Gvatemala, Nikaragva, Škotska, Tajska, Jugoslavija, El-Salvador, Trinadad & Tobago, Peru, Hong, Nizozemska-Nizozemska
razred Income class, either 50K

Pregled rešitev

Cevovode uporabljamo za orkestriranje različnih koraki cevovoda potrebno za usposabljanje modela avtopilota. Ustvarjamo in vodimo Eksperiment z avtopilotom kot del koraka AutoML, kot je opisano v tej vadnici.

Za ta celostni proces usposabljanja za avtopilota so potrebni naslednji koraki:

  • Ustvarite in spremljajte delo za usposabljanje avtopilota z uporabo AutoMLStep.
  • Ustvarite model SageMaker z uporabo ModelStep. Ta korak pridobi najboljše metapodatke in artefakte modela, ki jih je Autopilot upodobil v prejšnjem koraku.
  • Ocenite model usposobljenega avtopilota na testnem naboru podatkov z uporabo TransformStep.
  • Primerjajte rezultate prejšnjega zagona TransformStep z uporabo dejanskih ciljnih oznak ProcessingStep.
  • Registrirajte model ML v Register modelov SageMaker uporabo ModelStep, če predhodno pridobljena metrika vrednotenja preseže vnaprej določen prag v ConditionStep.
  • Razmestite model ML kot končno točko SageMaker za namene testiranja.

Arhitektura

Spodnji diagram arhitekture ponazarja različne korake cevovoda, potrebne za pakiranje vseh korakov v ponovljivem, avtomatiziranem in razširljivem cevovodu za usposabljanje SageMaker Autopilot. Podatkovne datoteke se berejo iz vedra S3, koraki cevovoda pa se kličejo zaporedno.

Walkthrough

Ta objava vsebuje podrobno razlago korakov cevovoda. Pregledamo kodo in razpravljamo o komponentah vsakega koraka. Če želite uvesti rešitev, glejte primer zvezek, ki ponuja navodila po korakih za implementacijo delovnega toka Autopilot MLOps z uporabo cevovodov.

Predpogoji

Izpolnite naslednje predpogoje:

Ko je nabor podatkov pripravljen za uporabo, moramo nastaviti cevovode za vzpostavitev ponovljivega postopka za samodejno izdelavo in usposabljanje modelov ML z uporabo avtopilota. Uporabljamo SDK SageMaker za programsko definiranje, izvajanje in sledenje cevovodu usposabljanja ML od konca do konca.

Koraki cevovoda

V naslednjih razdelkih gremo skozi različne korake v cevovodu SageMaker, vključno z usposabljanjem AutoML, ustvarjanjem modela, paketnim sklepanjem, vrednotenjem in pogojno registracijo najboljšega modela. Naslednji diagram prikazuje celoten tok cevovoda.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Korak usposabljanja za AutoML

An Objekt AutoML se uporablja za definiranje izvajanja opravil za usposabljanje avtopilota in ga je mogoče dodati v cevovod SageMaker z uporabo AutoMLStep razreda, kot je prikazano v naslednji kodi. Določiti je treba način usposabljanja za združevanje, po potrebi pa je mogoče prilagoditi druge parametre. Na primer, namesto da dovolite, da opravilo AutoML samodejno sklepa ML vrsta problema in objektivna metrika, jih je mogoče trdo kodirati z navedbo problem_type in job_objective parametri, posredovani objektu AutoML.

automl = AutoML(
    role=execution_role,
    target_attribute_name=target_attribute_name,
    sagemaker_session=pipeline_session,
    total_job_runtime_in_seconds=max_automl_runtime,
    mode="ENSEMBLING",
)
train_args = automl.fit(
    inputs=[
        AutoMLInput(
            inputs=s3_train_val,
            target_attribute_name=target_attribute_name,
            channel_type="training",
        )
    ]
)
step_auto_ml_training = AutoMLStep(
    name="AutoMLTrainingStep",
    step_args=train_args,
)

Korak ustvarjanja modela

Korak AutoML poskrbi za generiranje različnih kandidatov za model ML, njihovo združevanje in pridobitev najboljšega modela ML. Artefakti modela in metapodatki se samodejno shranijo in jih je mogoče pridobiti s klicem na get_best_auto_ml_model() metodo v koraku usposabljanja AutoML. Te lahko nato uporabite za ustvarjanje modela SageMaker kot del koraka Model:

best_auto_ml_model = step_auto_ml_training.get_best_auto_ml_model(
    execution_role, sagemaker_session=pipeline_session
)
step_args_create_model = best_auto_ml_model.create(instance_type=instance_type)
step_create_model = ModelStep(name="ModelCreationStep", step_args=step_args_create_model)

Koraki paketnega preoblikovanja in vrednotenja

Mi uporabljamo Transformatorski objekt za paketno sklepanje na naboru testnih podatkov, ki se nato lahko uporabijo za namene vrednotenja. Izhodne napovedi se primerjajo z dejanskimi ali osnovnimi oznakami resnice z uporabo funkcije metrike Scikit-learn. Naše rezultate ocenjujemo na podlagi Ocena F1. Meritve zmogljivosti so shranjene v datoteko JSON, na katero se sklicujete pri registraciji modela v naslednjem koraku.

Pogojni koraki registracije

V tem koraku registriramo naš novi model avtopilota v register modelov SageMaker, če preseže vnaprej določen prag metrike vrednotenja.

Ustvarite in zaženite cevovod

Ko definiramo korake, jih združimo v cevovod SageMaker:

pipeline = Pipeline(
    name="AutoMLTrainingPipeline",
    parameters=[
        instance_count,
        instance_type,
        max_automl_runtime,
        model_approval_status,
        model_package_group_name,
        model_registration_metric_threshold,
        s3_bucket,
        target_attribute_name,
    ],
    steps=[
        step_auto_ml_training,
        step_create_model,
        step_batch_transform,
        step_evaluation,
        step_conditional_registration,
    ],
    sagemaker_session=pipeline_session,
)

Koraki se izvajajo v zaporednem vrstnem redu. Cevovod izvaja vse korake za opravilo AutoML z uporabo avtopilota in cevovodov za usposabljanje, vrednotenje modela in registracijo modela.

Novi model si lahko ogledate tako, da se pomaknete do registra modelov na konzoli Studio in odprete AutoMLModelPackageGroup. Izberite katero koli različico delovnega mesta za usposabljanje, da si ogledate objektivne meritve na Kakovost modela tab.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Poročilo o razložljivosti si lahko ogledate na Pojasnjevanje zavihek za razumevanje napovedi vašega modela.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Za ogled temeljnega preizkusa avtopilota za vse modele, ustvarjene v AutoMLStep, pojdite na AutoML strani in izberite ime delovnega mesta.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Namestite model

Ko smo ročno pregledali delovanje modela ML, lahko uvedemo naš novo ustvarjeni model na končno točko SageMaker. Za to lahko zaženemo celice v zvezku, ki ustvarijo končno točko modela z uporabo konfiguracije modela, shranjene v registru modela SageMaker.

Upoštevajte, da je ta skript v skupni rabi za predstavitvene namene, vendar je priporočljivo slediti robustnejšemu cevovodu CI/CD za produkcijsko uvajanje za sklepanje ML. Za več informacij glejte Gradnja, avtomatizacija, upravljanje in spreminjanje delovnih tokov ML z uporabo Amazon SageMaker Pipelines.

Povzetek

Ta objava opisuje pristop cevovoda ML, ki je enostaven za uporabo, za samodejno usposabljanje tabelarnih modelov ML (AutoML) z uporabo avtopilota, cevovodov in studia. AutoML izboljšuje učinkovitost izvajalcev ML in pospešuje pot od eksperimentiranja z ML do proizvodnje brez potrebe po obsežnem strokovnem znanju o ML. Opišemo ustrezne korake cevovoda, potrebne za ustvarjanje, vrednotenje in registracijo modela ML. Začnite tako, da preizkusite primer zvezek za usposabljanje in uvajanje lastnih modelov AutoML po meri.

Za več informacij o avtopilotu in cevovodih glejte Avtomatizirajte razvoj modela z Amazon SageMaker Autopilot in Amazonski cevovodi SageMaker.

Posebna zahvala vsem, ki so prispevali k lansiranju: Shenghua Yue, John He, Ao Guo, Xinlu Tu, Tian Qin, Yanda Hu, Zhankui Lu in Dewen Qi.


O avtorjih

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Janisha Anand je višji produktni vodja v skupini SageMaker Low/No Code ML, ki vključuje SageMaker Autopilot. Uživa v kavi, ostane aktivna in preživlja čas s svojo družino.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Marcelo Aberle je inženir ML pri AWS AI. On pomaga Amazon ML Solutions Lab stranke gradijo razširljive sisteme in ogrodja ML(-Ops). V prostem času uživa v pohodništvu in kolesarjenju po območju zaliva San Francisco.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Geremy Cohen je arhitekt rešitev z AWS, kjer strankam pomaga pri izdelavi vrhunskih rešitev v oblaku. V prostem času uživa v kratkih sprehodih po plaži, z družino raziskuje območje zaliva, popravlja stvari po hiši, lomi okoli hiše in žari na žaru.

Zaženite eksperimente Amazon SageMaker Autopilot neposredno iz Amazon SageMaker Pipelines za preprosto avtomatizacijo delovnih tokov MLOps PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Shenghua Yue je inženir za razvoj programske opreme pri Amazon SageMaker. Osredotoča se na izdelavo orodij in izdelkov ML za stranke. Zunaj službe uživa v naravi, jogi in pohodništvu.

Časovni žig:

Več od Strojno učenje AWS