Fase 6. Espandi la pipeline - AWS Guida prescrittiva

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à.

Fase 6. Espandi la pipeline

Questa guida spiega come iniziare a creare pipeline ML AWS rapidamente, con un'architettura concreta. Esistono altre considerazioni per la maturazione della pipeline, come la gestione dei metadati, il tracciamento degli esperimenti e il monitoraggio. Si tratta di argomenti importanti che non rientrano nell'ambito di questa guida. Nelle sezioni seguenti viene illustrato un altro aspetto della gestione delle pipeline, ovvero l'automazione delle pipeline.

Diversi livelli di automazione

Sebbene sia possibile configurare manualmente una pipeline di formazione nella console di SageMaker intelligenza artificiale, in pratica consigliamo di ridurre al minimo i punti di contatto manuali nell'implementazione delle pipeline di formazione ML per garantire che i modelli ML vengano implementati in modo coerente e ripetuto. A seconda delle esigenze e dei problemi aziendali da risolvere, è possibile determinare e implementare una strategia di implementazione su tre livelli: semiautomatizzata, completamente automatizzata e completamente gestita.

  • Semiautomatico: per impostazione predefinita, i passaggi descritti nella sezione precedente seguono un approccio semiautomatico, poiché implementano la pipeline di formazione e inferenza utilizzando modelli. AWS CloudFormation Ciò contribuisce a garantire la riproducibilità della pipeline e consente di modificarla e aggiornarla facilmente.

  • Completamente automatizzato: un'opzione più avanzata consiste nell'utilizzare l'integrazione continua e l'implementazione continua (CI/CD) to the development, staging, and production environments. Incorporating CI/CDle pratiche di implementazione della pipeline di formazione possono garantire che l'automazione includa la tracciabilità e i parametri di qualità).

  • Completamente gestito: in definitiva, è possibile sviluppare un sistema completamente gestito in modo da poter implementare una pipeline di formazione ML con una serie di manifesti semplici e il sistema può configurare e coordinare automaticamente i servizi richiesti. AWS

In questa guida, abbiamo scelto di presentare un'architettura concreta. Tuttavia, ci sono tecnologie alternative che puoi prendere in considerazione. Le due sezioni successive illustrano alcune scelte alternative per la piattaforma e il motore di orchestrazione.

Piattaforme diverse per carichi di lavoro ML

Amazon SageMaker AI è il servizio AWS gestito per la formazione e la gestione di modelli di machine learning. Molti utenti apprezzano la sua vasta gamma di funzionalità integrate e le numerose opzioni che offre per l'esecuzione di carichi di lavoro ML. SageMaker L'intelligenza artificiale è particolarmente utile se hai appena iniziato a implementare il machine learning nel cloud. Le caratteristiche principali dell' SageMaker IA includono:

  • Tracciabilità integrata (inclusi etichettatura, formazione, tracciamento dei modelli, ottimizzazione e inferenza).

  • Opzioni integrate con un solo clic per l'addestramento e l'inferenza con un'esperienza minima in Python e ML.

  • Ottimizzazione avanzata degli iperparametri.

  • Support per tutti i principali framework di intelligenza artificiale e machine learning (ML/AI) e contenitori Docker personalizzati.

  • Funzionalità di monitoraggio integrate.

  • Monitoraggio integrato delle cronologie, inclusi lavori di formazione, processi di elaborazione, processi di trasformazione in batch, modelli, endpoint e ricercabilità. Alcune cronologie, come la formazione, l'elaborazione e la trasformazione in batch, sono immutabili e possono essere aggiunte solo.

Una delle alternative all'utilizzo dell'IA è. SageMaker AWS Batch AWS Batch offre un livello inferiore di controllo sull'elaborazione e l'orchestrazione per l'ambiente, ma non è progettato su misura per l'apprendimento automatico. Alcune delle sue caratteristiche principali includono:

  • Out-of-the-box scalabilità automatica delle risorse di elaborazione in base al carico di lavoro.

  • Out-of-the-box supporto per la priorità del lavoro, i nuovi tentativi e le dipendenze lavorative.

  • Approccio basato sulla coda che supporta la creazione di lavori ricorrenti e su richiesta.

  • Support per carichi di lavoro di CPU e GPU. La capacità di utilizzare la GPU per la creazione di modelli di machine learning è fondamentale, poiché la GPU può accelerare notevolmente il processo di formazione, specialmente per i modelli di deep learning.

  • Capacità di definire un'Amazon Machine Image (AMI) personalizzata per l'ambiente di calcolo.

Diversi motori per l'orchestrazione della pipeline

Il secondo componente principale è il livello di orchestrazione della pipeline. AWS fornisce Step Functions per un'esperienza di orchestrazione completamente gestita. Un'alternativa popolare a Step Functions è Apache Airflow. Quando prendi una decisione tra le due, considera quanto segue:

  • Infrastruttura richiesta: AWS Step Functions è un servizio completamente gestito e senza server, mentre Airflow richiede la gestione dell'infrastruttura propria ed è basato su software open source. Di conseguenza, Step Functions offre un'elevata disponibilità immediata, mentre l'amministrazione di Apache Airflow richiede passaggi aggiuntivi.

  • Funzionalità di pianificazione: sia Step Functions che Airflow offrono funzionalità comparabili.

  • Funzionalità di visualizzazione e interfaccia utente: sia Step Functions che Airflow offrono funzionalità comparabili.

  • Passaggio di variabili all'interno del grafico computazionale: Step Functions fornisce funzionalità limitate per l'utilizzo AWS Lambda delle funzioni, mentre Airflow fornisce XCom interfacce.

  • Utilizzo: Step Functions è molto popolare tra AWS i clienti e Airflow è stato ampiamente adottato dalla comunità di ingegneria dei dati.