Seguici
Iscriviti alla nostra newsletter

    L’apprendimento profondo accessibile a tutti

    Una startup, Neural Magic, è alla ricerca del modo di sfruttare le reti neurali su computer che non necessitano di hardware specializzato. 

    di Karen Hao

    La situazione che ha portato Nir Shavit a fondare un’azienda è avvenuta nel modo in cui si verifica la maggior parte delle scoperte: per caso. Il professore del MIT stava lavorando a un progetto per ricostruire una mappa del cervello di un topo e aveva bisogno dell’aiuto di tecniche di apprendimento profondo. Non sapendo come programmare schede grafiche o GPU, la scelta hardware più comune per i modelli di apprendimento profondo, ha optato invece per un’unità di elaborazione centrale, o CPU, il chip di computer più generico che si possa trovare in un laptop medio.

    “Prova e riprova”, ricorda Shavit, “mi sono reso conto che una CPU può replicare una GPU, se programmata nel modo giusto”. Questa intuizione è ora la base per la sua startup, Neural Magic, che ha lanciato la sua prima suite di prodotti. L’idea è quella di consentire a qualsiasi azienda di implementare un modello di apprendimento profondo senza la necessità di hardware specializzato. In questo modo, non solo si ridurrebbero i costi dell’apprendimento profondo, ma si renderebbe l’IA più ampiamente accessibile.

    “Ciò significherebbe che si potrebbero usare usare reti neurali sui computer che già ci sono”, afferma Neil Thompson, ricercatore presso il Computer Science and Artificial Intelligence Laboratory del MIT, che non fa parte di Neural Magic. “Non ci sarebbe la necessità di macchine particolari”. 

    Le GPU sono diventate l’hardware scelto per il deep learning quasi per caso. I chip sono stati inizialmente progettati per eseguire rapidamente il rendering della grafica in applicazioni come i videogiochi. 

    A differenza delle CPU, che hanno da quattro a otto core complessi per eseguire una varietà di calcoli, le GPU hanno centinaia di core semplici che possono eseguire solo operazioni specifiche, ma sono in grado di svolgere le loro operazioni contemporaneamente anziché una dopo l’altra, riducendo il tempo necessario a completare un calcolo intensivo.

    Non ci è voluto molto tempo perché la comunità di ricerca dell’IA realizzasse che questa enorme parallelizzazione rende anche le GPU perfette per il deep learning. Come il rendering grafico, il deep learning implica semplici calcoli matematici eseguiti centinaia di migliaia di volte. Nel 2011, in collaborazione con il chipmaker Nvidia, Google ha scoperto che un modello di visione artificiale che aveva addestrato su 2.000 CPU per distinguere i gatti dalle persone poteva ottenere le stesse prestazioni se addestrato solo su 12 GPU. 

    Le GPU sono diventate di fatto il chip per l’addestramento e le inferenze del modello, ossia le operazioni computazionali svolte dal modello addestrato quando viene utilizzato per le attività per le quali è stato pensato.

    Ma anche le GPU non sono perfette per il deep learning. Per prima cosa, non possono funzionare come chip autonomi. Essendo limitate nei tipi di operazioni che possono eseguire, devono essere collegate alle CPU per gestire tutto il processo. Le GPU hanno anche una quantità limitata di memoria cache, l’area di archiviazione dei dati più vicina ai processori di un chip. 

    Ciò significa che la maggior parte dei dati viene archiviata off-chip e deve essere recuperata quando è il momento di elaborarla. Questo flusso di informazioni avanti e indietro finisce per essere un collo di bottiglia per il calcolo, limitando la velocità con cui le GPU possono eseguire algoritmi di apprendimento profondo.

    La sede di Neural Office.Neural Office

    Negli ultimi anni, sono nate decine di aziende per progettare chip di IA che aggirano questi problemi. Neural Magic intende invertire questa tendenza. Invece di armeggiare con l’hardware, che ha costi direttamente proporzionali alla sua complessità, l’azienda interviene sul software. Ha riprogettato gli algoritmi di deep learning per funzionare in modo più efficiente su una CPU utilizzando l’ampia memoria disponibile dei chip e i core complessi. 

    Se da una parte si perde la velocità raggiunta attraverso la parallelizzazione di una GPU, secondo quanto riferito, dall’altra si guadagna lo stesso lasso di tempo eliminando la necessità di trasferire i dati dentro e fuori dal chip. Gli algoritmi possono essere eseguiti su CPU “a velocità GPU”, afferma l’azienda, ma a una frazione del costo. “L’innovazione è stata escogitare un modo per sfruttare la memoria della CPU in un modo che non è mai stato fatto prima”, afferma Thompson.

    Neural Magic ritiene che potrebbero esserci alcuni motivi per cui nessuno ha adottato questo approccio in precedenza. Innanzitutto, è controintuitivo. L’idea che il deep learning abbia bisogno di hardware specializzato è così radicata che altre soluzioni possono essere facilmente trascurate. In secondo luogo, l’applicazione dell’IA nell’industria è ancora relativamente nuova e le aziende hanno appena iniziato a cercare modi più semplici per implementare algoritmi di apprendimento profondo. 

    Non è ancora chiaro, tuttavia, se la domanda sia abbastanza radicata da consentire a Neural Magic di decollare. L’azienda ha testato il suo prodotto con circa 10 aziende, solo un frammento del più ampio settore dell’intelligenza artificiale. Neural Magic offre attualmente la sua tecnica per inferire compiti nella visione artificiale, ma i clienti devono comunque addestrare i loro modelli su hardware specializzato e poi utilizzare il software Neural Magic per convertire il modello addestrato in un formato compatibile con CPU. 

    Un cliente, un grande produttore di apparecchiature per microscopia, sta ora testando questa tecnica per aggiungere funzionalità di IA ai suoi microscopi, dice Shavit. Poiché i microscopi sono già dotati di una CPU, non avranno bisogno di alcun hardware aggiuntivo. Al contrario, l’uso di un modello di apprendimento profondo basato su GPU richiederebbe apparecchiature più voluminose e a maggior consumo di energia.

    Un altro cliente desidera utilizzare Neural Magic per elaborare filmati di telecamere di sicurezza. Ciò consentirebbe di monitorare il traffico in entrata e in uscita da un edificio utilizzando computer già disponibili in loco; in caso contrario potrebbe essere necessario inviare le riprese al cloud, il che potrebbe comportare problemi di privacy, o acquisire hardware speciale per ogni edificio monitorato.

    Shavit afferma che lo sviluppo delle inferenze è solo l’inizio. Neural Magic ha in programma di espandere le proprie offerte in futuro per aiutare le aziende a formare i propri modelli di intelligenza artificiale anche su CPU. “Riteniamo che tra 10 o 20 anni, le CPU saranno la vera struttura per l’esecuzione di algoritmi di apprendimento automatico”, egli spiega.

    Thompson non è altrettanto sicuro. “A suo parere, “l’economia è davvero cambiata nella produzione di chip e questo porterà a una specializzazione di gran lunga maggiore”. Inoltre, mentre la tecnica di Neural Magic ottiene prestazioni migliori con l’hardware esistente, i progressi fondamentali dell’hardware saranno comunque l’unico modo per continuare a sviluppare il calcolo. “Sembra un ottimo modo per migliorare le prestazioni nelle reti neurali”, afferma. “Ma l’obiettivo deve essere non solo migliorare le reti neurali, ma le capacità dei computer in generale”.

    (rp)

    Related Posts
    Total
    0
    Share