Méthodes pour réduire le surajustement dans l'apprentissage en profondeur

Régularisation

sens régularisé

La régularisation est utilisée pour réduire le surajustement du réseau et réduire les erreurs d'ajustement. L'opération de régularisation consiste à ajouter un élément supplémentaire après la fonction de perte d'origine insérez la description de l'image ici, ce qui peut contraindre le poids du modèle. Une valeur plus élevée contraindra davantage le poids du modèle, et inversement. Habituellement, nous ne pénalisons que le poids w, mais pas b, car w a de nombreux paramètres et b n'en a qu'un, et pénaliser b a peu d'effet sur le résultat, il est donc généralement ignoré.

formule de régularisation

La formule de régularisation est la suivante, le premier élément est la perte d'entropie croisée et le dernier élément est l'élément de pénalité, qui est un élément supplémentaire ajouté à l'opération de régularisation. Cette formule est également appelée régularisation L2, car le terme de pénalité utilise la norme L2, qui est la somme des carrés de tous les poids. Il existe également une régularisation L1, c'est-à-dire que l'élément de pénalité adopte la norme L1 et que la norme L1 est la somme de tous les poids. Actuellement, la régularisation L2 est généralement utilisée.
insérez la description de l'image ici

Raisons pour lesquelles la régularisation peut réduire le surapprentissage

En supposant que λ devient infini, alors le poids w tend vers 0, et la plupart des neurones sont équivalents à aucun effet, alors le réseau de neurones tend à devenir une régression logistique, puis le réseau d'apprentissage profond passe du surajustement au sous-ajustement, donc, après l'ajout un terme de pénalité approprié, l'objectif de perte de poids peut être atteint lorsque les paramètres sont mis à jour. L'atténuation du poids signifie que les neurones atténués ont moins d'influence sur le réseau neuronal, ce qui simplifie le réseau neuronal complexe d'origine et atteint finalement un état d'ajustement optimal.

Régularisation des abandons

La régularisation des abandons peut également réduire le surapprentissage

La régularisation du décrochage est également appelée régularisation de désactivation aléatoire, nous utilisons généralement le décrochage inversé (inverse). Cela signifie que pendant le processus de formation du réseau d'apprentissage en profondeur, pour l'unité de réseau de neurones, il est temporairement écarté du réseau selon une certaine probabilité.
Un paramètre important dans la régularisation Dropout est keep_drop. Si keep_drop=0.8, vous devez supprimer 20 % des nœuds et ne conserver que 80 % des nœuds. Si keep_drop=1, vous les conserverez tous, ce qui équivaut à ne pas utiliser Régularisation des abandons.
Étant donné que la régularisation Dropout est ajoutée, elle ne montrera pas une tendance à la baisse monotone comme la régularisation L2. Par conséquent, dans le processus de candidature réel, nous définissons généralement keep_drop sur 1 en premier pour voir si la perte est monotone. Ajustez la régularisation L2 avant de modifier keep_drop.

Pourquoi Dropout peut réduire le surapprentissage

Le contenu suivant est cité de :
Auteur : zzkdev
Lien : https://www.jianshu.com/p/257d3da535ab
Source : Jianshu
"Parce que chaque fois que la valeur de poids est mise à jour avec les échantillons entrés dans le réseau, les nœuds cachés sont basés sur une certaine probabilité Apparaît de manière aléatoire, il ne peut donc pas être garanti que tous les 2 nœuds cachés apparaissent en même temps à chaque fois, de sorte que la mise à jour du poids ne dépend plus de l'action conjointe des nœuds cachés avec une relation fixe, empêchant certaines fonctionnalités d'être uniquement disponible sous d'autres caractéristiques spécifiques Dans le cas de l'effet, réduire la co-adaptabilité complexe entre les neurones.
Puisque les nœuds sont supprimés au hasard à chaque fois, la sortie du nœud suivant n'est plus aussi dépendante du nœud précédent, c'est-à-dire à-dire, il ne donnera pas le nœud précédent lors de l'attribution des poids. Un certain nœud sur la première couche ne se voit pas attribuer trop de poids, ce qui joue un rôle similaire au poids de compression de régularisation L2. L'abandon peut être considéré comme une sorte de moyenne de modèle
, En cas de sur-ajustement, bien que différents réseaux puissent avoir différents degrés de sur-ajustement, partager une fonction de perte équivaut à l'optimiser en même temps et à prendre la moyenne , de sorte qu'il peut efficacement empêcher le sur-ajustement L'occurrence de la combinaison.Pour chaque entrée d'échantillon dans le réseau (peut-être un échantillon ou un échantillon de lot), la structure de réseau correspondante est différente, mais toutes ces différentes structures de réseau partagent le même nœud inclus caché pondérations, cette architecture moyenne s'avère souvent très utile pour réduire les méthodes de surajustement."

augmentation des données

Y compris le retournement, la mise en miroir, l'agrandissement partiel, la réduction partielle, la distorsion, etc.

Arrêt anticipé (mécanisme d'arrêt anticipé)

Après chaque époque (ou après toutes les N époques) : obtenir les résultats du test sur le jeu de vérification. Au fur et à mesure que l'époque augmente, si l'erreur de test augmente sur le jeu de vérification, arrêtez l'entraînement ; utilisez le poids après l'arrêt comme paramètre final du réseau. La pratique générale consiste à enregistrer la meilleure précision de l'ensemble de vérification jusqu'à présent pendant le processus de formation. Lorsque la meilleure précision n'est pas atteinte pendant 10 époques consécutives (ou plus), on peut considérer que la précision ne s'améliorera plus.

Son inconvénient est qu'il ne prend pas de manières différentes pour résoudre les deux problèmes d'optimisation de la fonction de perte et de réduction de la variance, mais utilise une méthode pour résoudre les deux problèmes en même temps, et le résultat est que les choses à considérer deviennent plus compliqué. La raison pour laquelle il ne peut pas être géré indépendamment est que si vous arrêtez d'optimiser la fonction de coût, vous constaterez peut-être que la valeur de la fonction de coût n'est pas suffisamment petite et, en même temps, vous ne voulez pas surajuster.

Acho que você gosta

Origin blog.csdn.net/weixin_42999968/article/details/125644944
Recomendado
Clasificación