CS231n Lecture6-Training Neural Networks, part I study notes

一 、 Fonction d'activation couramment utilisée

1. Sigmoïde

  • Autocollants
À l'heure actuelle, l'utilisation est réduite et les principaux inconvénients sont les suivants:
  • Il y a des explosions de gradient et des disparitions de gradient. Lors de la rétropropagation, les dégradés disparaissent facilement et lors de l'initialisation des paramètres de poids, les explosions de gradient sont faciles à produire, de sorte que le réseau n'apprend pas grand-chose.
  • Non centré sur zéro, le problème possible est que lors d'une rétropropagation, le gradient est toujours positif ou négatif et de mauvaises mises à jour des paramètres dynamiques se produiront.

2. Fishy

  • Autocollants

  • Il y a toujours le problème de l'explosion et de la disparition du gradient, mais le centre est zéro. Le deuxième problème de Sigmoid n'existe plus.

3. ReLU

  • Autocollants

  • Ces dernières années, c'est une fonction d'activation relativement populaire.

Avantages et inconvénients:
  • On constate que le taux de convergence de la méthode de descente de gradient stochastique est fortement accéléré par rapport à Sigmoid et Tanh.
  • Le coût de calcul est moindre.
  • Il peut y avoir un changement de gradient à 0, qui ne peut plus être mis à jour.

二 、 Architectures de réseaux neuronaux

  1. Nous convenons généralement que lorsque l'on parle du nombre de couches de réseau neuronal, la couche d'entrée n'est pas incluse.
  2. Nous ne pouvons pas utiliser de petits réseaux parce que nous avons peur du sur-ajustement. Nous devons utiliser la régularisation pour réduire le sur-ajustement.

三 、 Prétraitement des données

  • Soustraction moyenne: le zéro est centré en soustrayant la moyenne de chaque dimension, ce qui signifie que le point central des données est transformé en l'origine; normalisé (normalisé) consiste à mettre à l'échelle les données, il existe plusieurs formes, l'une à l'échelle à 0 Entre ~ 1, vous pouvez également zoomer sur -1 ~ 1. La normalisation signifie que la moyenne est 0 et la variance est 1.
  • Qu'est-ce que SVD? ? ?
  • L'opération de blanchiment est basée sur les données de la base d'entités, et chaque dimension est divisée par la valeur d'entité pour normaliser l'échelle.
  • Un écueil courant est que lorsque les données sont prétraitées, le calcul de la moyenne des données consiste uniquement à calculer l'ensemble de formation, puis à utiliser cette moyenne pour soustraire dans (l'ensemble de formation, l'ensemble de validation, l'ensemble de tests), plutôt que de calculer la moyenne de toutes les données , Puis soustrayez et divisez l'ensemble de données.
  • Cette pièce n'est pas comprise et nécessite la connaissance de l'algèbre linéaire ultérieure.

四 、 Initialisation du poids

  1. Les problèmes courants sont:
  • Tous les poids sont initialisés à 0, ce qui n'est pas possible, car chaque neurone calculera le même résultat, et le calcul du gradient mettra à jour les mêmes paramètres pendant le processus de propagation arrière. L'initialisation raisonnable est la moitié du poids est positive et la moitié du poids Est négatif.
  • Le poids de l'initialisation, nous voulons être aussi proche de 0 que possible, c'est-à-dire que le poids de l'initialisation aléatoire est aussi petit que possible. Mais cela ne signifie pas que plus le nombre est petit, mieux c'est. Par exemple, dans la couche de réseau neuronal, si le poids initial est trop petit, le gradient de propagation arrière sera petit.
  • L'heuristique recommandée est d'initialiser le vecteur de poids de chaque neurone à :, w = np.random.randn(n) / sqrt(n)nest le nombre d'entrées.
  • Dans la fonction d'activation ReLU, la méthode d'initialisation recommandée est:w = np.random.randn(n) * sqrt(2.0/n)
  1. Normalisation par lots: elle est utilisée pour améliorer la robustesse et est également utilisée comme prétraitement avant chaque couche réseau pour s'intégrer au réseau lui-même de manière différenciable.

五 、 Régularisation

  • Utilisé pour empêcher le sur-ajustement du réseau
  1. Régularisation L2: Si elle n'est pas concentrée sur la sélection explicite de fonctionnalités, la régularisation L2 est meilleure que la régularisation L1. L'accent est mis sur les données divergentes et pénalisant sévèrement le vecteur de poids maximal.
  2. Régularisation L1: seules les données clairsemées les plus importantes sont utilisées, non affectées par le bruit.
  3. Contraintes de norme maximale: une limite supérieure absolue est imposée sur la taille du vecteur de poids de chaque neurone, et une descente de gradient de projection est utilisée pour imposer des contraintes. L'une de ses caractéristiques attrayantes est que même lorsque le taux d'apprentissage est trop élevé, le réseau n'explosera pas car les mises à jour sont toujours limitées.
  4. Abandon: est une méthode très efficace. Le décrochage peut être obtenu en gardant un neurone activé avec une certaine probabilité p (hyperparamètre) ou en le mettant à 0. (Autocollant)

六 、 Fonctions de perte

  • SVM (texture)

  • Softmax

  • Perte L2 : il est plus difficile à optimiser que le Softmax stable, et ses exigences sont très élevées, et sa robustesse est médiocre, car des valeurs extrêmes peuvent provoquer d'énormes gradients.

七 、 Apprentissage

1. Contrôles de gradient

Je suppose que tu aimes

Origine www.cnblogs.com/tsruixi/p/12728473.html
conseillé
Classement