Réseaux de neurones modernes qui construisent leur propre topologie

21

Une limitation des algorithmes de réseau neuronal standard (comme backprop) est que vous devez prendre une décision de conception du nombre de couches cachées et de neurones par couche que vous voulez. Habituellement, le taux d'apprentissage et la généralisation sont très sensibles à ces choix. C'est la raison pour laquelle les algorithmes de réseau neuronal comme la corrélation en cascade ont suscité de l'intérêt. Il commence avec une topologie minimale (juste une unité d'entrée et de sortie) et recrute de nouvelles unités cachées à mesure que l'apprentissage progresse.

L'algorithme CC-NN a été introduit par Fahlman en 1990, et la version récurrente en 1991. Quels sont les algorithmes de réseau neuronal les plus récents (après 1992) qui commencent avec une topologie minimale?


Questions connexes

CogSci.SE: Réseaux de neurones avec des comptes biologiquement plausibles de la neurogenèse

Artem Kaznatcheev
la source
Il est possible d'expérimenter avec des réseaux de neurones à projection aléatoire. Code d' entrée de blog (github)
Sean O'Connor

Réponses:

10

La question implicite ici est de savoir comment déterminer la topologie / structure d'un réseau de neurones ou d'un modèle d'apprentissage automatique afin que le modèle soit «de la bonne taille» et non pas en sur-ajustement / sous-ajustement.

Depuis la corrélation en cascade en 1990, il y a eu une multitude de méthodes pour le faire maintenant, beaucoup d'entre elles avec de bien meilleures propriétés statistiques ou informatiques:

  • stimuler: former un apprenant faible à la fois, chaque apprenant faible recevant un ensemble de formation repondéré afin qu'il apprenne des choses que les anciens apprenants n'ont pas apprises.
  • régularité induisant la rareté comme le lasso ou la détermination automatique de la pertinence: commencez par un grand modèle / réseau, et utilisez un régularisateur qui encourage les unités inutiles à se "désactiver", laissant celles qui sont utiles actives.
  • Non paramétrique bayésien: oubliez d'essayer de trouver la «bonne» taille de modèle. Utilisez simplement un grand modèle, et soyez prudent avec la régularisation / être bayésien, afin de ne pas trop vous habiller. Par exemple, un réseau neuronal avec un nombre infini d'unités et de prieurs gaussiens peut être dérivé pour être un processus gaussien, qui s'avère beaucoup plus simple à former.
  • Deep learning: comme indiqué dans une autre réponse, formez un réseau profond une couche à la fois. Cela ne résout pas réellement le problème de la détermination du nombre d'unités par couche - souvent, cela est toujours défini manuellement ou par validation croisée.

la source
4

Si je comprends bien, le meilleur de la technique aujourd'hui est «l'apprentissage des fonctionnalités non supervisé et l'apprentissage en profondeur». en bref: le réseau est formé de manière non supervisée, chaque couche à la fois:

Dov
la source
commence-t-il avec un nombre minimal de neurones (uniquement entrée et sortie)?
Artem Kaznatcheev
l'apprentissage en profondeur contient une grande variété de méthodes pour les réseaux de neurones avec plusieurs couches cachées. Je ne suis pas familier avec de telles méthodes qui déterminent le nombre de neurones, mais peut-être que google scholar en sait plus ...
Ran
Afaik le nombre est fixé au préalable dans toutes les méthodes actuelles concurrentielles. C'est un peu un problème car cela signifie qu'il y a beaucoup d'hyper paramètres. Pour y faire face, James Bergstra a récemment proposé l'utilisation de processus gaussiens pour trouver les meilleurs paramètres hyper paramétriques9http: //people.fas.harvard.edu/~bergstra/files/pub/11_nips_hyperopt.pdf). Mais c'est une sorte de "boucle externe" qui essaie de nombreux paramètres différents de manière intelligente.
Andreas Mueller
4

Il y a déjà eu une mention de NEAT (Neural Evolution with Augmenting Topologies). Il y a des avancées à ce sujet, notamment la spéciation et HyperNEAT. HyperNEAT utilise un réseau «méta» pour optimiser la pondération d'un phénotype entièrement connecté. Cela donne une «conscience spatiale» du réseau qui est inestimable dans les problèmes de reconnaissance d'image et de type de jeu de société. Vous n'êtes pas non plus limité à la 2D. Je l'utilise en 1D pour l'analyse du signal et 2D vers le haut est possible mais devient lourd sur les exigences de traitement. Recherchez les articles de Ken Stanley et un groupe sur Yahoo. Si vous avez un problème qui peut être résolu avec un réseau, alors NEAT et / ou HyperNEAT peuvent bien être applicables.


la source
3

Il existe un article quelque peu récent sur ce sujet: RP Adams, H. Wallach et Zoubin Ghahramani. Apprentissage de la structure de modèles graphiques clairsemés profonds. C'est un peu en dehors de la communauté habituelle des réseaux de neurones et plus du côté de l'apprentissage automatique. L'article utilise une inférence bayésienne non paramétrique sur la structure du réseau.

Andreas Mueller
la source