Je sais que ce fil est assez ancien et que d’autres ont fait un excellent travail pour expliquer des concepts tels que les minima locaux, les surajustements, etc. Cependant, comme OP cherchait une solution alternative, j’essaierai de contribuer et d’espérer que cela inspirera des idées plus intéressantes.
L'idée est de remplacer tous les poids w à w + t, où t est un nombre aléatoire suivant la distribution gaussienne. La sortie finale du réseau est alors la sortie moyenne sur toutes les valeurs possibles de t. Cela peut être fait de manière analytique. Vous pouvez ensuite optimiser le problème avec la méthode de descente de gradient, de méthode LMA ou d’autres méthodes d’optimisation. Une fois l'optimisation terminée, vous avez deux options. Une option consiste à réduire le sigma dans la distribution gaussienne et à effectuer l'optimisation à plusieurs reprises jusqu'à ce que sigma atteigne 0. Vous obtiendrez ainsi un meilleur minimum local (mais cela pourrait éventuellement causer un surajustement). Une autre option est de continuer à utiliser celui avec le nombre aléatoire dans ses poids, il a généralement une meilleure propriété de généralisation.
La première approche est une astuce d’optimisation (je l’appelle tunnel convolution, car elle utilise la convolution sur les paramètres pour changer la fonction cible), elle lisse la surface du paysage de la fonction de coût et supprime certains des minima locaux. faciliter la recherche du minimum global (ou d'un meilleur minimum local).
La deuxième approche est liée à l’injection de bruit (sur les poids). Notez que cela se fait de manière analytique, ce qui signifie que le résultat final est un seul réseau, au lieu de plusieurs réseaux.
Les exemples suivants sont des sorties pour le problème des deux spirales. L'architecture du réseau est la même pour les trois: il n'y a qu'une seule couche cachée de 30 nœuds et la couche de sortie est linéaire. L'algorithme d'optimisation utilisé est LMA. L'image de gauche est pour le réglage de la vanille; le milieu utilise la première approche (à savoir, réduction répétée de sigma vers 0); le troisième utilise sigma = 2.
Vous pouvez voir que la solution vanille est la pire solution, le tunnel convolutionnel fait un meilleur travail et que l'injection de bruit (avec tunnel convolutionnel) est la meilleure (en termes de propriété de généralisation).
Le tunnel convolutionnel et la méthode analytique d'injection de bruit sont mes idées originales. Peut-être qu'ils sont l'alternative que quelqu'un pourrait être intéressé. Les détails se trouvent dans mon article Combinaison d’un nombre infini de réseaux de neurones en un . Avertissement: je ne suis pas un écrivain universitaire professionnel et le document n’est pas examiné par des pairs. Si vous avez des questions sur les approches que j'ai mentionnées, veuillez laisser un commentaire.