Objectif et déterminer quand utiliser des calques masqués

9

Suite à cette question ...

J'essaie d'apprendre à utiliser et à créer des réseaux de neurones pour mes recherches, et un point m'échappe quelque peu. Je me rends compte que les couches cachées sont une partie quelque peu nécessaire de cela, mais je suis coincé sur deux points que mes références n'expliquent pas à ma satisfaction:

  1. Quel est le but exact de la couche cachée?
  2. Comment détermine-t-on le nombre de couches cachées à utiliser?

D'après ce que je comprends, c'est pour "modéliser" les fonctionnalités du monde réel, mais si possible, j'aimerais un peu plus d'explications.

te
la source
mais il m'arrive de constater que si vous augmentez les couches cachées, le problème de surajustement vient donc très difficile de dire combien de couches cachées nous pouvons utiliser? peut-être qu'il est frappé et méthode d'essai.

Réponses:

9

Une couche cachée est utilisée pour augmenter l'expressivité du réseau. Il permet au réseau de représenter des modèles plus complexes que possible sans la couche cachée.

Le choix du nombre de couches cachées, ou plus généralement le choix de l'architecture de votre réseau, y compris le nombre d'unités cachées dans les couches cachées, sont des décisions qui doivent être basées sur vos données de formation et de validation croisée. Vous devez former le réseau avec un nombre défini de nœuds (pour commencer, essayez une couche cachée, avec une unité par unité d'entrée) et testez le modèle.

Voir ce lien pour plus d'aide: http://www.faqs.org/faqs/ai-faq/neural-nets/part3/section-10.html

Neal Tibrewala
la source
1
ce lien est très utile
the_e
6

Je suppose que nous discutons de réseaux neuronaux à action directe simples, c'est-à-dire de perceptrons multicouches.

  1. La couche cachée est nécessaire pour capturer les dépendances non linéaires entre les fonctionnalités de vos données et la variable que vous essayez de prédire. Si vous n'utilisez pas de couche cachée, vous pouvez tout aussi bien utiliser la régression linéaire (pour la régression) ou la régression logistique (pour la classification).
  2. En essayant différents nombres de couches cachées et en évaluant leur efficacité, par exemple dans un cadre de validation croisée. Généralement, une couche cachée sera suffisante et les performances NN sont optimisées en faisant varier sa taille et la régularisation.

Notez qu'avec plus de deux couches cachées, vous êtes en apprentissage profond et vous avez probablement besoin d'algorithmes personnalisés pour former votre réseau. La raison en est que la rétropropagation vanille souffre du problème du "gradient de fuite" dans les réseaux profonds: le gradient de la fonction d'erreur s'éteint au niveau des couches proches de l'entrée, et ces couches seront difficilement entraînées.

Fred Foo
la source