Che cos’è l’hardware dell’IA? In che modo GPU e TPU danno una spinta agli algoritmi di intelligenza artificiale
Sommario
Quali sono alcuni esempi di hardware AI?
In che modo l’hardware AI è diverso dall’hardware normale?
Quali sono alcuni vantaggi dell’utilizzo dell’hardware AI?
Quali sono alcuni esempi di come le aziende leader si stanno avvicinando all’hardware AI?
Come le startup stanno affrontando la creazione di hardware per l’intelligenza artificiale
C’è qualcosa che l’hardware AI non può fare?
La maggior parte dei computer e degli algoritmi, comprese, a questo punto, molte applicazioni di intelligenza artificiale (AI) funzionano su circuiti generici chiamati unità di elaborazione centrali o CPU. Tuttavia, quando alcuni calcoli vengono eseguiti spesso, gli informatici e gli ingegneri elettrici progettano circuiti speciali in grado di eseguire lo stesso lavoro più velocemente o con maggiore precisione. Ora che gli algoritmi di intelligenza artificiale stanno diventando così comuni ed essenziali, circuiti o chip specializzati stanno diventando sempre più comuni ed essenziali.
I circuiti si trovano in diverse forme e in luoghi diversi. Alcuni offrono una creazione più rapida di nuovi modelli di intelligenza artificiale. Usano più circuiti di elaborazione in parallelo per sfornare milioni, miliardi o anche più elementi di dati, alla ricerca di schemi e segnali. Questi vengono utilizzati in laboratorio all’inizio del processo dagli scienziati dell’IA che cercano i migliori algoritmi per comprendere i dati.
Come riprogettare piattaforme globali per la nostra realtà multi-cloud_
Altri vengono distribuiti nel punto in cui viene utilizzato il modello. Alcuni smartphone e sistemi domotici dispongono di circuiti specializzati che possono velocizzare il riconoscimento vocale o altre attività comuni. Eseguono il modello in modo più efficiente nel punto in cui viene utilizzato, offrendo calcoli più rapidi e un consumo energetico inferiore.
Gli scienziati stanno anche sperimentando nuovi progetti per i circuiti. Alcuni, ad esempio, vogliono utilizzare l’elettronica analogica invece dei circuiti digitali che hanno dominato i computer. Queste diverse forme possono offrire una migliore precisione, un minor consumo energetico, un allenamento più veloce e altro ancora.
Quali sono alcuni esempi di hardware AI?
Gli esempi più semplici di hardware AI sono le unità di elaborazione grafica, o GPU, che sono state ridistribuite per gestire le attività di machine learning (ML). Molti pacchetti ML sono stati modificati per sfruttare l’ampio parallelismo disponibile all’interno della GPU media. Lo stesso hardware che esegue il rendering delle scene per i giochi può anche addestrare modelli ML perché in entrambi i casi ci sono molte attività che possono essere eseguite contemporaneamente.
Alcune aziende hanno adottato questo stesso approccio e l’hanno esteso per concentrarsi solo sul ML. Questi chip più recenti, a volte chiamati unità di elaborazione tensoriale (TPU), non cercano di servire sia la visualizzazione del gioco che gli algoritmi di apprendimento. Sono completamente ottimizzati per lo sviluppo e la distribuzione di modelli di intelligenza artificiale.
Esistono anche chip ottimizzati per diverse parti della pipeline di machine learning. Questi possono essere migliori per la creazione del modello perché può destreggiarsi tra set di dati di grandi dimensioni oppure possono eccellere nell’applicare il modello ai dati in entrata per vedere se il modello può trovare una risposta in essi. Questi possono essere ottimizzati per utilizzare meno energia e meno risorse per renderli più facili da implementare nei telefoni cellulari o in luoghi in cui gli utenti vorranno fare affidamento sull’IA ma non per creare nuovi modelli.
Inoltre, ci sono CPU di base che stanno iniziando a ottimizzare le proprie prestazioni per i carichi di lavoro ML. Tradizionalmente, molte CPU si sono concentrate su calcoli in virgola mobile a doppia precisione perché sono ampiamente utilizzate nei giochi e nella ricerca scientifica. Ultimamente, alcuni chip stanno enfatizzando i calcoli in virgola mobile a precisione singola perché possono essere sostanzialmente più veloci. I chip più recenti scambiano precisione per velocità perché gli scienziati hanno scoperto che la precisione extra potrebbe non essere preziosa in alcune attività comuni di apprendimento automatico: preferirebbero avere la velocità.
In tutti questi casi, molti dei fornitori di servizi cloud consentono agli utenti di avviare e arrestare più istanze di queste macchine specializzate. Gli utenti non devono investire nell’acquisto dei propri e possono semplicemente noleggiarli quando addestrano un modello. In alcuni casi, la distribuzione di più macchine può essere significativamente più veloce, rendendo il cloud una scelta efficiente.
In che modo l’hardware AI è diverso dall’hardware normale?
Molti dei chip progettati per accelerare gli algoritmi di intelligenza artificiale si basano sulle stesse operazioni aritmetiche di base dei chip normali. Aggiungono, sottraggono, moltiplicano e dividono come prima. Il più grande vantaggio che hanno è che hanno molti core, spesso più piccoli, quindi possono elaborare questi dati in parallelo.
Gli architetti di questi chip di solito cercano di ottimizzare i canali per portare i dati dentro e fuori dal chip perché le dimensioni e la natura dei flussi di dati sono spesso molto diverse dall’elaborazione generica. Le normali CPU possono elaborare molte più istruzioni e relativamente meno dati. I chip di elaborazione AI generalmente funzionano con grandi volumi di dati.
Alcune aziende incorporano deliberatamente molti processori molto piccoli in grandi array di memoria. I computer tradizionali separano la memoria dalla CPU; l’orchestrazione del movimento dei dati tra i due è una delle maggiori sfide per gli architetti delle macchine. Posizionare molte piccole unità aritmetiche accanto alla memoria velocizza notevolmente i calcoli, eliminando gran parte del tempo e dell’organizzazione dedicati allo spostamento dei dati.
Alcune aziende si concentrano anche sulla creazione di processori speciali per particolari tipi di operazioni di intelligenza artificiale. Il lavoro di creazione di un modello di intelligenza artificiale attraverso l’addestramento è molto più intensivo dal punto di vista computazionale e coinvolge più movimento e comunicazione dei dati. Quando il modello è costruito, la necessità di analizzare nuovi elementi di dati è più semplice. Alcune aziende stanno creando speciali sistemi di inferenza AI che funzionano in modo più rapido ed efficiente con i modelli esistenti.
Non tutti gli approcci si basano sui metodi aritmetici tradizionali. Alcuni sviluppatori stanno creando circuiti analogici che si comportano in modo diverso dai tradizionali circuiti digitali presenti in quasi tutte le CPU. Sperano di creare chip ancora più veloci e densi rinunciando all’approccio digitale e sfruttando alcuni dei comportamenti grezzi dei circuiti elettrici.
Quali sono alcuni vantaggi dell’utilizzo dell’hardware AI?
Il vantaggio principale è la velocità. Non è raro che alcuni benchmark mostrino che le GPU sono più di 100 volte o addirittura 200 volte più veloci di una CPU. Non tutti i modelli e tutti gli algoritmi, tuttavia, accelereranno così tanto e alcuni benchmark sono solo da 10 a 20 volte più veloci. Alcuni algoritmi non sono affatto più veloci.
Un vantaggio che sta diventando sempre più importante è il consumo di energia. Nelle giuste combinazioni, GPU e TPU possono utilizzare meno elettricità per produrre lo stesso risultato. Sebbene le schede GPU e TPU siano spesso grandi consumatori di energia, funzionano molto più velocemente che possono finire per risparmiare elettricità. Questo è un grande vantaggio quando i costi energetici sono in aumento. Possono anche aiutare le aziende a produrre “un’intelligenza artificiale più verde” fornendo gli stessi risultati utilizzando meno elettricità e di conseguenza producendo meno CO2.
I circuiti specializzati possono essere utili anche nei telefoni cellulari o altri dispositivi che devono fare affidamento su batterie o fonti di elettricità meno abbondanti. Alcune applicazioni, ad esempio, si basano su hardware AI veloce per attività molto comuni come l’attesa della “parola sveglia” utilizzata nel riconoscimento vocale.
L’hardware locale più veloce può anche eliminare la necessità di inviare dati su Internet a un cloud. Ciò può far risparmiare costi di larghezza di banda ed elettricità quando il calcolo viene eseguito localmente.
Quali sono alcuni esempi di come le aziende leader si stanno avvicinando all’hardware AI?
Le forme più comuni di hardware specializzato per l’apprendimento automatico continuano a provenire dalle aziende che producono unità di elaborazione grafica. Nvidia e AMD creano molte delle GPU leader sul mercato e molte di queste vengono utilizzate anche per accelerare il ML. Sebbene molti di questi possano accelerare molte attività come il rendering di giochi per computer, alcuni stanno iniziando a presentare miglioramenti progettati appositamente per l’IA.
Nvidia, ad esempio, aggiunge una serie di operazioni multiprecisione utili per addestrare modelli ML e chiama questi Tensor Core . AMD sta anche adattando le sue GPU per l’apprendimento automatico e chiama questo approccio CDNA2 . L’uso dell’IA continuerà a guidare queste architetture nel prossimo futuro.
Come accennato in precedenza, Google produce il proprio hardware per accelerare il ML, chiamato Tensor Processing Unit o TPU . L’azienda fornisce anche una serie di librerie e strumenti che semplificano la distribuzione dell’hardware e dei modelli che creano. Le TPU di Google sono principalmente disponibili per il noleggio tramite la piattaforma Google Cloud.
Google sta anche aggiungendo una versione del suo design TPU alla sua linea telefonica Pixel per accelerare le attività di intelligenza artificiale per le quali il telefono potrebbe essere utilizzato. Questi potrebbero includere il riconoscimento vocale, il miglioramento delle foto o la traduzione automatica. Google osserva che il chip è abbastanza potente da svolgere gran parte di questo lavoro in locale, risparmiando larghezza di banda e migliorando le velocità perché, tradizionalmente, i telefoni hanno scaricato il lavoro sul cloud.
Molte delle società cloud come Amazon , IBM , Oracle , Vultr e Microsoft installano queste GPU o TPU e noleggiano tempo su di esse. In effetti, molte delle GPU di fascia alta non sono destinate agli utenti per l’acquisto diretto perché può essere più conveniente condividerle attraverso questo modello di business.
I sistemi di cloud computing di Amazon offrono anche un nuovo set di chip basati sull’architettura ARM. Le ultime versioni di questi chip Graviton possono eseguire aritmetica di precisione inferiore a una velocità molto più veloce, una caratteristica che è spesso desiderabile per l’apprendimento automatico.
Alcune aziende stanno anche creando semplici applicazioni front-end che aiutano i data scientist a curare i propri dati e quindi alimentarli a vari algoritmi di intelligenza artificiale. CoLab o AutoML di Google, SageMaker di Amazon, Machine Learning Studio di Microsoft e Watson Studio di IBM sono solo alcuni esempi di opzioni che nascondono qualsiasi hardware specializzato dietro un’interfaccia. Queste aziende possono o meno utilizzare hardware specializzato per accelerare le attività di ML e fornirle a un prezzo inferiore, ma il cliente potrebbe non saperlo.
Come le startup stanno affrontando la creazione di hardware per l’intelligenza artificiale
Decine di startup si stanno avvicinando al compito di creare buoni chip di intelligenza artificiale. Questi esempi sono notevoli per il loro finanziamento e interesse di mercato:
D-Matrix sta creando una raccolta di chip che spostano le funzioni aritmetiche standard per essere più vicine ai dati archiviati nelle celle RAM. Questa architettura, che chiamano “in-memory computing”, promette di accelerare molte applicazioni di intelligenza artificiale accelerando il lavoro che deriva dalla valutazione di modelli precedentemente addestrati. Non è necessario che i dati si spostino così lontano e molti dei calcoli possono essere eseguiti in parallelo.
Untether è un’altra startup che sta mescolando la logica standard con le celle di memoria per creare ciò che chiamano informatica “at-memory”. Integrare la logica con le celle RAM produce un sistema estremamente denso, ma efficiente dal punto di vista energetico, in una singola scheda che fornisce circa 2 petaflop di calcolo. Untether la chiama “la densità di calcolo più alta del mondo”. Il sistema è progettato per scalare da piccoli chip, magari per sistemi embedded o mobili, a configurazioni più grandi per server farm.
Graphcore chiama il suo approccio al calcolo in memoria “IPU” (per Intelligence Processing Unit) e si basa su un nuovo packaging tridimensionale dei chip per migliorare la densità del processore e limitare i tempi di comunicazione. L’IPU è una grande griglia di migliaia di quelle che chiamano “tessere IPU” costruite con memoria e capacità di calcolo. Insieme, promettono di fornire 350 teraflop di potenza di calcolo.
Cerebras ha costruito un chip molto grande, su scala wafer, fino a 50 volte più grande di una GPU concorrente. Hanno utilizzato questo silicio extra per confezionare 850.000 core in grado di addestrare e valutare modelli in parallelo. Hanno abbinato questo a connessioni a larghezza di banda estremamente elevata per assorbire i dati, consentendo loro di produrre risultati migliaia di volte più velocemente anche delle migliori GPU.
Celestial utilizza la fotonica, una miscela di elettronica e logica basata sulla luce, per accelerare la comunicazione tra i nodi di elaborazione. Questo “tessuto fotonico” promette di ridurre la quantità di energia dedicata alla comunicazione utilizzando la luce, consentendo all’intero sistema di ridurre il consumo energetico e fornire risultati più rapidi.
C’è qualcosa che l’hardware AI non può fare?
Per la maggior parte, l’hardware specializzato non esegue alcun algoritmo speciale o si avvicina alla formazione in un modo migliore. I chip sono solo più veloci nell’esecuzione degli algoritmi. L’hardware standard troverà le stesse risposte, ma a una velocità inferiore.
Questa equivalenza non si applica ai chip che utilizzano circuiti analogici. In generale, tuttavia, l’approccio è abbastanza simile che i risultati non saranno necessariamente diversi, solo più veloci.
Ci saranno casi in cui potrebbe essere un errore scambiare la precisione con la velocità facendo affidamento su calcoli a precisione singola anziché a doppia precisione, ma questi possono essere rari e prevedibili. Gli scienziati dell’IA hanno dedicato molte ore di ricerca per capire come addestrare al meglio i modelli e, spesso, gli algoritmi convergono senza la precisione extra.
Ci saranno anche casi in cui la potenza extra e il parallelismo di hardware specializzato prestano poco per trovare la soluzione. Quando i set di dati sono piccoli, i vantaggi potrebbero non valere il tempo e la complessità della distribuzione di hardware aggiuntivo.