Organizzare i flussi di lavoro di Machine Learning con AWS Step Functions
Gestire le attività di Machine Learning in modo efficiente con AWS Step Functions
Ingegneria dei dati avanzata e ML Ops con Infrastructure as Code
Questo articolo spiega come creare e orchestrare pipeline di machine learning con AWS Step Functions e come distribuirle utilizzando Infrastructure as Code. Questo articolo è rivolto a ingegneri dei dati e ML Ops che vogliono distribuire e aggiornare le pipeline di ML utilizzando template di CloudFormation. Questi template e il repository Gihub saranno forniti in questo articolo.
Possiamo utilizzare AWS Step Functions per attivare qualsiasi altro servizio, inclusi i servizi gestiti di altri fornitori. È uno strumento potente che ci consente di orchestrare il flusso di come i servizi dati dovrebbero elaborare e trasformare i dati. Utilizzerò AWS Glue e AWS Personalize come esempio per creare una pipeline di Machine Learning (ML) che può essere pianificata a intervalli richiesti e ha un flusso come questo:
Come ingegnere dei dati, mi è stato assegnato il compito di progettare una pipeline dati che prepara i dati nel data lake e attiva l’addestramento del modello di machine learning.
Quindi pensavo che tra gli altri strumenti che potevo utilizzare, ad esempio Airflow, etc., non avevo mai provato AWS Step Functions. Considerando che è un servizio nativo per AWS, ho deciso di provarlo. L’idea era addestrare il modello di ML quotidianamente o su richiesta utilizzando AWS Step Functions. Ciò garantiva una configurazione flessibile per eventuali aggiornamenti del modello necessari quando ne avevo bisogno. I vantaggi dell’utilizzo dell’infrastructure as code per le piattaforme di dati non sono contestati e ne ho già scritto in precedenza qui:
- Tecnica di ensemble AdaBoost completamente spiegata con esempio in Python
- Appunti su CLIP Collegare Testo e Immagini
- Visualizzazione delle serie temporali
Integrazione continua e distribuzione per piattaforme di dati
CI/CD per data engineer e ML Ops
towardsdatascience.com
Ho scelto di utilizzare AWS Personalize per scopi di test. Questo servizio può essere utilizzato per offrire migliori raccomandazioni di prodotto agli utenti delle mie applicazioni. Sembra che AWS Personalize sia la scelta giusta poiché non è necessario preoccuparsi dell’apprendimento automatico…