Le intuizioni "ovvie" richiedono tempo | Prima che sia troppo tardi: perché la superintelligenza artificiale è una minaccia per l’uminità | If Anyone Builds It, Everyone Dies

Le intuizioni "ovvie" richiedono tempo

È difficile arrivare a intuizioni nell'ambito dell'IA, anche quando a posteriori sembrano semplici e ovvie. Questo è importante da capire perché costruire bene l'IA probabilmente richiederà molte intuizioni. Non importa quanto possano sembrare semplici a posteriori, a volte ci vogliono decenni di duro lavoro per arrivare a queste intuizioni.

A tal fine, evidenzieremo alcune delle intuizioni che alimentano le moderne IA.

Se avete qualche conoscenza di programmazione, ad esempio, potreste leggere il capitolo 2 del libro e pensare che questa "discesa del gradiente" sia così semplice da poterla implementare voi stessi. Ma se lo faceste, probabilmente vi imbattereste rapidamente in qualche tipo di errore. Il vostro programma potrebbe andare in crash per un errore di virgola mobile perché i numeri in uno dei pesi sono diventati troppo grandi.

Nel ventesimo secolo, nessuno sapeva come far funzionare la discesa del gradiente su una rete neurale con diversi livelli intermedi di numeri tra l'input e l'output. Per evitare problemi, i programmatori dovevano imparare ogni sorta di trucco, come inizializzare tutti i pesi in modo leggermente furbo per evitare che diventassero troppo grandi. Per esempio, invece di inizializzare tutti i pesi con un numero casuale tra 0 e 1 (o un numero casuale con media 0 e deviazione standard 1), bisognava inizializzare i pesi in quel modo e poi dividerli tutti per una costante pensata per garantire che anche i numeri del livello successivo non diventassero troppo grandi durante il funzionamento.

La discesa del gradiente incontra problemi quando viene eseguita su formule complicate con molti passaggi o "livelli", e dividere i numeri casuali iniziali per una costante è una delle idee principali che rende possibile l'"apprendimento profondo". Questo trucco non è stato inventato ben sei decenni dopo che le reti neurali furono originariamente proposte nel 1943.

L'idea di usare l'analisi matematica per regolare i parametri fu discussa per la prima volta nel 1962 e applicata per la prima volta all'idea delle reti neurali con più di un livello nel 1967. È stata davvero diffusa soltanto con un articolo del 1986 (di cui Geoffrey Hinton era coautore, uno dei motivi per cui è chiamato "padrino dell'IA"). Da notare, tuttavia, che l'idea più generale di usare l'analisi su domande differenziabili per muoversi nella direzione di una risposta corretta — per esempio, per calcolare una radice quadrata — fu inventata da Isaac Newton.

Un altro trucco fondamentale è il seguente. Nel libro, diamo un esempio di operazioni di discesa del gradiente:

Moltiplicherò ogni numero in input per il peso nel primo parametro, poi lo sommerò al peso nel secondo parametro, quindi lo sostituirò con zero se è negativo, e poi...

Questa lista di operazioni non è casuale. Moltiplicazione, addizione e "sostituiscilo con zero se è negativo" sono, più o meno, le tre operazioni fondamentali in una rete neurale. Le prime due sono gli operatori che compongono una "moltiplicazione matriciale", mentre l'ultima introduce una "non-linearità" e permette così alla rete di apprendere funzioni non lineari.

La formula per "sostituiscilo con zero se è negativo" è e si chiama rettificatore.* La formula che inizialmente si cercò di utilizzare era la formula "sigmoide":

C'erano delle ottime ragioni per ipotizzare che la più complicata formula "sigmoide" avrebbe funzionato! Da una prospettiva superficiale, fa sì che gli output varino sensibilmente da 0 a 1 in modo fluido; e da una prospettiva più profonda, ha alcune connessioni utili con la teoria della probabilità. Anche alcune moderne reti neurali profonde usano una cosa simile a una sigmoide in alcuni passaggi. Ma se è necessario usare una sola non-linearità, un rettificatore funziona molto meglio.

Il problema della formula sigmoide è che tende a far sì che molti output abbiano gradienti molto piccoli. E se la maggior parte dei gradienti è molto piccola, la discesa del gradiente smette di funzionare... almeno, a meno che non si conosca il trucco moderno di fare passi di gradiente più grandi quando i gradienti piccoli puntano sempre nella stessa direzione. (Per quanto ne sappiamo, questo trucco è apparso per la prima volta in letteratura nel 2012, quando è stato proposto da Geoffrey Hinton).

"Rendi i tuoi numeri casuali iniziali più piccoli in modo che le loro somme moltiplicate non diventino enormi" e "usa max(x, 0) invece di una formula complicata" e "fai passi più grandi quando i gradienti piccolissimi puntano nella stessa direzione" potrebbero sembrare idee stranamente semplici per non essere state inventate per decenni, soprattutto perché sembrano ovvie a posteriori per un programmatore che capisce tutte queste cose. Questa è una lezione importante su come funzionano la scienza e l'ingegneria nella vita reale.

Anche quando esiste una soluzione semplice e pratica a una sfida ingegneristica, spesso i ricercatori non la trovano se non dopo aver provato e fallito per decenni. Non si può contare sul fatto che i ricercatori vedano una soluzione non appena diventa importante. Non si può contare sul fatto che la vedano entro i prossimi due anni. Anche se una soluzione sembra ovvia col senno di poi, a volte il settore arranca per decenni senza di essa.

Ci stiamo spingendo un po' avanti per le risorse online del Capitolo 2, ma questa è una lezione da tenere a mente nella Parte III del libro, quando parleremo di come l'umanità sia impreparata ad affrontare la sfida che rappresenta la superintelligenza artificiale.

Se il prezzo da pagare per gli inventori pazzi che procedono a tentoni è che tutti sulla Terra muoiano in questa goffa fase infantile, non dobbiamo lasciare che gli inventori pazzi procedano a tentoni. Gli inventori pazzi protesteranno dicendo che non c'è modo per loro di trovare una soluzione semplice e solida senza poter procedere a tentoni per alcuni decenni; diranno che non è realistico aspettarsi che lo capiscano in anticipo.

Si spera sia ovvio per tutti quelli che non sono inventori pazzi che, se queste affermazioni sono vere, dovremmo fermare i loro sforzi. Ma questo è un argomento che riprenderemo nella Parte III del libro, dopo aver completato l'argomentazione secondo cui la superintelligenza artificiale avrebbe i mezzi, il le ragioni e l'opportunità per mettere fine all'umanità.

* Le architetture più recenti useranno funzioni più sofisticate. Ad esempio, l'architettura Llama 3.1 descritta di seguito usa la funzione "SwiGLU", che ha una formula complicata che non riporteremo qui. Il creatore della formula non sa nemmeno perché funziona, e afferma: "Non offriamo alcuna spiegazione sul perché queste architetture sembrano funzionare; attribuiamo il loro successo, come tutto il resto, alla benevolenza divina".

La tua domanda non ha trovato risposta qui?Invia una domanda.