Che cos'è un progetto? SageMaker - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Che cos'è un progetto? SageMaker

SageMaker I progetti aiutano le organizzazioni a configurare e standardizzare ambienti di sviluppo per data scientist e sistemi CI/CD per ingegneri MLOps. I progetti aiutano anche le organizzazioni a configurare la gestione delle dipendenze e degli archivi di codice, la riproducibilità delle build e la condivisione degli artefatti.

È possibile effettuare il provisioning dei SageMaker progetti dal AWS Service Catalog utilizzando modelli SageMaker personalizzati o forniti. Per informazioni sul AWS Service Catalog, vedere What Is AWS Service Catalog. Con SageMaker Projects, gli ingegneri di MLops e gli amministratori dell'organizzazione possono definire i propri modelli o utilizzare SageMaker modelli forniti. I modelli SageMaker forniti avviano il flusso di lavoro ML con il controllo della versione del codice sorgente, pipeline ML automatizzate e un set di codice per avviare rapidamente l'iterazione sui casi d'uso del machine learning.

Quando dovresti usare un progetto? SageMaker

Sebbene i notebook siano utili per la creazione e la sperimentazione di modelli, un team di data scientist e ingegneri di machine learning che condividono il codice ha bisogno di un modo più scalabile per mantenere la coerenza del codice e un rigoroso controllo delle versioni.

Ogni organizzazione ha il proprio set di standard e pratiche che garantiscono sicurezza e governance per il proprio AWS ambiente. SageMaker fornisce una serie di modelli proprietari per le organizzazioni che desiderano iniziare rapidamente a utilizzare flussi di lavoro ML e CI/CD. I modelli includono progetti che utilizzano servizi AWS-native per CI/CD, come, e. AWS CodeBuild AWS CodePipeline AWS CodeCommit I modelli offrono anche la possibilità di creare progetti che utilizzano strumenti di terze parti, come Jenkins e. GitHub Per un elenco dei modelli di progetto disponibili SageMaker , vedereUtilizza i SageMaker modelli di progetto forniti.

Le organizzazioni spesso hanno bisogno di uno stretto controllo sulle risorse MLOps di cui effettuano il provisioning e la gestione. Tale responsabilità implica determinate attività, tra cui la configurazione dei ruoli e delle policy IAM, l'applicazione dei tag delle risorse, l'applicazione della crittografia e il disaccoppiamento delle risorse su più account. SageMaker I progetti possono supportare tutte queste attività attraverso offerte di modelli personalizzati in cui le organizzazioni utilizzano AWS CloudFormation modelli per definire le risorse necessarie per un flusso di lavoro ML. I data scientist possono scegliere un modello per avviare e preconfigurare il proprio flusso di lavoro ML. Questi modelli personalizzati vengono creati come prodotti Service Catalog ed è possibile eseguirne il provisioning nell'interfaccia utente di Studio o Studio Classic in Organization Templates. Il Service Catalog è un servizio che aiuta le organizzazioni a creare e gestire cataloghi di prodotti approvati per l'uso su AWS. Per ulteriori informazioni sulla creazione di modelli personalizzati, consulta Creare modelli di SageMaker progetto personalizzati — Best Practices.

SageMaker I progetti possono aiutarti a gestire i tuoi repository Git in modo da poter collaborare in modo più efficiente tra i team, garantire la coerenza del codice e supportare CI/CD. SageMaker I progetti possono aiutarti nelle seguenti attività:

  • Organizza tutte le entità del ciclo di vita ML in un unico progetto.

  • Stabilisci un approccio con un solo clic per configurare un'infrastruttura ML standard per l’addestramento e l'implementazione di modelli che incorpori le migliori pratiche.

  • Crea e condividi modelli per l'infrastruttura ML per soddisfare diversi casi d'uso.

  • Sfrutta i modelli predefiniti SageMaker forniti per iniziare rapidamente a concentrarti sulla creazione di modelli oppure crea modelli personalizzati con risorse e linee guida specifiche dell'organizzazione.

  • Esegui l'integrazione con gli strumenti di tua scelta estendendo i modelli di progetto. Per un esempio, consulta Creare un SageMaker progetto da integrare con e Pipelines. GitLab GitLab

  • Organizza tutte le entità del ciclo di vita ML in un unico progetto.

Cosa c'è in un SageMaker progetto?

I clienti dispongono della flessibilità necessaria per configurare i propri progetti con le risorse più adatte al loro caso d'uso. L'esempio seguente mostra la configurazione MLOps per un flusso di lavoro ML, inclusi l’addestramento e l'implementazione di modelli.

Un diagramma del flusso di lavoro ML per una pipeline che include le fasi di formazione e implementazione del modello.

Un tipico progetto con un modello SageMaker fornito potrebbe includere quanto segue:

  • Uno o più repository con codice di esempio per creare e distribuire soluzioni ML. Questi sono esempi funzionanti che puoi modificare in base alle tue esigenze. Il proprietario di questo codice può sfruttare i repository soggetti al controllo delle versioni per le proprie attività.

  • Una SageMaker pipeline che definisce i passaggi per la preparazione dei dati, la formazione, la valutazione e l'implementazione del modello, come illustrato nel diagramma seguente.

    Una SageMaker pipeline con fasi di preparazione dei dati, formazione, valutazione e implementazione del modello.
  • Una pipeline CodePipeline o Jenkins che esegue la SageMaker pipeline ogni volta che si archivia una nuova versione del codice. Per informazioni su CodePipeline, consulta What is. AWS CodePipeline Per informazioni su Jenkins, consulta la documentazione per l’utente di Jenkins.

  • Un gruppo di modelli che contiene le versioni del modello. Ogni volta che approvi la versione del modello risultante dall'esecuzione di una SageMaker pipeline, puoi distribuirla su un endpoint. SageMaker

Ogni SageMaker progetto ha un nome e un ID univoci che vengono applicati come tag a tutte SageMaker le AWS risorse create nel progetto. Con il nome e l'ID, è possibile visualizzare tutte le entità associate al progetto. Ciò include:

  • Pipeline

  • Modelli registrati

  • Modelli distribuiti (endpoint)

  • Set di dati

  • Prodotti del catalogo di servizio

  • CodePipeline e oleodotti Jenkins

  • CodeCommit e repository Git di terze parti

Devo creare un progetto per utilizzare SageMaker Pipeline?

No. SageMaker le pipeline sono entità autonome, proprio come i lavori di formazione, i lavori di elaborazione e altri SageMaker lavori. Puoi creare, aggiornare ed eseguire pipeline direttamente all'interno di un notebook utilizzando SageMaker Python SDK senza utilizzare un progetto. SageMaker

I progetti forniscono un livello aggiuntivo per aiutarti a organizzare il codice e adottare le migliori pratiche operative, necessarie per un sistema di qualità della produzione.