Cosa ostacola l'utilizzo delle reti neurali pulsate nelle applicazioni?


13

Le reti neurali pulsate o Spiking incorporano più della dinamica di membrana dei neuroni biologici, dove gli impulsi trasportano informazioni al livello successivo. I neuroni non devono necessariamente "sparare" tutti allo stesso tempo, come farebbero per esempio in un backprop.

Tuttavia, sembrano esserci delle barriere contro l'impiego di questi modelli per problemi di apprendimento automatico. Quali questioni specifiche ostacolano i professionisti dell'apprendimento automatico che utilizzano modelli più biologicamente realistici?

Risposte:


12

Il problema principale è che nessuno sa come funziona il cervello :)

Teoria

Per quanto ne so, ci sono tre grandi passi nella ricerca sulle reti neurali:

  1. Modello di Perceptron (o soglia-gate), in cui qualsiasi funzione booleana può essere calcolata da un percettrone multistrato con un singolo livello nascosto.
  2. Modello di neurone - versione migliorata della precedente, in cui gli elementi di rete utilizzano la funzione di attivazione sigmoid (set continuo di possibili ingressi e uscite). Possono anche calcolare qualsiasi funzione booleana (dopo aver applicato una soglia) e, inoltre, possono approssimare qualsiasi funzione continua.
  3. Modello di neuroni Spiking, che utilizza la "codifica temporale" per trasmettere informazioni tra elementi di rete. Può fare tutto ciò che fa il modello precedente e spesso può farlo con meno neuroni.

Fondamentalmente, l'evoluzione qui è quella di avvicinarsi a come funziona il cervello umano e l'ultimo modello ha la migliore fedeltà.

Pratica

Gli SNN sembrano molto promettenti e c'è persino un prodotto commerciale SpikeNET costruito sopra di esso (sotto "Cosa può fare SpikeNET" e "Cosa non può ancora fare SpikeNET" puoi vedere i problemi che devono affrontare).

Non posso parlare di problemi specifici con le reti di spiking, ma in generale ho l'impressione che i problemi sorgano perché le persone vogliono che gli SNN funzionino sempre più come un cervello umano:

  • vogliono scegliere come codificare le informazioni - che possono essere fatte tramite la codifica ritardata (i neuroni più fortemente stimolati tendono a spuntare più frequentemente e prima ), la codifica binaria (le informazioni sono rappresentate dal numero di picchi in un dato intervallo di tempo), la codifica temporale (l'informazione è l'inverso della granularità dell'intervallo di tempo distinguibile), codifica dell'ordine di classificazione (ai primi picchi ricevuti da un neurone viene data influenza e quelli successivi vengono inibiti) e quant'altro.
  • emulano la plasticità hebbiana che aumenta i pesi tra i neuroni quando entrambi i neuroni sono "accesi" (o entrambi "spenti") allo stesso tempo.
  • applicano l'auto-organizzazione in cui un gruppo di neuroni compete con il neurone vincente inibendo la risposta di altri neuroni. Con un neurone a spillo il vincitore può essere calcolato rapidamente basandosi solo su singoli eventi di sparo.

Wikipedia ha un link al libro "Pulsed Neural Networks" che ha la sezione "Problemi di implementazione di reti neuronali a impulsi" ma non sono abbastanza istruito per commentarlo.

Per quanto riguarda l'introduzione all'argomento, raccomando questo documento: Pulsed Neural Networks e la loro applicazione ( pdf )


1
Concordo sul fatto che nessuno sa come funziona il cervello, ma ci sono stati modelli di membrana buoni e fisiologicamente precisi dagli anni '30 circa. Informazioni eccellenti nella risposta, ma da quello che hai scritto, penso che i praticanti sarebbero incoraggiati a usarli, piuttosto che scoraggiarsi.
jonsca,

Sì esattamente - sono incoraggiati da questi problemi! :)
andreister

0

sembra che tutti gli algoritmi di rete neurale utilizzino una qualche forma di discesa del gradiente nei loro algoritmi di addestramento e persino i modelli non ANN usano la discesa del gradiente. non sembra esserci alcuna teoria su come applicare la discesa gradiente in modo temporale su SNN. una possibilità è un aumento del calcolo neuromorfo che utilizza modelli più biologicamente realistici simili a quelli dei SNN. ma sembra che ad oggi non siano stati raggiunti benchmark / scoperte di apprendimento automatico forti nel campo neuromorfico come con benchmark molto definiti raggiunti con ANNs in molti problemi ML standard come riconoscimento della scrittura a mano, riconoscimento vocale, riconoscimento di oggetti, traduzione linguistica, ecc.


per quanto riguarda il calcolo neuromorfo, una domanda un po 'simile esiste un modello di programmazione per i sistemi neuromorfi di autoapprendimento cs.se
vzn,
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.