Come Sono Nate Le Reti Neurali? - Visualizzazione Alternativa

Sommario:

Come Sono Nate Le Reti Neurali? - Visualizzazione Alternativa
Come Sono Nate Le Reti Neurali? - Visualizzazione Alternativa

Video: Come Sono Nate Le Reti Neurali? - Visualizzazione Alternativa

Video: Come Sono Nate Le Reti Neurali? - Visualizzazione Alternativa
Video: Simone Piunno - Reti Neurali in Python 2024, Settembre
Anonim

Negli ultimi 10 anni, grazie al cosiddetto metodo di deep learning, abbiamo ricevuto i migliori sistemi di intelligenza artificiale - ad esempio, i riconoscitori vocali su smartphone o l'ultimo traduttore automatico di Google. Il deep learning, infatti, è diventato una nuova tendenza nelle già famose reti neurali che sono in voga e in uscita da oltre 70 anni. Le reti neurali furono proposte per la prima volta da Warren McCullough e Walter Pitts nel 1994, due ricercatori dell'Università di Chicago. Nel 1952, andarono a lavorare al Massachusetts Institute of Technology per gettare le basi per il primo Dipartimento di cognizione.

Le reti neurali furono una delle principali linee di ricerca sia nelle neuroscienze che nell'informatica fino al 1969, quando, secondo le leggende, furono uccise dai matematici del MIT Marvin Minsky e Seymour Papert, che un anno dopo divennero co-responsabili del nuovo laboratorio di intelligenza artificiale del MIT.

Questo metodo ha conosciuto un revival negli anni '80, è svanito leggermente nell'ombra nel primo decennio del nuovo secolo ed è tornato clamorosamente nel secondo, sulla cresta dell'incredibile sviluppo dei chip grafici e della loro potenza di elaborazione.

"C'è la percezione che le idee nella scienza siano come epidemie di virus", afferma Tomaso Poggio, professore di cognizione e scienze del cervello al MIT. "Ci sono probabilmente cinque o sei ceppi principali di virus influenzali, e uno di loro ritorna a un invidiabile ritmo di 25 anni. Le persone si infettano, acquisiscono l'immunità e non si ammalano per i prossimi 25 anni. Quindi appare una nuova generazione, pronta per essere infettata dallo stesso ceppo virale. Nella scienza, le persone si innamorano di un'idea, fa impazzire tutti, poi la picchiano a morte e acquisiscono l'immunità - si stancano di essa. Le idee dovrebbero avere una frequenza simile ".

Domande pesanti

Le reti neurali sono un metodo di apprendimento automatico in cui un computer impara a eseguire determinate attività analizzando esempi di addestramento. In genere, questi esempi vengono contrassegnati manualmente in anticipo. Un sistema di riconoscimento degli oggetti, ad esempio, può assorbire migliaia di immagini contrassegnate di automobili, case, tazze di caffè e così via, e quindi essere in grado di trovare schemi visivi in quelle immagini che sono costantemente correlate a determinati tag.

Una rete neurale viene spesso paragonata al cervello umano, che ha anche tali reti, costituite da migliaia o milioni di semplici nodi di elaborazione, che sono strettamente interconnessi. La maggior parte delle reti neurali moderne è organizzata in livelli di nodi e i dati fluiscono attraverso di essi in una sola direzione. Un singolo nodo può essere associato a diversi nodi nel livello sottostante, da cui riceve i dati, e diversi nodi nel livello superiore, a cui trasmette i dati.

Video promozionale:

Image
Image

Il nodo assegna un numero a ciascuno di questi collegamenti in entrata - "peso". Quando la rete è attiva, il nodo riceve diversi set di dati - numeri diversi - per ciascuna di queste connessioni e la moltiplica per il peso appropriato. Quindi somma i risultati per formare un unico numero. Se questo numero è inferiore alla soglia, il nodo non trasmette i dati al livello successivo. Se il numero supera la soglia, il nodo "si sveglia" inviando il numero - la somma dei dati di input ponderati - a tutte le connessioni in uscita.

Quando una rete neurale viene addestrata, tutti i suoi pesi e soglie vengono inizialmente impostati in ordine casuale. I dati di addestramento vengono immessi nel livello inferiore - il livello di input - e passano attraverso i livelli successivi, moltiplicandosi e sommandosi in modo complesso, fino ad arrivare, già trasformati, allo strato di output. Durante l'allenamento, i pesi e le soglie vengono continuamente regolati fino a quando i dati di allenamento con le stesse etichette producono conclusioni simili.

Mente e macchine

Le reti neurali descritte da McCullough e Pitts nel 1944 avevano sia soglie che pesi, ma non erano organizzate in strati e gli scienziati non hanno specificato alcun meccanismo di apprendimento specifico. Ma McCullough e Pitts hanno dimostrato che una rete neurale potrebbe, in linea di principio, calcolare qualsiasi funzione, come qualsiasi computer digitale. Il risultato proveniva più dal campo delle neuroscienze che dall'informatica: si doveva presumere che il cervello umano potesse essere visto come un dispositivo informatico.

Le reti neurali continuano a essere uno strumento prezioso per la ricerca neurobiologica. Ad esempio, i singoli livelli della rete o le regole per la regolazione dei pesi e delle soglie hanno riprodotto le caratteristiche osservate della neuroanatomia umana e delle funzioni cognitive e quindi hanno influenzato il modo in cui il cervello elabora le informazioni.

La prima rete neurale addestrabile, il Perceptron (o Perceptron), è stata dimostrata dallo psicologo della Cornell University Frank Rosenblatt nel 1957. Il design di Perceptron era simile a una moderna rete neurale, tranne per il fatto che aveva un singolo strato con pesi e soglie regolabili inseriti tra i livelli di input e output.

I "Perceptrons" furono attivamente ricercati in psicologia e informatica fino al 1959, quando Minsky e Papert pubblicarono un libro chiamato "Perceptrons", che dimostrò che fare calcoli abbastanza convenzionali sui perceptrons era poco pratico in termini di tempo.

Image
Image

"Ovviamente, tutte le limitazioni scompaiono se si rendono le macchine un po 'più complesse", ad esempio, in due strati ", dice Poggio. Ma all'epoca, il libro ha avuto un effetto agghiacciante sulla ricerca sulle reti neurali.

"Vale la pena considerare queste cose in un contesto storico", afferma Poggio. “La prova è stata creata per la programmazione in linguaggi come Lisp. Non molto tempo prima, le persone usavano tranquillamente computer analogici. All'epoca non era del tutto chiaro a cosa avrebbe portato la programmazione. Penso che abbiano esagerato un po ', ma, come sempre, non puoi dividere tutto in bianco e nero. Se la pensi come una competizione tra informatica analogica e informatica digitale, allora stavano combattendo per ciò che era necessario ".

Periodicità

Negli anni '80, tuttavia, gli scienziati avevano sviluppato algoritmi per modificare i pesi e le soglie delle reti neurali che erano abbastanza efficienti per le reti con più di uno strato, rimuovendo molte delle limitazioni identificate da Minsky e Papert. Questa zona ha vissuto un rinascimento.

Ma da un punto di vista ragionevole, mancava qualcosa nelle reti neurali. Una sessione di formazione abbastanza lunga potrebbe portare a una revisione delle impostazioni di rete fino a quando non inizierà a classificare i dati in modo utile, ma cosa significano queste impostazioni? Quali caratteristiche dell'immagine osserva il riconoscitore di oggetti e come le mette insieme per formare le firme visive di automobili, case e tazze di caffè? Uno studio dei pesi dei singoli composti non risponderà a questa domanda.

Negli ultimi anni, gli informatici hanno iniziato a escogitare metodi ingegnosi per determinare le strategie analitiche adottate dalle reti neurali. Ma negli anni '80 le strategie di queste reti erano incomprensibili. Pertanto, all'inizio del secolo, le reti neurali furono sostituite dalle macchine vettoriali, un approccio alternativo all'apprendimento automatico basato su una matematica pura ed elegante.

Il recente aumento di interesse per le reti neurali - la rivoluzione del deep learning - è dovuto all'industria dei giochi. La grafica complessa e il ritmo veloce dei videogiochi moderni richiedono hardware in grado di tenere il passo con la tendenza, risultando in una GPU (unità di elaborazione grafica) con migliaia di core di elaborazione relativamente semplici su un singolo chip. Gli scienziati si sono presto resi conto che l'architettura GPU era perfetta per le reti neurali.

Le moderne GPU hanno permesso di costruire reti degli anni '60 e reti a due e tre strati degli anni '80 in gruppi di reti a 10, 15 e persino a 50 strati di oggi. Questo è ciò di cui la parola "profondo" è responsabile in "apprendimento profondo". Alla profondità della rete. L'apprendimento profondo è attualmente responsabile dei sistemi più efficienti in quasi tutte le aree della ricerca sull'intelligenza artificiale.

Sotto il cappuccio

L'opacità della rete preoccupa ancora i teorici, ma ci sono progressi su questo fronte. Poggio conduce un programma di ricerca sui fondamenti teorici dell'intelligenza. Recentemente, Poggio ei suoi colleghi hanno pubblicato uno studio teorico delle reti neurali in tre parti.

La prima parte, pubblicata il mese scorso sull'International Journal of Automation and Computing, affronta la gamma di calcoli che le reti di apprendimento profondo possono eseguire e quando le reti profonde sfruttano quelle superficiali. Le parti due e tre, che sono state rilasciate come lezioni, affrontano le sfide dell'ottimizzazione globale, ovvero assicurandosi che la rete trovi le impostazioni che si adattano meglio ai suoi dati di addestramento e quando la rete comprende così bene le specifiche dei suoi dati di addestramento. che non può generalizzare altre manifestazioni delle stesse categorie.

Ci sono ancora molte domande teoriche da affrontare, le cui risposte dovranno essere date. Ma c'è speranza che le reti neurali saranno finalmente in grado di rompere il ciclo di generazioni che le immergono nel caldo e talvolta nel freddo.

ILYA KHEL

Raccomandato: