MuZero, AlphaZero e AlphaDev: ottimizzazione dei sistemi informatici

 | Intelligenza-Artificiale

Come parte del nostro obiettivo di costruire sistemi di intelligenza artificiale (IA) sempre più capaci e generali, stiamo lavorando per creare strumenti di IA con una comprensione più ampia del mondo. Ciò può consentire il trasferimento di conoscenze utili tra molti tipi diversi di attività.

Utilizzando l'apprendimento per rinforzo, i nostri sistemi di intelligenza artificiale AlphaZero e MuZero hanno raggiunto prestazioni sovrumane giocando. Da allora, abbiamo ampliato le loro capacità per aiutare a progettare chip per computer migliori, oltre a ottimizzare data center e compressione video. E la nostra versione specializzata di AlphaZero, chiamata AlphaDev, ha anche scoperto nuovi algoritmi per accelerare il software alle fondamenta della nostra società digitale.

I primi risultati hanno mostrato il potenziale trasformativo di strumenti di intelligenza artificiale più generici. Qui spieghiamo come questi progressi stanno plasmando il futuro dell'informatica, e stanno già aiutando miliardi di persone e il pianeta.

Progettare chip per computer migliori

L'hardware specializzato è essenziale per garantire che i sistemi AI odierni siano efficienti in termini di risorse per gli utenti su larga scala. Ma progettare e produrre nuovi chip per computer può richiedere anni di lavoro.

I nostri ricercatori hanno sviluppato un approccio basato sull'intelligenza artificiale per progettare circuiti più potenti ed efficienti. Trattando un circuito come una rete neurale, abbiamo trovato un modo per accelerare la progettazione dei chip e portare le prestazioni a nuovi livelli.

Le reti neurali sono spesso progettate per prendere input utente e generare output, come immagini, testo o video. All'interno della rete neurale, gli edge si collegano ai nodi in una struttura simile a un grafico.

Per creare un progetto di circuito, il nostro team ha proposto reti neurali circuitali, un nuovo tipo di rete neurale che trasforma i bordi in fili e i nodi in porte logiche e impara a collegarli tra loro.

Illustrazione animata di una rete neurale di circuito che apprende la progettazione di un circuito. Determina quali bordi (fili) si collegano a quali nodi (porte logiche) per migliorare la progettazione complessiva del circuito.

Abbiamo ottimizzato il circuito appreso per velocità computazionale, efficienza energetica e dimensioni, mantenendone al contempo la funzionalità. Utilizzando il 'simulated annealing', una tecnica di ricerca classica che guarda un passo avanti nel futuro, abbiamo anche testato diverse opzioni per trovare la sua configurazione ottimale.

Con questa tecnica abbiamo vinto la Concorso di programmazione IWLS 2023 — con la migliore soluzione all'82% dei problemi di progettazione dei circuiti in gara.

Il nostro team ha utilizzato anche AlphaZero, che è in grado di prevedere molti passaggi nel futuro, per migliorare la progettazione del circuito trattando la sfida come un gioco da risolvere.

Finora, la nostra ricerca che combina reti neurali a circuito con la funzione di ricompensa dell'apprendimento per rinforzo ha mostrato risultati molto promettenti per la realizzazione di chip per computer ancora più avanzati.

Ottimizzazione delle risorse del data center

I data center gestiscono tutto, dalla consegna dei risultati di ricerca all'elaborazione dei set di dati. Come in un gioco di Tetris multidimensionale, un sistema chiamato Borgogna gestisce e ottimizza i carichi di lavoro nei vasti data center di Google.

Per pianificare le attività, Borg si affida a regole codificate manualmente. Ma alla scala di Google, le regole codificate manualmente non possono coprire la varietà di distribuzioni di carichi di lavoro in continua evoluzione. Quindi sono progettate come una taglia unica per adattarsi al meglio a tutti.

È qui che le tecnologie di apprendimento automatico come AlphaZero risultano particolarmente utili: sono in grado di lavorare su larga scala, creando automaticamente regole individuali che si adattano in modo ottimale alle diverse distribuzioni del carico di lavoro.

Durante la formazione, AlphaZero ha imparato a riconoscere gli schemi nelle attività in arrivo nei data center e a prevedere i modi migliori per gestire la capacità e prendere decisioni con i migliori risultati a lungo termine.

Quando abbiamo applicato AlphaZero a Borg in prove sperimentali, abbiamo scoperto che potevamo ridurre fino al 19% la percentuale di hardware sottoutilizzato nel data center.

Una visualizzazione animata di un archivio dati ordinato e ottimizzato, rispetto a un archivio dati disordinato e non ottimizzato.

Comprimere video in modo efficiente

Lo streaming video costituisce la maggior parte del traffico internet. Quindi trovare modi per rendere lo streaming più efficiente, grande o piccolo che sia, avrà un impatto enorme sui milioni di persone che guardano video ogni giorno.

Abbiamo collaborato con YouTube per comprimere e trasmettere video sfruttando le capacità di risoluzione dei problemi di MuZero. Riducendo il bitrate del 4%, MuZero ha migliorato l'esperienza complessiva su YouTube — senza compromettere la qualità visiva.

Inizialmente abbiamo applicato MuZero per ottimizzare la compressione di ogni singolo fotogramma video. Ora, abbiamo ampliato questo lavoro per aiutare a prendere decisioni su come i fotogrammi vengono raggruppati e referenziati durante la codifica, portando a maggiori risparmi di bitrate.

I risultati di queste prime due fasi mostrano grandi potenzialità per MuZero nel diventare uno strumento più generalizzato, aiutando a trovare soluzioni ottimali nell'intero processo di compressione video.

Una visualizzazione che dimostra come MuZero comprime i file video. Definisce gruppi di immagini con somiglianze visive per la compressione. Viene compresso un singolo fotogramma chiave. MuZero comprime quindi altri fotogrammi, utilizzando il fotogramma chiave come riferimento. Il processo si ripete per il resto del video, fino al completamento della compressione.

Alla scoperta di algoritmi più veloci

SviluppoAlfauna versione di AlphaZero, ha fatto una svolta innovativa nell'informatica, quando ha scoperto algoritmi di ordinamento e hashing più rapidi. Questi processi fondamentali vengono utilizzati trilioni di volte al giorno per ordinare, archiviare e recuperare dati.

Algoritmi di ordinamento di AlphaDev

Gli algoritmi di ordinamento aiutano i dispositivi digitali a elaborare e visualizzare le informazioni, dalla classificazione dei risultati delle ricerche online e dei post sui social, fino alle raccomandazioni degli utenti.

AlphaDev ha scoperto un algoritmo che aumenta l'efficienza per l'ordinamento di brevi sequenze di elementi del 70% e di circa l'1,7% per sequenze contenenti più di 250.000 elementi, rispetto agli algoritmi nella libreria C++. Ciò significa che i risultati generati dalle query degli utenti possono essere ordinati molto più velocemente. Quando utilizzato su larga scala, questo consente di risparmiare enormi quantità di tempo ed energia.

Algoritmi di hashing di AlphaDev

Gli algoritmi di hashing sono spesso utilizzati per l'archiviazione e il recupero dei dati, come in un database dei clienti. In genere utilizzano una chiave (ad esempio il nome utente “Jane Doe”) per generare un hash univoco, che corrisponde ai valori dei dati che devono essere recuperati (ad esempio “numero ordine 164335-87”).

Come un bibliotecario che usa un sistema di classificazione per trovare rapidamente un libro specifico, con un sistema di hashing, il computer sa già cosa sta cercando e dove trovarlo. Quando applicato all'intervallo di 9-16 byte di funzioni di hashing nei data center, l'algoritmo di AlphaDev ha migliorato l'efficienza del 30%.

L'impatto di questi algoritmi

Abbiamo aggiunto gli algoritmi di ordinamento al Libreria C++ standard LLVM — sostituendo le sub-routine che sono state utilizzate per oltre un decennio. E ha contribuito con gli algoritmi di hashing di AlphaDev al biblioteca di discesa in corda doppia.

Da allora, milioni di sviluppatori e aziende hanno iniziato a utilizzarli in settori diversi come il cloud computing, lo shopping online e la gestione della supply chain.

Strumenti multiuso per alimentare il nostro futuro digitale

I nostri strumenti di intelligenza artificiale stanno già facendo risparmiare tempo ed energia a miliardi di persone. Questo è solo l'inizio. Immaginiamo un futuro in cui gli strumenti di intelligenza artificiale generici possono aiutare a ottimizzare l'ecosistema informatico globale.

Non ci siamo ancora arrivati: abbiamo ancora bisogno di infrastrutture digitali più veloci, efficienti e sostenibili.

Sono necessarie molte altre innovazioni teoriche e tecnologiche per creare strumenti di intelligenza artificiale completamente generalizzati. Ma il potenziale di questi strumenti, in tecnologia, scienza e medicina, ci rende entusiasti di ciò che ci aspetta all'orizzonte.

Fonte: deepmind.google

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *