1. Apprendre
  2. /
  3. Cours
  4. /
  5. Apprentissage profond intermédiaire avec PyTorch

Connected

Exercice

Initialisation et activation

Les problèmes de gradients instables (qui s'évanouissent ou explosent) constituent un défi fréquent lors de l'entraînement de réseaux neuronaux profonds. Dans cet exercice et les suivants, vous allez étendre l'architecture du modèle que vous avez construite pour la classification de la potabilité de l'eau afin de la rendre plus résistante à ces problèmes.

Comme première étape, vous améliorerez l'initialisation des poids en utilisant la stratégie d'initialisation de He (Kaiming). Pour ce faire, vous devrez appeler l'initialiseur approprié du module torch.nn.init, qui a été importé pour vous sous le nom init. Ensuite, vous remplacerez les fonctions d'activation ReLU par défaut par ELU, souvent plus performante.

Instructions

100 XP
  • Appelez l'initialiseur de He (Kaiming) sur l'attribut de poids de la deuxième couche, fc2, de la même façon que pour fc1.
  • Appelez l'initialiseur de He (Kaiming) sur l'attribut de poids de la troisième couche, fc3, en tenant compte de la fonction d'activation différente utilisée dans la couche finale.
  • Mettez à jour les fonctions d'activation dans la méthode forward() en passant de relu à elu.