Adattamento della rete neurale


8

In alcune occasioni ho addestrato reti neurali (reti di propagazione posteriore) con alcuni set di dati piuttosto complicati (posizioni di backgammon e OCR). Nel fare questo, sembra che gran parte del lavoro coinvolga la prova di diverse configurazioni delle reti, al fine di trovare la configurazione ottimale per l'apprendimento. Spesso c'è un compromesso tra reti di piccole dimensioni che sono più veloci da usare / apprendere e reti più grandi, in grado di rappresentare più conoscenza.

Quindi mi chiedo se sia possibile creare reti che siano sia veloci che grandi. Sto pensando che su una rete in cui ogni neurone non è completamente connesso dovrebbe essere più veloce da calcolare rispetto alle reti con piena connessione su tutti i livelli. Potrebbe essere l'allenamento che ha rilevato che determinati input non sono necessari per determinati neuroni e quindi rimuovere tali connessioni. Allo stesso modo l'addestramento potrebbe anche comportare l'aggiunta di nuovi neuroni se alcuni neuroni sembrano "sovraccarichi".

È qualcosa che è stato provato con qualche successo? Esistono classi di reti con questo tipo di comportamento?

Risposte:


5

Questo è grosso modo un problema aperto soggetto a ricerche in corso con diverse strategie ed euristiche note. Una parola chiave è " architettura della rete neurale ". La strategia di base è quella di iterare attraverso varie topologie di rete e riqualificarle per ognuna. Un'altra strategia è quella di iniziare con una rete relativamente più grande e potare le connessioni che hanno un peso ridotto e si riqualificano e cercano miglioramenti; anni fa questo fu chiamato "danno cerebrale" in almeno un documento [2]. Ecco alcuni riferimenti di esempio. Ce ne sono molti altri. Esiste anche la possibilità di utilizzare algoritmi simili a GA per determinare la struttura della rete [3]. Ecco parte dell'abstract di [1]:

L'uso di ANN richiede alcune decisioni critiche da parte dell'utente, che possono influire sull'accuratezza della classificazione risultante. In questo studio, viene valutata la determinazione della struttura di rete ottimale, che è uno degli attributi più importanti di una rete. La struttura della rete ha un effetto diretto sul tempo di allenamento e sulla precisione della classificazione. Sebbene ci sia qualche discussione in letteratura sull'impatto della struttura della rete sulle prestazioni della rete, non esiste un certo metodo o approccio per determinare la struttura migliore. Qui vengono riportate le indagini sulla relazione tra la struttura della rete e l'accuratezza della classificazione, utilizzando un kit di strumenti MATLAB per sfruttare la visualizzazione scientifica.

[1] Determinazione della struttura ottimale per reti neurali artificiali di Taskin Kavzoglu

[2] Danno cerebrale ottimale Le Cun, Denker, Solla

[3] Trovare un'architettura di rete neurale ottimale usando algoritmi genetici Britos et al


1
+1 Grazie vzn. Immagino che il "danno cerebrale" ti farebbe pensare più velocemente :) Forse se combinato con alcune mutazioni casuali (aggiungendo nuovi neuroni), e poi iterando con il nuovo "danno cerebrale", potrebbe dare qualcosa. Ad ogni modo, non vedo l'ora di scoprire i link che hai fornito.
Ebbe M. Pedersen,
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.