Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker

Ker podjetja vedno bolj sprejemajo strojno učenje (ML) za svoje glavne poslovne aplikacije, na več njihovih poslovnih odločitev vplivajo modeli ML. Posledica tega je poenostavljen nadzor dostopa in izboljšana preglednost v vseh vaših modelih ML, kar olajša preverjanje, ali vaši modeli delujejo dobro, in ukrepanje, ko niso.

V tej objavi raziskujemo, kako lahko podjetja izboljšajo vidnost svojih modelov s centraliziranimi nadzornimi ploščami in podrobno dokumentacijo svojih modelov z uporabo dveh novih funkcij: modelnih kartic SageMaker in nadzorne plošče modela SageMaker. Obe funkciji sta strankam SageMaker na voljo brez doplačila.

Pregled modela upravljanja

Upravljanje modela je okvir, ki daje sistematičen vpogled v razvoj, validacijo in uporabo modela. Upravljanje modela je uporabno v celotnem delovnem toku ML od konca do konca, od prepoznavanja primera uporabe ML do stalnega spremljanja razporejenega modela prek opozoril, poročil in nadzornih plošč. Dobro implementiran okvir upravljanja modela bi moral čim bolj zmanjšati število vmesnikov, potrebnih za ogledovanje, sledenje in upravljanje nalog življenjskega cikla, da bi olajšali spremljanje življenjskega cikla ML v velikem obsegu.

Danes organizacije vlagajo veliko tehničnega znanja in izkušenj v izdelavo orodij za avtomatizacijo velikih delov njihovega vodenja in revizijskega poteka dela. Graditelji modelov morajo na primer proaktivno beležiti specifikacije modela, kot so predvidena uporaba modela, ocena tveganja in merila učinkovitosti, po katerih naj se model meri. Poleg tega morajo zabeležiti tudi opažanja o vedenju modela in dokumentirati razlog, zakaj so sprejeli določene ključne odločitve, kot je na primer funkcija cilja, na podlagi katere so optimizirali model.

Za podjetja je običajno, da uporabljajo orodja, kot sta Excel ali e-pošta, da zajamejo in delijo takšne podatke o modelu za uporabo v odobritvah za uporabo v proizvodnji. Ko pa se obseg razvoja strojnega pisanja povečuje, se lahko informacije zlahka izgubijo ali založijo, spremljanje teh podrobnosti pa hitro postane neizvedljivo. Poleg tega lahko po uvedbi teh modelov združite podatke iz različnih virov, da pridobite preglednost od konca do konca v vse svoje modele, končne točke, zgodovino spremljanja in poreklo. Brez takega pogleda lahko zlahka izgubite sled za svojimi modeli in se morda ne boste zavedali, kdaj morate na njih ukrepati. Ta težava je v močno reguliranih panogah še intenzivnejša, ker za vas veljajo predpisi, ki od vas zahtevajo, da ohranite takšne ukrepe.

Ko se obseg modelov začne povečevati, lahko upravljanje orodij po meri postane izziv in daje organizacijam manj časa za osredotočanje na osnovne poslovne potrebe. V naslednjih razdelkih raziskujemo, kako vam lahko kartice modela SageMaker in nadzorna plošča modela SageMaker pomagajo povečati vaša prizadevanja za upravljanje.

Modelne kartice SageMaker

Kartice modelov vam omogočajo, da standardizirate, kako so modeli dokumentirani, s čimer dosežete vpogled v življenjski cikel modela, od načrtovanja, gradnje, usposabljanja in vrednotenja. Kartice modela naj bi bile en sam vir resnice za poslovne in tehnične metapodatke o modelu, ki jih je mogoče zanesljivo uporabiti za namene revizije in dokumentacije. Zagotavljajo informativni list o modelu, ki je pomemben za upravljanje modela.

Modelne kartice omogočajo uporabnikom, da ustvarijo in shranijo odločitve, na primer zakaj je bila ciljna funkcija izbrana za optimizacijo, in podrobnosti, kot sta predvidena uporaba in ocena tveganja. Prav tako lahko priložite in pregledate rezultate ocenjevanja ter zapišete opažanja za prihodnjo uporabo.

Za modele, ki so usposobljeni za SageMaker, lahko kartice modelov odkrijejo in samodejno izpolnijo podrobnosti, kot so opravilo usposabljanja, nabori podatkov za usposabljanje, artefakti modela in okolje sklepanja, s čimer se pospeši postopek ustvarjanja kartic. S SDK-jem SageMaker Python lahko brezhibno posodobite kartico modela z meritvami vrednotenja.

Modelne kartice upravljavcem tveganja modelov, podatkovnim znanstvenikom in inženirjem ML omogočajo izvajanje naslednjih nalog:

  • Dokumentirajte zahteve modela, kot so ocena tveganja, predvidena uporaba, omejitve in pričakovana zmogljivost
  • Samodejno izpolni kartice modelov za modele, usposobljene za SageMaker
  • Prinesite svoje podatke (BYOI) za modele, ki niso SageMaker
  • Naložite in delite rezultate vrednotenja modela in podatkov
  • Določite in zajemite informacije po meri
  • Stanje kartice Capture Model (osnutek, čaka na pregled ali odobreno za proizvodnjo)
  • Dostopite do zvezdišča kartice Model iz Konzola za upravljanje AWS
  • Ustvarite, uredite, oglejte si, izvažajte, klonirajte in izbrišite kartice modelov
  • Sproži poteke dela z uporabo Amazon EventBridge integracija za dogodke spremembe stanja kartice modela

S konzolo ustvarite modelne kartice SageMaker

Z uporabo konzole SageMaker lahko preprosto ustvarite kartice modelov. Tukaj si lahko ogledate vse obstoječe kartice modelov in po potrebi ustvarite nove.

Ko ustvarjate kartico modela, lahko dokumentirate kritične informacije o modelu, na primer, kdo je zgradil model, zakaj je bil razvit, kako deluje za neodvisne ocene in vsa opažanja, ki jih je treba upoštevati pred uporabo modela za poslovno aplikacijo.

Če želite ustvariti kartico modela na konzoli, izvedite naslednje korake:

  1. Vnesite podrobnosti pregleda modela.
  2. Vnesite podrobnosti o usposabljanju (samodejno izpolnjeno, če je bil model učen na SageMakerju).
  3. Naloži rezultate ocenjevanja.
  4. Dodajte dodatne podrobnosti, kot so priporočila in etični vidiki.

Ko ustvarite kartico modela, lahko izberete različico za ogled.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Naslednji posnetek zaslona prikazuje podrobnosti naše kartice modela.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Kartico modela lahko tudi izvozite za skupno rabo kot PDF.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Ustvarite in raziščite modelne kartice SageMaker prek SDK-ja SageMaker Python

Interakcija s karticami modela ni omejena na konzolo. Za ustvarjanje in raziskovanje kartic modela lahko uporabite tudi SDK SageMaker Python. SDK SageMaker Python omogoča podatkovnim znanstvenikom in inženirjem ML preprosto interakcijo s komponentami SageMaker. Naslednji delčki kode prikazujejo postopek ustvarjanja kartice modela z uporabo na novo dodane funkcije SDK SageMaker Python.

Preverite, ali imate nameščeno najnovejšo različico SDK-ja SageMaker Python:

$ pip install --upgrade "sagemaker>=2"

Ko usposobite in razmestite model z uporabo SageMakerja, lahko uporabite informacije iz modela SageMaker in opravila usposabljanja za samodejno vnos informacij v kartico Model.

Z uporabo SDK-ja SageMaker Python in posredovanjem imena modela SageMaker lahko samodejno zbiramo osnovne informacije o modelu. Informacije, kot je ARN modela SageMaker, okolje za usposabljanje in izhod modela Preprosta storitev shranjevanja Amazon (Amazon S3) lokacija je samodejno poseljena. Dodamo lahko druga dejstva o modelu, kot so opis, tip problema, tip algoritma, ustvarjalec modela in lastnik. Oglejte si naslednjo kodo:

model_overview = ModelOverview.from_name(
    model_name=model_name,
    sagemaker_session=sagemaker_session,
    model_description="This is a simple binary classification model used for Model Card demo",
    problem_type="Binary Classification",
    algorithm_type="Logistic Regression",
    model_creator="DEMO-ModelCard",
    model_owner="DEMO-ModelCard",
)
print(model_overview.model_id) # Provides us with the SageMaker Model ARN
print(model_overview.inference_environment.container_image) # Provides us with the SageMaker inference container URI
print(model_overview.model_artifact) # Provides us with the S3 location of the model artifacts

Prav tako lahko samodejno zbiramo informacije o osnovnem usposabljanju, kot so ARN delovnega mesta za usposabljanje, okolje za usposabljanje in meritve usposabljanja. Dodate lahko dodatne podrobnosti usposabljanja, kot so ciljna funkcija usposabljanja in opazovanja. Oglejte si naslednjo kodo:

objective_function = ObjectiveFunction(
    function=Function(
        function=ObjectiveFunctionEnum.MINIMIZE,
        facet=FacetEnum.LOSS,
    ),
    notes="This is a example objective function.",
)
training_details = TrainingDetails.from_model_overview(
    model_overview=model_overview,
    sagemaker_session=sagemaker_session,
    objective_function=objective_function,
    training_observations="Additional training observations could be put here."
)

print(training_details.training_job_details.training_arn) # Provides us with the SageMaker Model ARN
print(training_details.training_job_details.training_environment.container_image) # Provides us with the SageMaker training container URI
print([{"name": i.name, "value": i.value} for i in training_details.training_job_details.training_metrics]) # Provides us with the SageMaker Training Job metrics

Če imamo na voljo meritve vrednotenja, jih lahko dodamo tudi na kartico modela:

my_metric_group = MetricGroup(
    name="binary classification metrics",
    metric_data=[Metric(name="accuracy", type=MetricTypeEnum.NUMBER, value=0.5)]
)
evaluation_details = [
    EvaluationJob(
        name="Example evaluation job",
        evaluation_observation="Evaluation observations.",
        datasets=["s3://path/to/evaluation/data"],
        metric_groups=[my_metric_group],
    )
]

Dodamo lahko tudi dodatne informacije o modelu, ki lahko pomagajo pri upravljanju modela:

intended_uses = IntendedUses(
    purpose_of_model="Test Model Card.",
    intended_uses="Not used except this test.",
    factors_affecting_model_efficiency="No.",
    risk_rating=RiskRatingEnum.LOW,
    explanations_for_risk_rating="Just an example.",
)
additional_information = AdditionalInformation(
    ethical_considerations="You model ethical consideration.",
    caveats_and_recommendations="Your model's caveats and recommendations.",
    custom_details={"custom details1": "details value"},
)

Ko smo zagotovili vse podrobnosti, ki jih potrebujemo, lahko ustvarimo kartico modela s prejšnjo konfiguracijo:

model_card_name = "sample-notebook-model-card"
my_card = ModelCard(
    name=model_card_name,
    status=ModelCardStatusEnum.DRAFT,
    model_overview=model_overview,
    training_details=training_details,
    intended_uses=intended_uses,
    evaluation_details=evaluation_details,
    additional_information=additional_information,
    sagemaker_session=sagemaker_session,
)
my_card.create()

SDK SageMaker omogoča tudi posodobitev, nalaganje, seznam, izvoz in brisanje kartice modela.

Če želite izvedeti več o modelnih karticah, glejte vodnik za razvijalce in sledite ta primer zvezka za začetek.

Nadzorna plošča modela SageMaker

Nadzorna plošča modela je centralizirano skladišče vseh modelov, ki so bili ustvarjeni v računu. Modeli so običajno ustvarjeni z usposabljanjem na SageMakerju ali pa svoje modele, ki so bili usposobljeni drugje, prinesete na SageMaker.

Nadzorna plošča modela ponuja enoten vmesnik za skrbnike IT, upravljavce tveganj modela ali vodje podjetij za ogled vseh razporejenih modelov in njihovega delovanja. Ogledate si lahko svoje končne točke, opravila paketnega preoblikovanja in opravila spremljanja, da dobite vpogled v zmogljivost modela. Organizacije se lahko poglobijo, da ugotovijo, pri katerih modelih manjkajo ali so neaktivni monitorji, in jih dodajo s pomočjo API-jev SageMaker, da zagotovijo, da se vsi modeli preverjajo za premik podatkov, zamik modela, zamik pristranskosti in zamik pri dodeljevanju funkcij.

Naslednji posnetek zaslona prikazuje primer nadzorne plošče modela.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Nadzorna plošča modela ponuja pregled vseh vaših modelov, kakšna je njihova ocena tveganja in kako ti modeli delujejo v proizvodnji. To naredi s črpanjem informacij iz vsega SageMakerja. Informacije o spremljanju delovanja so zajete prek Amazonski model monitorja SageMaker, prav tako pa si lahko ogledate informacije o modelih, priklicanih za paketne napovedi prek opravil paketnega preoblikovanja SageMaker. Zajamejo se informacije o poreklu, na primer o tem, kako je bil model usposobljen, uporabljeni podatki in drugo, prav tako pa se črpajo informacije s kartic modela.

Model Monitor spremlja kakovost modelov SageMaker, ki se uporabljajo v proizvodnji za serijsko sklepanje ali končne točke v realnem času. Prek API-jev SageMaker lahko nastavite stalno spremljanje ali načrtovane nadzornike in uredite nastavitve opozoril prek nadzorne plošče modela. Nastavite lahko opozorila, ki vas obvestijo, ko pride do odstopanj v kakovosti modela. Zgodnje in proaktivno odkrivanje teh odstopanj vam omogoča, da sprejmete popravne ukrepe, kot so preusposabljanje modelov, revizija predhodnih sistemov ali odpravljanje težav s kakovostjo, ne da bi morali ročno spremljati modele ali graditi dodatna orodja. Nadzorna plošča modela vam omogoča hiter vpogled v to, kateri modeli se spremljajo in kako delujejo. Za več informacij o model monitorju obiščite Spremljajte modele za podatke in kakovost modela, pristranskost in razložljivost.

Ko izberete model na nadzorni plošči modela, lahko dobite globlji vpogled v model, kot je kartica modela (če obstaja), linija modela, podrobnosti o končni točki, v katero je bil model razporejen, in urnik spremljanja za model.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Ta pogled vam omogoča, da po potrebi ustvarite kartico modela. Razpored spremljanja je mogoče aktivirati, deaktivirati ali urejati tudi prek nadzorne plošče modela.

Za modele, ki nimajo urnika spremljanja, lahko to nastavite tako, da omogočite Nadzornik modela za končno točko, v katero je bil model razporejen. Preko podrobnosti in statusa opozorila boste obveščeni o modelih, ki prikazujejo zamik podatkov, zamik modela, zamik pristranskosti ali zamik funkcij, odvisno od tega, katere monitorje ste nastavili.

Oglejmo si primer poteka dela, kako nastaviti spremljanje modela. Ključni koraki tega postopka so:

  1. Zajem podatkov, poslanih na končno točko (ali opravilo paketnega preoblikovanja).
  2. Vzpostavite izhodišče (za vsako od vrst spremljanja).
  3. Ustvarite urnik za spremljanje modela, da primerjate napovedi v živo z izhodiščem, da poročate o kršitvah in sprožite opozorila.

Na podlagi opozoril lahko izvedete dejanja, kot je povrnitev končne točke na prejšnjo različico ali ponovno usposabljanje modela z novimi podatki. Pri tem bo morda treba izslediti, kako je bil model usposobljen, kar je mogoče storiti z vizualizacijo linije modela.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai. Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Nadzorna plošča modela ponuja bogat nabor informacij v zvezi s celotnim ekosistemom modela v računu, poleg možnosti vrtanja v specifične podrobnosti modela. Če želite izvedeti več o nadzorni plošči modela, glejte vodnik za razvijalce.

zaključek

Upravljanje modela je zapleteno in pogosto vključuje veliko prilagojenih potreb, specifičnih za organizacijo ali panogo. To bi lahko temeljilo na regulativnih zahtevah, ki jih mora izpolnjevati vaša organizacija, vrstah oseb, ki so prisotne v organizaciji, in vrstah modelov, ki se uporabljajo. Pri upravljanju ni enotnega pristopa, ki bi ustrezal vsem, zato je pomembno, da imamo na voljo prava orodja, da lahko vzpostavimo trden proces upravljanja.

Z namensko izdelanimi orodji za upravljanje ML v SageMakerju lahko organizacije implementirajo prave mehanizme za izboljšanje nadzora in preglednosti nad projekti ML za svoje specifične primere uporabe. Preizkusite kartice modela in nadzorno ploščo modela ter pustite svoje komentarje z vprašanji in povratnimi informacijami. Če želite izvedeti več o karticah modela in nadzorni plošči modela, glejte vodnik za razvijalce.


O avtorjih

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Kirit Thadaka je arhitekt rešitev ML, ki dela v ekipi SageMaker Service SA. Preden se je pridružil AWS, je Kirit delal v zagonskih podjetjih AI, čemur je sledilo nekaj časa svetovanja v različnih vlogah pri raziskavah AI, MLOps in tehničnem vodenju.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Marc Karp je ML arhitekt pri ekipi SageMaker Service. Osredotoča se na pomoč strankam pri načrtovanju, uvajanju in upravljanju delovnih obremenitev ML v velikem obsegu. V prostem času rad potuje in raziskuje nove kraje.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Raghu Ramesha je arhitekt rešitev ML pri ekipi Amazon SageMaker Service. Osredotoča se na pomoč strankam pri izgradnji, uvajanju in selitvi proizvodnih delovnih obremenitev ML na SageMaker v velikem obsegu. Specializiran je za področje strojnega učenja, umetne inteligence in računalniškega vida ter ima magisterij iz računalništva na UT Dallas. V prostem času rada potuje in fotografira.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Ram Vittal je specialist za rešitve ML pri AWS. Ima več kot 20 let izkušenj z arhitekturo in gradnjo porazdeljenih, hibridnih in oblačnih aplikacij. Navdušen je nad gradnjo varnih in razširljivih rešitev AI/ML in velikih podatkovnih rešitev, da bi podjetniškim strankam pomagal pri sprejemanju oblaka in optimizaciji za izboljšanje njihovih poslovnih rezultatov. V prostem času se ukvarja s tenisom, fotografijo in akcijskimi filmi.

Izboljšajte upravljanje svojih modelov strojnega učenja z Amazon SageMaker PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Sahil Saini je arhitekt rešitev ISV pri Amazon Web Services. Sodeluje z izdelki in inženirskimi skupinami strateških strank AWS, da jim pomaga pri tehnoloških rešitvah z uporabo storitev AWS za AI/ML, kontejnerje, HPC in IoT. Pomagal je vzpostaviti platforme AI/ML za poslovne stranke.

Časovni žig:

Več od Strojno učenje AWS