So che questo thread è piuttosto vecchio e altri hanno fatto un ottimo lavoro per spiegare concetti come minimi locali, overfitting ecc. Tuttavia, poiché OP stava cercando una soluzione alternativa, cercherò di contribuire con uno e spero che ispirerà idee più interessanti.
L'idea è di sostituire ogni peso da w a w + t, dove t è un numero casuale che segue la distribuzione gaussiana. L'output finale della rete è quindi l'output medio su tutti i possibili valori di t. Questo può essere fatto analiticamente. È quindi possibile ottimizzare il problema con discesa gradiente o LMA o altri metodi di ottimizzazione. Una volta eseguita l'ottimizzazione, hai due opzioni. Un'opzione è ridurre il sigma nella distribuzione gaussiana ed eseguire l'ottimizzazione ancora e ancora fino a quando sigma raggiunge lo 0, quindi si avrà un minimo locale migliore (ma potenzialmente potrebbe causare un overfitting). Un'altra opzione è continuare a usare quello con il numero casuale nei suoi pesi, di solito ha una migliore proprietà di generalizzazione.
Il primo approccio è un trucco di ottimizzazione (lo chiamo tunneling convoluzionale, poiché usa la convoluzione sui parametri per modificare la funzione target), leviga la superficie del panorama della funzione di costo e elimina alcuni dei minimi locali, quindi rendere più facile trovare il minimo globale (o un minimo locale migliore).
Il secondo approccio è legato all'iniezione di rumore (sui pesi). Si noti che ciò viene eseguito in modo analitico, il che significa che il risultato finale è una singola rete, anziché più reti.
I seguenti sono esempi di output per problemi a due spirali. L'architettura di rete è la stessa per tutti e tre: esiste un solo livello nascosto di 30 nodi e il livello di output è lineare. L'algoritmo di ottimizzazione utilizzato è LMA. L'immagine a sinistra è per l'impostazione vaniglia; il mezzo sta usando il primo approccio (ovvero riducendo ripetutamente sigma verso 0); il terzo sta usando sigma = 2.
Puoi vedere che la soluzione alla vaniglia è la peggiore, il tunnel convoluzionale fa un lavoro migliore e l'iniezione di rumore (con tunnel convoluzionale) è la migliore (in termini di proprietà di generalizzazione).
Sia il tunneling convoluzionale che il modo analitico di iniezione del rumore sono le mie idee originali. Forse sono l'alternativa che qualcuno potrebbe essere interessato. I dettagli sono disponibili nel mio articolo Combinare il numero infinito di reti neurali in uno . Avvertenza: non sono uno scrittore accademico professionista e il documento non è sottoposto a revisione paritaria. Se hai domande sugli approcci che ho citato, lascia un commento.