Lors de la formation de réseaux de neurones, il existe au moins 4 façons de régulariser le réseau:
plus bien sûr d'autres choses comme le partage du poids et la réduction du nombre de connexions, ce qui pourrait ne pas être une régularisation au sens strict.
Mais comment choisir laquelle de ces méthodes de régularisation utiliser? Existe-t-il une méthode plus fondée sur des principes que «tout essayer et voir ce qui fonctionne»?
neural-network
regularization
Thomas Johnson
la source
la source
Réponses:
Il n'y a pas de principes solides et bien documentés pour vous aider à choisir entre les types de régularisation dans les réseaux de neurones. Vous pouvez même combiner des techniques de régularisation, vous n'avez pas à en choisir une seule.
Une approche pratique peut être basée sur l'expérience, et en suivant la littérature et les résultats d'autres personnes pour voir ce qui a donné de bons résultats dans différents domaines problématiques. Gardant cela à l'esprit, le décrochage s'est avéré très efficace pour un large éventail de problèmes, et vous pouvez probablement le considérer comme un bon premier choix presque indépendamment de ce que vous essayez.
Parfois, le simple fait de choisir une option que vous connaissez peut vous aider - travailler avec des techniques que vous comprenez et avez de l'expérience peut vous donner de meilleurs résultats que d'essayer un sac à main complet d'options différentes où vous n'êtes pas sûr de l'ordre de grandeur à essayer pour un paramètre . Un problème clé est que les techniques peuvent interagir avec d'autres paramètres réseau - par exemple, vous souhaiterez peut-être augmenter la taille des couches avec abandon en fonction du pourcentage d'abandon.
Enfin, il importe peu énormement que les techniques de régularisation que vous utilisez, juste que vous comprenez votre problème et modèle assez bien pour repérer quand il est surapprentissage et pourrait faire avec plus de régularisation. Ou vice-versa, repérez quand il ne convient pas et que vous devriez réduire la régularisation.
la source
Méthode de régularisation
Pour les 4 techniques suivantes, la régularisation L1 et la régularisation L2 sont inutiles pour dire qu'elles doivent être une méthode de régularisation. Ils réduisent le poids. L1 se concentrerait sur la réduction d'une plus petite quantité de poids si les poids ont une importance plus élevée.
Le décrochage empêche le surapprentissage en abandonnant temporairement les neurones. Finalement, il calcule tous les poids en moyenne afin que le poids ne soit pas trop grand pour un neurone particulier et c'est donc une méthode de régularisation.
La normalisation des lots ne doit pas être une méthode de régularisation car son objectif principal est d'accélérer la formation en sélectionnant un lot et en forçant le poids à être distribué près de 0, ni trop grand, ni trop petit.
Le choisir
Pour moi, le mini-batch est un must car il peut accélérer le processus et améliorer les performances du réseau à chaque fois.
L1 et L2 sont tous deux similaires et je préférerais L1 en petit réseau.
Idéalement, le décrochage devrait s'appliquer en cas de problème de variation importante ou de sur-ajustement.
Enfin et surtout, je suis d'accord avec Neil Slater que cela dépend de la situation et qu'il n'y aura jamais de solution optimale.
Je vous recommande de lire ceci pour plus d'informations. C'est un très bon matériel. http://neuralnetworksanddeeplearning.com/chap3.html
la source
Considérez ces choix algorithmiques comme des hyperparamètres supplémentaires et optimisez-les de la même manière que pour vos autres hyperparamètres. Cependant, cela nécessite généralement plus de données.
la source