Riduci il consumo energetico dei tuoi carichi di lavoro di machine learning fino al 90% con gli acceleratori appositamente progettati da AWS | Servizi Web Amazon

Riduci il consumo energetico dei tuoi carichi di lavoro di machine learning fino al 90% con gli acceleratori appositamente progettati da AWS | Servizi Web Amazon

Gli ingegneri di machine learning (ML) si sono tradizionalmente concentrati sulla ricerca di un equilibrio tra addestramento del modello e costi di implementazione rispetto alle prestazioni. La sostenibilità (efficienza energetica) sta diventando sempre più un obiettivo aggiuntivo per i clienti. Questo è importante perché l'addestramento dei modelli ML e quindi l'utilizzo dei modelli addestrati per fare previsioni (inferenza) possono essere attività ad alta intensità energetica. Inoltre, sempre più applicazioni intorno a noi sono state intrise di ML e ogni giorno vengono concepite nuove applicazioni basate su ML. Un esempio popolare è ChatGPT di OpenAI, che è alimentato da un modello LMM (Large Language Model) all'avanguardia. Per riferimento, GPT-3, un LLM di generazione precedente ha 175 miliardi di parametri e richiede mesi di formazione continua su un cluster di migliaia di processori accelerati. IL Studio del tracciatore di carbonio stima che l'addestramento di GPT-3 da zero possa emettere fino a 85 tonnellate di CO2 equivalente, utilizzando cluster di acceleratori hardware specializzati.

Esistono diversi modi in cui AWS consente ai professionisti del machine learning di ridurre l'impatto ambientale dei loro carichi di lavoro. Un modo è fornire indicazioni prescrittive sull'architettura dei carichi di lavoro AI/ML per la sostenibilità. Un altro modo è offrire servizi di formazione e orchestrazione ML gestiti come Amazon Sage Maker Studio, che smonta e ridimensiona automaticamente le risorse ML quando non sono in uso e fornisce una serie di strumenti pronti all'uso che consentono di risparmiare costi e risorse. Un altro importante fattore abilitante è lo sviluppo di acceleratori ad alta efficienza energetica, ad alte prestazioni e appositamente costruiti per l'addestramento e la distribuzione di modelli ML.

Il focus di questo post è sull'hardware come leva per il machine learning sostenibile. Presentiamo i risultati dei recenti esperimenti sulle prestazioni e sull'assorbimento di potenza condotti da AWS che quantificano i vantaggi in termini di efficienza energetica che puoi aspettarti durante la migrazione dei tuoi carichi di lavoro di deep learning da altri sistemi accelerati ottimizzati per l'inferenza e l'addestramento Cloud di calcolo elastico di Amazon (Amazon EC2) istanze a AWS Inferenza ed AWSTrainium. Inferentia e Trainium lo sono La recente aggiunta di AWS al suo portafoglio di acceleratori appositamente progettati appositamente progettato da Amazon Laboratori Annapurna per l'inferenza ML e i carichi di lavoro di addestramento.

AWS Inferentia e AWS Trainium per il machine learning sostenibile

Per fornirti numeri realistici del potenziale di risparmio energetico di AWS Inferentia e AWS Trainium in un'applicazione reale, abbiamo condotto diversi esperimenti di benchmark sull'assorbimento di potenza. Abbiamo progettato questi benchmark tenendo presenti i seguenti criteri chiave:

  • Innanzitutto, volevamo assicurarci di acquisire il consumo energetico diretto attribuibile al carico di lavoro del test, inclusi non solo l'acceleratore ML ma anche il calcolo, la memoria e la rete. Pertanto, nella nostra configurazione di test, abbiamo misurato l'assorbimento di potenza a quel livello.
  • In secondo luogo, durante l'esecuzione dei carichi di lavoro di addestramento e inferenza, ci siamo assicurati che tutte le istanze funzionassero ai rispettivi limiti hardware fisici e abbiamo effettuato misurazioni solo dopo che tale limite è stato raggiunto per garantire la comparabilità.
  • Infine, volevamo essere certi che i risparmi energetici riportati in questo post potessero essere raggiunti in un'applicazione pratica nel mondo reale. Pertanto, abbiamo utilizzato casi d'uso ML comuni ispirati dai clienti per il benchmarking e il test.

I risultati sono riportati nelle sezioni seguenti.

Esperimento di inferenza: comprensione dei documenti in tempo reale con LayoutLM

L'inferenza, al contrario dell'addestramento, è un carico di lavoro continuo e illimitato che non ha un punto di completamento definito. Costituisce quindi gran parte del consumo di risorse per tutta la durata di un carico di lavoro ML. Ottenere l'inferenza giusta è la chiave per ottenere prestazioni elevate, basso costo e sostenibilità (migliore efficienza energetica) lungo l'intero ciclo di vita del machine learning. Con le attività di inferenza, i clienti sono generalmente interessati a raggiungere un determinato tasso di inferenza per tenere il passo con la domanda di acquisizione.

L'esperimento presentato in questo post si ispira a un caso d'uso per la comprensione di documenti in tempo reale, che è un'applicazione comune in settori come quello bancario o assicurativo (ad esempio, per l'elaborazione di richieste o moduli di domanda). In particolare, selezioniamo LayoutLM, un modello di trasformatore preaddestrato utilizzato per l'elaborazione delle immagini dei documenti e l'estrazione delle informazioni. Fissiamo un obiettivo SLA di 1,000,000 di inferenze all'ora, un valore spesso considerato come tempo reale, quindi specifichiamo due configurazioni hardware in grado di soddisfare questo requisito: una che utilizza Istanze di Amazon EC2 Inf1, con AWS Inferentia, e uno che utilizza istanze EC2 accelerate comparabili ottimizzate per le attività di inferenza. Durante l'esperimento, monitoriamo diversi indicatori per misurare le prestazioni di inferenza, i costi e l'efficienza energetica di entrambe le configurazioni hardware. I risultati sono presentati nella figura seguente.

Riduci il consumo energetico dei carichi di lavoro di machine learning fino al 90% con gli acceleratori AWS appositamente realizzati | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Risultati di prestazioni, costi ed efficienza energetica dei benchmark di inferenza

AWS Inferentia offre un throughput di inferenza 6.3 volte superiore. Di conseguenza, con Inferentia, puoi eseguire lo stesso carico di lavoro di comprensione dei documenti basato su LayoutLM in tempo reale su un numero inferiore di istanze (6 istanze AWS Inferentia rispetto a 33 altre istanze EC2 accelerate ottimizzate per inferenza, equivalenti a una riduzione dell'82%), utilizzare meno di un decimo (-92%) dell'energia nel processo, il tutto ottenendo un costo per inferenza significativamente inferiore (2 USD contro 25 USD per milione di inferenze, equivalente a una riduzione dei costi del 91%).

Esperimento di addestramento: addestramento BERT Large da zero

L'addestramento, al contrario dell'inferenza, è un processo finito che si ripete molto meno frequentemente. Gli ingegneri ML sono in genere interessati a prestazioni elevate del cluster per ridurre i tempi di formazione mantenendo i costi sotto controllo. L'efficienza energetica è una preoccupazione secondaria (ma in crescita). Con AWS Trainium, non c'è alcuna decisione di compromesso: gli ingegneri ML possono beneficiare di elevate prestazioni di formazione ottimizzando al contempo i costi e riducendo l'impatto ambientale.

Per illustrare questo, selezioniamo BERT Grande, un popolare modello di linguaggio utilizzato per la comprensione del linguaggio naturale in casi d'uso come la risposta alle domande basata su chatbot e la previsione della risposta conversazionale. L'addestramento da zero di un modello BERT Large con buone prestazioni richiede in genere l'elaborazione di 450 milioni di sequenze. Confrontiamo due configurazioni di cluster, ciascuna con una dimensione fissa di 16 istanze e in grado di addestrare BERT Large da zero (450 milioni di sequenze elaborate) in meno di un giorno. Il primo utilizza le tradizionali istanze EC2 accelerate. La seconda configurazione utilizza Istanze Amazon EC2 Trn1 con AWS Trainium. Ancora una volta, confrontiamo entrambe le configurazioni in termini di prestazioni di formazione, costo e impatto ambientale (efficienza energetica). I risultati sono mostrati nella figura seguente.

Riduci il consumo energetico dei carichi di lavoro di machine learning fino al 90% con gli acceleratori AWS appositamente realizzati | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Risultati delle prestazioni, dei costi e dell'efficienza energetica dei benchmark di formazione

Negli esperimenti, le istanze basate su AWS Trainium hanno superato le istanze EC2 accelerate ottimizzate per l'addestramento comparabili di un fattore 1.7 in termini di sequenze elaborate all'ora, riducendo il tempo di addestramento totale del 43% (2.3 ore rispetto a 4 ore su istanze EC2 accelerate comparabili) . Di conseguenza, quando si utilizza un cluster di istanze basato su Trainium, il consumo energetico totale per l'addestramento di BERT Large da zero è inferiore di circa il 29% rispetto a un cluster delle stesse dimensioni di istanze EC2 accelerate comparabili. Ancora una volta, questi vantaggi in termini di prestazioni ed efficienza energetica si accompagnano anche a significativi miglioramenti dei costi: il costo per l'addestramento per il carico di lavoro BERT ML è inferiore di circa il 62% sulle istanze Trainium (787 USD rispetto a 2091 USD per esecuzione completa dell'addestramento).

Nozioni di base sugli acceleratori specifici di AWS per il machine learning

Sebbene gli esperimenti qui condotti utilizzino tutti modelli standard del dominio dell'elaborazione del linguaggio naturale (NLP), AWS Inferentia e AWS Trainium eccellono con molte altre architetture di modelli complessi, tra cui LLM e il più impegnativo IA generativa architetture che gli utenti stanno costruendo (come GPT-3). Questi acceleratori funzionano particolarmente bene con modelli con oltre 10 miliardi di parametri o modelli di visione artificiale come la diffusione stabile (vedi Linee guida per l'adattamento dell'architettura del modello per ulteriori dettagli). In effetti, molti dei nostri clienti utilizzano già Inferentia e Trainium per un'ampia varietà di Casi d'uso del machine learning.

Per eseguire i tuoi carichi di lavoro di deep learning end-to-end su istanze basate su AWS Inferentia e AWS Trainium, puoi utilizzare Neurone AWS. Neuron è un kit di sviluppo software (SDK) end-to-end che include un compilatore di deep learning, runtime e strumenti integrati nativamente nei framework ML più diffusi come TensorFlow e PyTorch. Puoi utilizzare l'SDK di Neuron per trasferire facilmente i tuoi carichi di lavoro ML di deep learning TensorFlow o PyTorch esistenti su Inferentia e Trainium e iniziare a creare nuovi modelli utilizzando gli stessi ben noti framework ML. Per una configurazione più semplice, usa uno dei nostri Amazon Machine Images (AMI) per il deep learning, che vengono forniti con molti dei pacchetti e delle dipendenze richiesti. Ancora più semplice: puoi utilizzare Amazon SageMaker Studio, che supporta nativamente TensorFlow e PyTorch su Inferentia e Trainium (vedi il repository GitHub aws-samples per esempio).

Un'ultima nota: mentre Inferentia e Trainium sono creati appositamente per carichi di lavoro di deep learning, molti algoritmi ML meno complessi possono funzionare bene su istanze basate su CPU (ad esempio, XGBoost e LightGBM e persino alcune CNN). In questi casi, una migrazione a AWS Gravitone3 può ridurre significativamente l'impatto ambientale dei carichi di lavoro ML. Le istanze basate su AWS Graviton utilizzano fino al 60% di energia in meno per le stesse prestazioni rispetto a istanze EC2 accelerate comparabili.

Conclusione

Esiste un malinteso comune secondo cui l'esecuzione di carichi di lavoro ML in modo sostenibile ed efficiente dal punto di vista energetico significhi sacrificare prestazioni o costi. Con gli acceleratori AWS appositamente progettati per l'apprendimento automatico, gli ingegneri ML non devono scendere a compromessi. Invece, possono eseguire i loro carichi di lavoro di deep learning su hardware di deep learning altamente specializzato, come AWS Inferentia e AWS Trainium, che supera in modo significativo i tipi di istanza EC2 accelerata comparabili, offrendo costi inferiori, prestazioni più elevate e una migliore efficienza energetica, fino a 90%—tutto allo stesso tempo. Per iniziare a eseguire i tuoi carichi di lavoro ML su Inferentia e Trainium, dai un'occhiata a Documentazione AWS Neuron o avvia uno dei quaderni di esempio. Puoi anche guardare il discorso di AWS re:Invent 2022 Sostenibilità e silicio AWS (SUS206), che copre molti degli argomenti discussi in questo post.


Informazioni sugli autori

Riduci il consumo energetico dei carichi di lavoro di machine learning fino al 90% con gli acceleratori AWS appositamente realizzati | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Karsten Schroer è un architetto di soluzioni presso AWS. Supporta i clienti nello sfruttare i dati e la tecnologia per guidare la sostenibilità della loro infrastruttura IT e creare soluzioni basate sui dati che consentano operazioni sostenibili nei rispettivi verticali. Karsten è entrato a far parte di AWS dopo i suoi studi di dottorato in machine learning applicato e gestione delle operazioni. È veramente appassionato di soluzioni abilitate dalla tecnologia alle sfide della società e ama approfondire i metodi e le architetture applicative che sono alla base di queste soluzioni.

Riduci il consumo energetico dei carichi di lavoro di machine learning fino al 90% con gli acceleratori AWS appositamente realizzati | Amazon Web Services PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.Kamran Khan è Sr. Technical Product Manager presso AWS Annapurna Labs. Lavora a stretto contatto con i clienti AI/ML per delineare la roadmap per le innovazioni in silicio create appositamente da AWS che escono dagli Annapurna Labs di Amazon. Il suo focus specifico è sui chip di deep learning accelerati tra cui AWS Trainium e AWS Inferentia. Kamran ha 18 anni di esperienza nel settore dei semiconduttori. Kamran ha oltre un decennio di esperienza nell'aiutare gli sviluppatori a raggiungere i loro obiettivi ML.

Timestamp:

Di più da Apprendimento automatico di AWS