Cosa si può imparare dai pesi in una rete neurale?


8

Sono molto nuovo alle reti neurali e ho cercato di capire alcune cose. Supponiamo quindi di imbatterti in una rete neurale che ha 100 input, un layer nascosto con 200 nodi e 32 output. Diciamo anche che tu, lo "scopritore" di questa particolare istanza di una rete neurale, sei in grado di leggere i pesi dei singoli neuroni. Cosa potresti capire della sua funzione?

1) Sei in grado di determinare ciò che l'algoritmo o la logica sono contenuti nella rete neurale? Oltre a inserire tutti gli input possibili e studiare gli output che produce.

2) Se ti venissero fornite informazioni sulla connessione della rete neurale (forse la rete non è completamente connessa), sarebbe più semplice risolvere la domanda sopra?


Sei in grado di capire "il codice", ma se vuoi il significato devi almeno conoscere la natura dei dati di input. Comunque puoi sempre "dire": questo NN calcola la funzionef(X1,X2,...)=...
Anton

Risposte:


7

Dipende. I pesi delle reti neurali possono essere rappresentati graficamente o visualizzati per alcune informazioni. Ciò è particolarmente utile se la rete neurale funziona con l'elaborazione visiva. È possibile "derivare" quali input di basso livello della rete neurale creano "neuroni" di particolari neuroni a livelli più alti lavorando all'indietro attraverso i pesi della rete neurale, in altre parole, il problema di trovare / derivare l'input di basso livello modelli che eccitano al massimo determinati neuroni e rappresentano graficamente i risultati. Un ottimo esempio di ciò è il recente risultato di Google in una rete visiva autodidatta che si è auto-organizzata per trovare modelli di livello superiore come gatti e volti umani, ecc. [1], [2], [3]

Questo è anche noto come "rilevamento di funzionalità" e esiste una ricerca vincitrice del premio Nobel (Hubel / Weisel 1981) che dimostra che i neuroni cerebrali reali funzionano in modo simile, a vari livelli. La ricerca attiva è in corso / continua in questo settore sia nei sistemi biologici che in quelli artificiali.

Un altro modo di analizzare i pesi della rete neurale è quello di concludere quali fattori (input) influenzano la rete neurale e quali no. Ad esempio, supponiamo che la rete neurale sia utilizzata per prevedere i prezzi delle azioni e abbia vari input relativi a diverse variabili economiche come il PIL, i prezzi dell'oro, il DJIA (un indice) e i tassi di interesse. Dopo che la rete è stata addestrata (con successo!) A prevedere qualcosa (diciamo i prezzi futuri), si può determinare l'effetto che ciascuna delle variabili di input ha sulla previsione finale.

Inoltre, è possibile determinare la correlazione negativa o positiva di base tra input e output. In questo modo le reti neurali possono essere utilizzate in un modo molto simile alle tecniche statistiche come l' analisi dei fattori .

Quindi la risposta è "sì assolutamente", ma solo nel senso che ci sono diversi modi per rivelare "algoritmi" nelle reti neurali tramite rappresentazioni grafiche o di altre "leggibili dall'uomo" se non con la tipica rappresentazione di algoritmi, cioè il codice. Ma rappresentare i pesi delle reti neurali in modo leggibile dall'uomo e trovare nuove rappresentazioni utili è un'area attiva di ricerca.

[1] Google mette la sua tecnologia del cervello virtuale al servizio della revisione della tecnologia

[2] Il cervello artificiale di Google impara a trovare i video dei gatti cablati

[3] Quanti computer identificano un gatto? 16.000 NYT


6

Sei in grado di determinare ciò che l'algoritmo o la logica sono contenuti nella rete neurale? Oltre a inserire tutti gli input possibili e studiare gli output che produce.

No, non la penso così, non in modo significativo. Ciò sarebbe simile allo studio dei bit in ogni singolo byte di un programma per computer nel tentativo di valutarne lo scopo. Hai bisogno di significato per determinarlo e puoi ottenerlo solo studiando gli input e gli output o valutando i codici operativi effettivi.

Non c'è alcun significato nei pesi dei singoli neuroni; è solo quando quei pesi vengono combinati in una risposta che diventano significativi.

Probabilmente potresti accertare il metodo di allenamento della rete neurale osservando la sua struttura generale e il modello dei pesi relativi nella struttura neuronale.


Si può imparare di più su una rete neurale analizzando i suoi pesi di quanto questa risposta implichi; in particolare ci sono molte cose che puoi fare con la backpropagation oltre alla formazione iniziale della rete.
Elenco Jeremy
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.