Introduction aux réseaux de neurones : exercices sur l'utilisation de Playground

Un premier réseau de neurones

Dans cet exercice, vous allez entraîner votre premier petit réseau de neurones. Les réseaux de neurones permettent d'apprendre des modèles non linéaires sans avoir à recourir à des croisements de caractéristiques explicites.

Tâche 1 : le modèle contient des combinaisons données de deux caractéristiques d'entrées dans un seul neurone. Ce modèle peut-il apprendre des non-linéarités ? Exécutez-le pour vérifier votre intuition.

Tâche 2 : passez le nombre de neurones dans la couche cachée de 1 à 2, et remplacez l'activation linéaire par une activation non linéaire, par exemple ReLU. Pouvez-vous créer un modèle capable d'apprendre des non-linéarités ?

Tâche 3 : poursuivez l'expérience en ajoutant ou en supprimant des couches cachées et des neurones dans les couches. N'hésitez pas non plus à modifier les taux d'apprentissage, la régularisation et les autres paramètres d'apprentissage. Quel est le plus petit nombre de nœuds et de couches que vous pouvez utiliser et qui donne une perte d'évaluation de 0,177 ou moins ?

(Les réponses s'affichent juste en dessous de l'exercice.)



Initialisation du réseau de neurones

Cet exercice utilise à nouveau les données XOR, mais se concentre sur la reproductibilité de l'apprentissage des réseaux de neurones et sur l'importance de l'initialisation.

Tâche 1 : exécutez le modèle donné quatre ou cinq fois. Avant chaque essai, cliquez sur le bouton Réinitialiser le réseau pour obtenir une nouvelle initialisation aléatoire. (Le bouton Réinitialiser le réseau est la flèche circulaire de réinitialisation qui se trouve juste à gauche du bouton "Lecture".) Laissez l'essai exécuter au moins 500 pas pour assurer la convergence. Vers quelle forme le résultat de chaque modèle converge-t-il ? Que peut-on en déduire sur le rôle de l'initialisation dans une optimisation non convexe ?

Tâche 2 : essayez d'augmenter légèrement la complexité du modèle en ajoutant une couche et quelques nœuds. Répétez les essais de la tâche 1. Les résultats sont-ils plus stables ?

(Les réponses s'affichent juste en dessous de l'exercice.)



Réseau de neurones en spirale

Cet ensemble de données est une spirale de bruit. Bien évidemment, un modèle linéaire va échouer ici, mais même des croisements de caractéristiques définis manuellement peuvent être difficiles à construire.

Tâche 1 : entraînez le meilleur modèle que vous pouvez en utilisant uniquement X1 et X2. N'hésitez pas à supprimer ou à ajouter des couches et des neurones, et à changer les paramètres d'apprentissage tels que le taux d'apprentissage, le taux de régularisation et la taille du lot. Quelle est la meilleure perte d'évaluation que vous pouvez obtenir ? La surface de sortie du modèle est-elle lisse ?

Tâche 2 : même avec les réseaux de neurones, un certain niveau d'extraction de caractéristiques est nécessaire pour obtenir les meilleures performances possible. Essayez d'ajouter des caractéristiques de produits croisées et d'autres transformations telles que sin(X1) et sin(X2). Le modèle est-il plus performant ? La surface de sortie du modèle est-elle plus lisse ?

(Les réponses s'affichent juste en dessous de l'exercice.)



Envoyer des commentaires concernant…

Cours d'initiation au machine learning