Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker

Pe măsură ce companiile adoptă din ce în ce mai mult învățarea automată (ML) pentru aplicațiile lor corporative principale, mai multe dintre deciziile lor de afaceri sunt influențate de modelele ML. Drept urmare, având un control al accesului simplificat și o transparență îmbunătățită în toate modelele dvs. de ML, este mai ușor să validați dacă modelele dvs. funcționează bine și să luați măsuri atunci când nu sunt.

În această postare, explorăm modul în care companiile pot îmbunătăți vizibilitatea asupra modelelor lor cu tablouri de bord centralizate și documentație detaliată a modelelor lor folosind două funcții noi: SageMaker Model Cards și SageMaker Model Dashboard. Ambele funcții sunt disponibile fără costuri suplimentare pentru clienții SageMaker.

Privire de ansamblu asupra modelului de guvernare

Guvernarea modelului este un cadru care oferă vizibilitate sistematică dezvoltării, validării și utilizării modelului. Guvernarea modelului este aplicabilă în fluxul de lucru ML end-to-end, începând de la identificarea cazului de utilizare ML până la monitorizarea continuă a unui model implementat prin alerte, rapoarte și tablouri de bord. Un cadru de guvernare a modelului bine implementat ar trebui să minimizeze numărul de interfețe necesare pentru a vizualiza, urmări și gestiona sarcinile ciclului de viață pentru a facilita monitorizarea ciclului de viață ML la scară.

Astăzi, organizațiile investesc expertiză tehnică semnificativă în construirea de instrumente pentru a automatiza porțiuni mari din fluxul de lucru de guvernanță și auditabilitate. De exemplu, constructorii de modele trebuie să înregistreze în mod proactiv specificațiile modelului, cum ar fi utilizarea intenționată pentru un model, evaluarea riscului și criteriile de performanță pe care ar trebui să se măsoare un model. În plus, ei trebuie să înregistreze observații asupra comportamentului modelului și să documenteze motivul pentru care au luat anumite decizii cheie, cum ar fi funcția obiectivă pentru care au optimizat modelul.

Este obișnuit ca companiile să folosească instrumente precum Excel sau e-mail pentru a captura și partaja astfel de informații despre model pentru a fi utilizate în aprobările pentru utilizare în producție. Dar, pe măsură ce amploarea dezvoltării ML crește, informațiile pot fi ușor pierdute sau deplasate, iar urmărirea acestor detalii devine rapid imposibilă. În plus, după implementarea acestor modele, este posibil să combinați date din diverse surse pentru a obține vizibilitate de la capăt la cap la toate modelele, punctele finale, istoricul de monitorizare și descendența dvs. Fără o astfel de vizualizare, puteți pierde cu ușurință evidența modelelor și este posibil să nu știți când trebuie să luați măsuri în privința lor. Această problemă este intensificată în industriile foarte reglementate, deoarece sunteți supus unor reglementări care vă cer să mențineți astfel de măsuri.

Pe măsură ce volumul de modele începe să crească, gestionarea instrumentelor personalizate poate deveni o provocare și oferă organizațiilor mai puțin timp pentru a se concentra pe nevoile principale ale afacerii. În secțiunile următoare, explorăm modul în care cardurile de model SageMaker și tabloul de bord model SageMaker vă pot ajuta să vă extindeți eforturile de guvernare.

Carduri de model SageMaker

Cardurile de model vă permit să standardizați modul în care sunt documentate modelele, obținând astfel vizibilitate asupra ciclului de viață al unui model, de la proiectare, construcție, instruire și evaluare. Cardurile de model sunt destinate să fie o singură sursă de adevăr pentru metadate de afaceri și tehnice despre model, care pot fi utilizate în mod fiabil în scopuri de auditare și documentare. Acestea oferă o fișă informativă a modelului care este importantă pentru guvernarea modelului.

Cardurile model permit utilizatorilor să creeze și să stocheze decizii, cum ar fi motivul pentru care a fost aleasă o funcție obiectivă pentru optimizare și detalii precum utilizarea prevăzută și evaluarea riscului. De asemenea, puteți să atașați și să revizuiți rezultatele evaluării și să notați observațiile pentru referințe viitoare.

Pentru modelele instruite pe SageMaker, cardurile Model pot descoperi și completa automat detalii precum jobul de antrenament, seturile de date de antrenament, artefactele modelului și mediul de inferență, accelerând astfel procesul de creare a cardurilor. Cu SDK-ul SageMaker Python, puteți actualiza fără probleme cardul Model cu valorile de evaluare.

Cardurile model oferă managerilor de risc de model, cercetătorilor de date și inginerilor ML capacitatea de a îndeplini următoarele sarcini:

  • Documentați cerințele modelului, cum ar fi evaluarea riscului, utilizarea prevăzută, limitările și performanța așteptată
  • Completați automat cardurile de model pentru modelele instruite SageMaker
  • Aduceți-vă propriile informații (BYOI) pentru modelele non-SageMaker
  • Încărcați și partajați rezultatele evaluării modelului și datelor
  • Definiți și capturați informații personalizate
  • Starea cardului Capture Model (schiță, în așteptare de revizuire sau aprobat pentru producție)
  • Accesați hub-ul cardului Model din Consola de administrare AWS
  • Creați, editați, vizualizați, exportați, clonați și ștergeți carduri model
  • Declanșați fluxurile de lucru folosind Amazon EventBridge integrare pentru evenimentele de modificare a stării cardului de model

Creați carduri model SageMaker folosind consola

Puteți crea cu ușurință carduri Model folosind consola SageMaker. Aici puteți vedea toate cardurile Model existente și puteți crea altele noi după cum este necesar.

Când creați un card de model, puteți documenta informații critice despre model, cum ar fi cine a construit modelul, de ce a fost dezvoltat, cum funcționează pentru evaluări independente și orice observații care trebuie luate în considerare înainte de a utiliza modelul pentru o aplicație de afaceri.

Pentru a crea un card Model pe consolă, parcurgeți următorii pași:

  1. Introduceți detaliile de prezentare a modelului.
  2. Introduceți detaliile de antrenament (completate automat dacă modelul a fost antrenat pe SageMaker).
  3. Încărcați rezultatele evaluării.
  4. Adăugați detalii suplimentare, cum ar fi recomandări și considerații etice.

După ce creați cardul Model, puteți alege o versiune pentru ao vizualiza.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Următoarea captură de ecran arată detaliile cardului nostru Model.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

De asemenea, puteți exporta cardul model pentru a fi partajat ca PDF.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Creați și explorați carduri de model SageMaker prin intermediul SDK-ului SageMaker Python

Interacțiunea cu cardurile Model nu se limitează la consolă. De asemenea, puteți utiliza SDK-ul SageMaker Python pentru a crea și explora carduri Model. SDK-ul SageMaker Python permite oamenilor de știință de date și inginerilor ML să interacționeze cu ușurință cu componentele SageMaker. Următoarele fragmente de cod prezintă procesul de creare a unui card Model utilizând funcționalitatea nou adăugată SageMaker Python SDK.

Asigurați-vă că aveți instalată cea mai recentă versiune a SDK-ului SageMaker Python:

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

Odată ce ați antrenat și implementat un model folosind SageMaker, puteți utiliza informațiile din modelul SageMaker și jobul de instruire pentru a completa automat informațiile în cardul Model.

Utilizând SDK-ul SageMaker Python și transmițând numele modelului SageMaker, putem colecta automat informații de bază despre model. Informații precum ARN-ul modelului SageMaker, mediul de antrenament și rezultatul modelului Serviciul Amazon de stocare simplă Locația (Amazon S3) este populată automat. Putem adăuga alte date despre model, cum ar fi descrierea, tipul problemei, tipul algoritmului, creatorul modelului și proprietarul. Vezi următorul cod:

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

De asemenea, putem colecta automat informații de bază despre instruire, cum ar fi ARN-ul locului de pregătire, mediul de formare și valorile de formare. Pot fi adăugate detalii suplimentare de antrenament, cum ar fi funcția obiectivului de antrenament și observațiile. Vezi următorul cod:

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

Dacă avem disponibile valori de evaluare, le putem adăuga și pe cardul Model:

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],
    )
]

De asemenea, putem adăuga informații suplimentare despre model care pot ajuta la guvernarea modelului:

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"},
)

După ce am furnizat toate detaliile de care avem nevoie, putem crea cardul Model folosind configurația anterioară:

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-ul SageMaker oferă, de asemenea, capacitatea de a actualiza, încărca, lista, exporta și șterge un card Model.

Pentru a afla mai multe despre cardurile model, consultați ghid pentru dezvoltatori și urmați acest exemplu de caiet pentru a începe.

Tabloul de bord model SageMaker

Tabloul de bord Model este un depozit centralizat al tuturor modelelor care au fost create în cont. Modelele sunt de obicei create prin antrenament pe SageMaker sau vă puteți aduce modelele instruite în altă parte pentru a fi găzduite pe SageMaker.

Tabloul de bord Model oferă o interfață unică pentru administratorii IT, managerii de risc de model sau liderii de afaceri pentru a vedea toate modelele implementate și modul în care acestea funcționează. Puteți vizualiza punctele finale, lucrările de transformare în loturi și lucrările de monitorizare pentru a obține informații despre performanța modelului. Organizațiile se pot scufunda în profunzime pentru a identifica modelele care au monitoare lipsă sau inactive și le pot adăuga folosind API-urile SageMaker pentru a se asigura că toate modelele sunt verificate pentru deviația datelor, deviația modelului, deviația de părtinire și deviația de atribuire a caracteristicilor.

Următoarea captură de ecran arată un exemplu de tablou de bord Model.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Tabloul de bord Model oferă o imagine de ansamblu asupra tuturor modelelor dvs., care este gradul de risc al acestora și cum funcționează acele modele în producție. Face acest lucru prin extragerea de informații din SageMaker. Informațiile de monitorizare a performanței sunt capturate prin Monitor de model Amazon SageMaker, și puteți vedea, de asemenea, informații despre modelele invocate pentru predicțiile lot prin joburile de transformare batch SageMaker. Sunt capturate informații despre descendență, cum ar fi modul în care a fost antrenat modelul, datele utilizate și altele, și sunt extrase și informațiile din cardurile de model.

Model Monitor monitorizează calitatea modelelor SageMaker utilizate în producție pentru inferența pe lot sau punctele finale în timp real. Puteți configura monitorizarea continuă sau monitoare programate prin intermediul API-urilor SageMaker și puteți edita setările de alertă prin tabloul de bord Model. Puteți seta alerte care vă anunță când există abateri în calitatea modelului. Detectarea timpurie și proactivă a acestor abateri vă permite să luați măsuri corective, cum ar fi reinstruirea modelelor, auditarea sistemelor din amonte sau remedierea problemelor de calitate fără a fi nevoie să monitorizați manual modelele sau să construiți instrumente suplimentare. Tabloul de bord Model vă oferă o perspectivă rapidă asupra modelelor care sunt monitorizate și a modului în care funcționează. Pentru mai multe informații despre Model Monitor, vizitați Monitorizați modelele pentru calitatea datelor și a modelului, părtinire și explicabilitate.

Când alegeți un model în tabloul de bord Model, puteți obține informații mai profunde asupra modelului, cum ar fi cardul Model (dacă există unul), descendența modelului, detalii despre punctul final în care a fost implementat modelul și programul de monitorizare pentru model.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Această vizualizare vă permite să creați un card Model dacă este necesar. Programul de monitorizare poate fi activat, dezactivat sau editat și prin tabloul de bord Model.

Pentru modelele care nu au un program de monitorizare, puteți configura acest lucru activând Model Monitor pentru punctul final în care a fost implementat modelul. Prin detaliile și starea alertei, veți fi notificat cu privire la modelele care afișează devierea datelor, deviația modelului, deviația de polarizare sau deviația caracteristicilor, în funcție de monitoarele pe care le configurați.

Să ne uităm la un exemplu de flux de lucru despre cum să configurați monitorizarea modelului. Pașii cheie ai acestui proces sunt:

  1. Capturați datele trimise către punctul final (sau sarcina de transformare în lot).
  2. Stabiliți o linie de referință (pentru fiecare dintre tipurile de monitorizare).
  3. Creați un program de monitorizare a modelului pentru a compara previziunile în timp real cu valoarea de referință pentru a raporta încălcări și a declanșa alerte.

Pe baza alertelor, puteți întreprinde acțiuni precum revenirea la o versiune anterioară a endpoint-ului sau reantrenarea modelului cu date noi. În timp ce faceți acest lucru, poate fi necesar să urmăriți modul în care a fost antrenat modelul, ceea ce se poate realiza prin vizualizarea descendenței modelului.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai. Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Tabloul de bord Model oferă un set bogat de informații cu privire la ecosistemul general al modelului dintr-un cont, în plus față de capacitatea de a explora detaliile specifice ale unui model. Pentru a afla mai multe despre tabloul de bord Model, consultați ghid pentru dezvoltatori.

Concluzie

Guvernarea modelului este complexă și implică adesea o mulțime de nevoi personalizate specifice unei organizații sau unei industrii. Acest lucru se poate baza pe cerințele de reglementare pe care trebuie să le respecte organizația dvs., pe tipurile de persoane prezente în organizație și pe tipurile de modele utilizate. Nu există o abordare unică pentru guvernanță și este important să avem la dispoziție instrumentele potrivite, astfel încât să poată fi pus în aplicare un proces de guvernanță robust.

Cu instrumentele de guvernare ML create special din SageMaker, organizațiile pot implementa mecanismele potrivite pentru a îmbunătăți controlul și vizibilitatea asupra proiectelor ML pentru cazurile lor de utilizare specifice. Încercați cardurile Model și tabloul de bord Model și lăsați-vă comentariile cu întrebări și feedback. Pentru a afla mai multe despre cardurile Model și tabloul de bord Model, consultați ghid pentru dezvoltatori.


Despre autori

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Kirit Thadaka este un arhitect de soluții ML care lucrează în echipa SageMaker Service SA. Înainte de a se alătura AWS, Kirit a lucrat în startup-uri AI în stadiu incipient, urmat de o perioadă de consultanță în diferite roluri în cercetarea AI, MLOps și conducere tehnică.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Marc Karp este arhitect ML cu echipa SageMaker Service. El se concentrează pe a ajuta clienții să proiecteze, să implementeze și să gestioneze sarcinile de lucru ML la scară. În timpul liber, îi place să călătorească și să exploreze locuri noi.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Raghu Ramesha este arhitect de soluții ML cu echipa Amazon SageMaker Service. El se concentrează pe a ajuta clienții să construiască, să implementeze și să migreze sarcinile de lucru de producție ML către SageMaker la scară. El este specializat în domeniile învățarea automată, AI și viziunea pe computer și deține o diplomă de master în Informatică de la UT Dallas. În timpul liber, îi place să călătorească și să fotografieze.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Ram Vittal este arhitect de soluții specializat în ML la AWS. Are peste 20 de ani de experiență în arhitectura și construirea de aplicații distribuite, hibride și cloud. El este pasionat de construirea de soluții sigure și scalabile de AI/ML și de date mari pentru a ajuta clienții întreprinderilor în călătoria lor de adoptare și optimizare a cloud-ului pentru a-și îmbunătăți rezultatele în afaceri. În timpul liber, îi place tenisul, fotografia și filmele de acțiune.

Îmbunătățiți guvernarea modelelor dvs. de învățare automată cu Amazon SageMaker PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Sahil Saini este arhitect de soluții ISV la Amazon Web Services. El lucrează cu echipele de produse și inginerie ale clienților strategici AWS pentru a-i ajuta cu soluții tehnologice folosind serviciile AWS pentru AI/ML, Containers, HPC și IoT. El a ajutat la crearea platformelor AI/ML pentru clienții întreprinderilor.

Timestamp-ul:

Mai mult de la Învățare automată AWS