In un articolo pubblicato la scorsa settimana sulla rivista scientifica sottoposta a revisione paritaria Nature , gli scienziati di Google Brain hanno introdotto una tecnica di apprendimento con rinforzo profondo per la pianificazione dei piani, il processo di organizzazione del posizionamento dei diversi componenti dei chip dei computer.
I ricercatori sono riusciti a utilizzare la tecnica di apprendimento per rinforzo per progettare la prossima generazione di Tensor Processing Units, i processori di intelligenza artificiale specializzati di Google.
L’uso del software nella progettazione dei chip non è nuovo. Ma secondo i ricercatori di Google, il nuovo modello di apprendimento per rinforzo “genera automaticamente planimetrie dei chip superiori o paragonabili a quelle prodotte dagli esseri umani in tutte le metriche chiave, inclusi consumo energetico, prestazioni e area del chip”. E lo fa in una frazione del tempo che impiegherebbe un essere umano a farlo.
La superiorità dell’IA rispetto alle prestazioni umane ha attirato molta attenzione. Un media lo ha descritto come “software di intelligenza artificiale in grado di progettare chip per computer più velocemente di quanto possano fare gli umani” e ha scritto che “un chip che richiederebbe mesi per essere progettato dagli umani può essere immaginato dalla nuova intelligenza artificiale [di Google] in meno di sei ore”.
Un altro punto vendita ha scritto: “Il ciclo virtuoso dell’intelligenza artificiale che progetta chip per l’intelligenza artificiale sembra essere appena iniziato”.
Ma durante la lettura dell’articolo, ciò che mi ha stupito non è stata la complessità del sistema di intelligenza artificiale utilizzato per progettare i chip dei computer, ma le sinergie tra l’intelligenza umana e quella artificiale.
Analogie, intuizioni e ricompense
Il documento descrive il problema in questo modo: “La pianificazione del chip prevede il posizionamento di netlist su tele di chip (griglie bidimensionali) in modo che le metriche delle prestazioni (ad esempio, consumo energetico, tempistica, area e lunghezza del cavo) siano ottimizzate, pur rispettando rigidi vincoli sulla densità e la congestione del percorso”.
Fondamentalmente, quello che vuoi fare è posizionare i componenti nel modo più ottimale. Tuttavia, come qualsiasi altro problema, con l’aumentare del numero di componenti in un chip, trovare progetti ottimali diventa più difficile.
Il software esistente aiuta ad accelerare il processo di scoperta delle disposizioni dei chip, ma fallisce quando il chip di destinazione cresce in complessità. I ricercatori hanno deciso di trarre esperienza dal modo in cui l’apprendimento per rinforzo ha risolto altri problemi spaziali complessi, come il gioco Go.
“La pianificazione del chip è analoga [enfasi mia] a un gioco con pezzi variabili (ad esempio, topologie netlist, conteggi macro, dimensioni macro e proporzioni), schede (dimensioni della tela e proporzioni variabili) e condizioni di vincita (importanza relativa di diverse valutazioni metriche o diversi vincoli di densità e congestione del percorso),” hanno scritto i ricercatori.
Questa è la manifestazione di uno degli aspetti più importanti e complessi dell’intelligenza umana: l’ analogia . Noi umani possiamo trarre astrazioni da un problema che risolviamo e quindi applicare quelle astrazioni a un nuovo problema. Anche se diamo per scontate queste abilità, sono ciò che ci rende molto bravi a trasferire l’apprendimento. Questo è il motivo per cui i ricercatori hanno potuto riformulare il problema della planimetria dei chip come un gioco da tavolo e potrebbero affrontarlo nello stesso modo in cui altri scienziati avevano risolto il gioco del Go.
I modelli di apprendimento per rinforzo profondo possono essere particolarmente efficaci nella ricerca di spazi molto ampi, un’impresa fisicamente impossibile con la potenza di calcolo del cervello. Ma gli scienziati hanno dovuto affrontare un problema di ordini di grandezza più complesso di Go. “[Lo] spazio degli stati di posizionare 1.000 cluster di nodi su una griglia con 1.000 celle è dell’ordine di 1.000! (maggiore di 10 2500 ), mentre Go ha uno spazio di stato di 10 360 “, hanno scritto i ricercatori. I chip che volevano progettare sarebbero composti da milioni di nodi.
Hanno risolto il problema della complessità con una rete neurale artificiale in grado di codificare i progetti di chip come rappresentazioni vettoriali e ha reso molto più semplice esplorare lo spazio del problema. Secondo il documento, “La nostra intuizione [enfasi mia] era che una politica in grado di svolgere il compito generale di posizionamento del chip dovrebbe anche essere in grado di codificare lo stato associato a un nuovo chip invisibile in un segnale significativo al momento dell’inferenza. Abbiamo quindi addestrato un’architettura di rete neurale in grado di prevedere la ricompensa sui posizionamenti di nuove netlist, con l’obiettivo finale di utilizzare questa architettura come livello di codifica della nostra politica.
Il termine intuizione è spesso usato in modo approssimativo. Ma è un processo molto complesso e poco compreso che coinvolge esperienza, conoscenza inconscia, riconoscimento di schemi e altro ancora. Le nostre intuizioni provengono da anni di lavoro in un campo, ma possono essere ottenute anche da esperienze in altri settori. Fortunatamente, mettere alla prova queste intuizioni sta diventando più facile con l’aiuto di strumenti di calcolo e apprendimento automatico ad alta potenza .
Vale anche la pena notare che i sistemi di apprendimento per rinforzo necessitano di una ricompensa ben progettata. Alcuni scienziati, infatti, ritengono che con la giusta funzione di ricompensa , l’apprendimento per rinforzo sia sufficiente per raggiungere l’intelligenza artificiale generale. Senza la giusta ricompensa, tuttavia, un agente RL può rimanere bloccato in loop infiniti, facendo cose stupide e senza senso. Nel video seguente, un agente RL che gioca a Coast Runners sta cercando di massimizzare i suoi punti e abbandona l’obiettivo principale, che è vincere la gara.
Gli scienziati di Google hanno progettato la ricompensa per il sistema di planimetria come la “somma ponderata negativa della lunghezza del cavo, della congestione e della densità proxy”. I pesi sono iperparametri che hanno dovuto regolare durante lo sviluppo e l’addestramento del modello di apprendimento per rinforzo.
Con la giusta ricompensa, il modello di apprendimento per rinforzo è stato in grado di sfruttare la sua potenza di calcolo e trovare tutti i tipi di modi per progettare planimetrie che massimizzano la ricompensa.
Set di dati curati
La rete neurale profonda utilizzata nel sistema è stata sviluppata utilizzando l’ apprendimento supervisionato . L’apprendimento automatico supervisionato richiede dati etichettati per regolare i parametri del modello durante l’addestramento. Gli scienziati di Google hanno creato “un set di dati di 10.000 posizionamenti di chip in cui l’input è lo stato associato a un determinato posizionamento e l’etichetta è la ricompensa per quel posizionamento”.
Per evitare di creare manualmente ogni planimetria, i ricercatori hanno utilizzato un mix di piani progettati dall’uomo e dati generati dal computer. Non ci sono molte informazioni nel documento su quanto sforzo umano sia stato coinvolto nella valutazione degli esempi generati dall’algoritmo inclusi nel set di dati di addestramento. Ma senza dati di formazione di qualità, i modelli di apprendimento supervisionato finiranno per fare inferenze scadenti.
In questo senso, il sistema di intelligenza artificiale è diverso da altri programmi di apprendimento per rinforzo come AlphaZero, che ha sviluppato la sua politica di gioco senza la necessità di input umani. In futuro, i ricercatori potrebbero sviluppare un agente RL in grado di progettare le proprie planimetrie senza la necessità di componenti di apprendimento supervisionato. Ma la mia ipotesi è che, data la complessità del problema, c’è una grande possibilità che la risoluzione di tali problemi continui a richiedere una combinazione di intuizione umana, apprendimento automatico e calcolo ad alte prestazioni.
Design dell’apprendimento per rinforzo vs design umano
Tra gli aspetti interessanti del lavoro presentato dai ricercatori di Google c’è il layout dei chip. Noi umani usiamo tutti i tipi di scorciatoie per superare i limiti del nostro cervello. Non possiamo affrontare problemi complessi in un unico pezzo. Ma possiamo progettare sistemi modulari e gerarchici per dividere e conquistare la complessità. La nostra capacità di pensare e progettare architetture top-down ha giocato un ruolo importante nello sviluppo di sistemi in grado di svolgere compiti molto complicati.
Darò un esempio di ingegneria del software, la mia area di competenza. In teoria, puoi scrivere interi programmi in un flusso di comandi molto grande e contiguo in un unico file. Ma gli sviluppatori di software non scrivono mai i loro programmi in questo modo. Realizziamo software in piccoli pezzi, funzioni, classi, moduli, che possono interagire tra loro attraverso interfacce ben definite. Quindi annidiamo quei pezzi in pezzi più grandi e creiamo gradualmente una gerarchia di componenti. Non è necessario leggere ogni riga di un programma per capire cosa fa. La modularità consente a più programmatori di lavorare su un singolo programma e a più programmi di riutilizzare componenti precedentemente costruiti. A volte, basta guardare l’architettura di classe di un programma per indirizzarti nella giusta direzione per individuare un bug o trovare il posto giusto per aggiungere un aggiornamento.
In un certo senso, lo stesso può essere visto nella progettazione dei chip per computer. I chip progettati dall’uomo tendono ad avere confini netti tra i diversi moduli. D’altra parte, le planimetrie progettate dall’agente di apprendimento per rinforzo di Google hanno trovato il percorso di resistenza minore, indipendentemente dall’aspetto del layout (vedi immagine sotto).
Sopra: a destra: chip progettato manualmente Sinistra: chip progettato da AI
Sono interessato a vedere se questo diventerà un modello di progettazione sostenibile in futuro o se richiederà un qualche tipo di compromesso tra i progetti generati dall’apprendimento automatico altamente ottimizzati e l’ordine dall’alto verso il basso imposto dagli ingegneri umani.
IA + intelligenza umana
Come mostra il progettista di chip basato sull’apprendimento di rinforzo di Google, le innovazioni nell’hardware e nel software AI continueranno a richiedere il pensiero astratto, la ricerca dei problemi giusti da risolvere , lo sviluppo di intuizioni sulle soluzioni e la scelta del giusto tipo di dati per convalidare le soluzioni. Questi sono i tipi di abilità che i migliori chip AI possono migliorare ma non sostituire.
Alla fine della giornata, non vedo questa come una storia di “l’intelligenza artificiale che supera in astuzia gli umani”, “l’intelligenza artificiale che crea un’intelligenza artificiale più intelligente” o l’intelligenza artificiale che sviluppa capacità di ” auto-miglioramento ricorsivo “. È piuttosto una manifestazione di esseri umani che trovano modi per utilizzare l’intelligenza artificiale come supporto per superare i propri limiti cognitivi ed estendere le proprie capacità. Se c’è un circolo virtuoso, è quello dell’intelligenza artificiale e degli esseri umani che trovano modi migliori per cooperare.
Ben Dickson è un ingegnere del software e il fondatore di TechTalks. Scrive di tecnologia, affari e politica.
Questa storia è apparsa originariamente su Bdtechtalks.com . Copyright 2021