Aller au contenu
English

Pourquoi les couches ont besoin d'activations

  • Leçon 3
  • 55 min
  • Module 1 : Ce qu'est un réseau de neurones

Ce que vous saurez faire

Voyez pourquoi chaque couche cachée a besoin d’une activation. Sans activation, un réseau profond n’est pas plus puissant qu’un seul neurone : sa frontière reste une droite. Avec une activation, la frontière peut se courber autour des données.

Carnet JupyterLes frontières simplifiées, dans un carnet Jupyter (facultatif)Colab · Kaggle · GitHub · en anglais

Le carnet (notebook) Jupyter entraîne les réseaux de l’explorateur avec scikit-learn et trace leurs frontières. Il montre aussi comment deux couches se réduisent à une seule et effectue les calculs de l’exercice du module. Vous pouvez suivre la leçon sans code. Environ 20 minutes.

Le carnet est en anglais. Colab et Kaggle ouvrent votre propre copie. Il faut un compte Google ou Kaggle gratuit. Vous êtes bloqué ? Consultez le carnet de solution.

Avant de commencerCe qu’il faut savoir et avoir sous la mainEnviron 55 minutes

Ce que vous devez savoir

Ce qu’il vous faut sur votre ordinateur

  • Un navigateur. Le carnet facultatif s’ouvre dans Colab ou Kaggle et ne nécessite aucune installation.

Les réseaux de l’explorateur ont été entraînés avec scikit-learn 1.9.1.

Des pièces de monnaie et des boutons sont posés sur une table. Les boutons forment un anneau, et les pièces sont au milieu. Séparez-les avec une seule règle droite. Peu importe comment vous tournez la règle, certains boutons restent du côté des pièces. Une droite ne peut pas entourer un anneau.

Prenez maintenant une règle pliante, comme celle des menuisiers, avec des articulations. Avec une articulation, vous pouvez former un angle. Avec quatre articulations, vous pouvez former un carré autour des pièces. Avec beaucoup de petits segments, vous pouvez suivre presque n’importe quelle courbe. Chaque articulation ajoute un angle, et les segments entre les articulations restent droits.

Un réseau de neurones fonctionne comme la règle pliante. Cette leçon montre ce qui crée les articulations : l’activation. Elle montre aussi que sans activations, un réseau reste une règle droite, quel que soit son nombre de couches.

Le problème : les couches empilées se réduisent à une seule

Section intitulée « Le problème : les couches empilées se réduisent à une seule »

La leçon précédente construisait des couches à partir de sommes pondérées, sans activation. Voici le problème qui en découle. Prenez le plus petit réseau possible : une entrée x, un neurone caché et un neurone de sortie, sans activation.

  • Le neurone caché calcule h = 2x + 1.
  • Le neurone de sortie calcule y = 3h − 4.

Suivez deux entrées dans ce réseau. Pour x = 0 : h = 1, donc y = 3 − 4 = −1. Pour x = 1 : h = 3, donc y = 9 − 4 = 5. Chaque augmentation de 1 de x ajoute 6 à y.

Remplacez maintenant h dans la deuxième expression par la première : y = 3 × (2x + 1) − 4 = 6x + 3 − 4 = 6x − 1. Deux couches avec quatre paramètres donnent une seule droite, qu’un seul neurone avec deux paramètres pourrait aussi donner. La couche intermédiaire n’a rien ajouté.

Ce résultat n’est pas dû au hasard de ces nombres. Une somme pondérée de sommes pondérées est toujours une seule somme pondérée. Avec 2 entrées, 16 neurones cachés et aucune activation, les 65 paramètres décrivent encore une seule droite. Vous pouvez empiler 100 couches de ce type : le réseau entier reste l’équivalent d’un seul neurone.

La solution consiste à placer une fonction qui n’est pas une droite après chaque neurone caché. C’est l’activation du neurone. La plus courante est très simple :

ReLU(z) = max(0, z) : gardez z s’il est positif; remplacez-le par 0 s’il est négatif.

Le nom abrège unité linéaire rectifiée (rectified linear unit). En électronique, un redresseur laisse passer le courant dans un seul sens. ReLU laisse passer les valeurs positives et bloque les valeurs négatives.

Placez ReLU après le neurone caché du petit réseau : h = max(0, 2x + 1), et y = 3h − 4.

x 2x + 1 h = max(0, 2x + 1) y = 3h − 4 sans ReLU : 6x − 1
−2 −3 0 −4 −13
−1 −1 0 −4 −7
−0,5 0 0 −4 −4
0 1 1 −1 −1
1 3 3 5 5
2 5 5 11 11

Lisez la colonne y. À gauche de x = −0,5, y reste à −4 : le neurone caché est « désactivé ». À droite, y augmente de 6 à chaque pas : le neurone est « activé ». La sortie forme donc deux segments droits, avec un angle à x = −0,5. Un neurone ReLU a créé une articulation dans la règle.

  • Sans activation : y = 6x − 1
  • Avec ReLU : y = 3 × max(0, 2x + 1) − 4
Le même réseau à deux couches, avec et sans ReLU dans le neurone caché. Sans ReLU, le résultat est une seule droite. Avec ReLU, la ligne forme un angle là où le neurone caché s'active.
Description textuelle du graphique

L’axe horizontal représente l’entrée x, de −3 à 3; l’axe vertical représente la sortie y. La ligne pointillée représente le réseau sans activation : la droite y = 6x − 1, de −19 à x = −3 jusqu’à 17 à x = 3. La ligne continue représente le réseau avec ReLU. Elle reste horizontale à y = −4 pour tout x inférieur à −0,5. Ensuite, elle monte avec la même pente que la ligne pointillée. Les deux lignes se confondent à partir de x = −0,5. L’angle se trouve à x = −0,5.

Avec plus de neurones cachés, chacun a son propre point d’activation, donc la sortie présente plus d’angles. Avec deux entrées plutôt qu’une, chaque neurone ReLU plie le plan le long d’une droite, et les segments forment une figure. C’est ce que montre l’explorateur ci-dessous.

Les frontières de décision sur des données simplifiées

Section intitulée « Les frontières de décision sur des données simplifiées »

Une frontière de décision se trouve là où un classificateur change de réponse. D’un côté, il indique le groupe A; de l’autre, le groupe B. Pour un modèle qui donne un score de 0 à 1, elle se trouve là où le score vaut exactement 0,5. Un neurone avec l’activation logistique est une régression logistique. Sa frontière est toujours une droite, parce que z = 0 le long d’une droite.

Pour voir les frontières, les données doivent tenir sur un écran. Les données simplifiées ont donc deux caractéristiques, deux groupes et 200 points. Le groupe B (triangles) se trouve dans un disque au milieu; le groupe A (cercles) forme un anneau autour. Un deuxième ensemble de 200 nouveaux points, créés de la même façon, vérifie chaque réseau sur des données jamais utilisées pour l’entraîner.

Priya a réellement entraîné chaque réseau de l’explorateur. Chacun a 2 entrées, une couche cachée de 0, 2, 4, 8 ou 16 neurones et un neurone de sortie logistique. La couche cachée utilise soit aucune activation, soit ReLU. Les zones colorées et la frontière proviennent des vrais scores de chaque réseau.

Explorer

Courber la frontière : les neurones cachés et l'activation

Poids et biais
65
Bien classés sur les 200 points d’entraînement
51,0 %
Bien classés sur 200 nouveaux points
52,0 %

16 neurones cachés et aucune activation : la frontière reste une seule ligne droite. Sans activation, les deux couches se ramènent à une seule somme pondérée : 65 poids font donc le travail de 3.

  • Groupe A (cercles)
  • Groupe B (triangles)
  • Frontière : le réseau hésite à 50/50
−101−1,5−1−0,500,511,5Caractéristique 1Caractéristique 2
−101−101Caractéristique 1Caractéristique 2
Les vraies frontières de décision de petits réseaux sur 200 points simplifiés : scikit-learn MLPClassifier. Les zones colorées montrent la réponse du réseau; la ligne marque un partage de 50:50.
Description textuelle de l’explorateur

L’explorateur montre 200 points d’entraînement : le groupe B, 100 triangles, dans un disque au milieu; le groupe A, 100 cercles, dans un anneau autour. Les zones colorées montrent où le réseau indique le groupe A et où il indique le groupe B. Une ligne foncée marque la frontière. Deux commandes permettent de choisir le nombre de neurones cachés (0, 2, 4, 8, 16) et l’activation de la couche cachée (aucune ou ReLU). L’affichage donne le nombre de paramètres et la proportion de bonnes réponses sur les points d’entraînement et sur 200 nouveaux points.

Sans activation, avec 0, 2, 4, 8 ou 16 neurones cachés : la frontière est toujours une seule droite qui traverse le disque. Environ la moitié des points sont bien classés. Avec 0 neurone : 3 parameters, 51.0% of the training points and 52.0% of the new points right. Avec 16 neurones et aucune activation : 65 parameters, 51.0% of the training points and 52.0% of the new points right.

ReLU : avec 2 neurones, la frontière forme deux segments droits et un angle : 9 parameters, 66.0% of the training points and 65.0% of the new points right. Avec 4 neurones, elle forme une figure à quatre côtés autour du disque : 17 parameters, 97.5% of the training points and 96.5% of the new points right. Avec 8 neurones, une figure avec plus de côtés : 33 parameters, 99.0% of the training points and 98.0% of the new points right. Avec 16 neurones, presque un cercle : 65 parameters, 100.0% of the training points and 100.0% of the new points right.

Qu’avez-vous vu? Sans activation, la frontière est une seule droite, quel que soit le nombre de neurones. Seize neurones classent correctement 51.0% des points d’entraînement, comme un seul neurone, 51.0% : l’équivalent d’un choix au hasard. Les 62 paramètres supplémentaires n’ont rien apporté.

Avec ReLU, chaque neurone caché ajoute un segment droit. Deux neurones forment un angle (66.0%). Quatre forment une figure fermée à quatre côtés (97.5%). Huit et seize forment des figures qui suivent le disque de près (99.0% et 100.0%). Les nouveaux points confirment le résultat : 100.0% avec 16 neurones. Mêmes données, même nombre de paramètres que pour la droite; seule l’activation a fait la différence.

ReLU est le choix habituel pour les couches cachées : son calcul est peu coûteux, et les réseaux avec ReLU s’entraînent bien. Vous en verrez d’autres, mais elles ont le même rôle. Elles ne sont pas des droites, donc les couches ne peuvent pas se réduire à une seule.

La couche de sortie a un autre rôle : elle doit donner une réponse sous la bonne forme. Pour une réponse oui ou non, le neurone de sortie utilise la fonction logistique. En apprentissage profond, on l’appelle habituellement la sigmoïde (« en forme de S »). Pour une réponse parmi plusieurs, comme les cinq équipes de Larkfield, la couche de sortie donne cinq scores. Une fonction appelée softmax les transforme en cinq probabilités dont la somme vaut 1. Le module 3 enseigne softmax, dans La perte : à quel point le réseau se trompe-t-il?.

  • ReLU
  • Logistique (sigmoïde)
Deux activations. ReLU vaut 0 pour tout z négatif et z lui-même pour un z positif. La fonction logistique (sigmoïde) transforme chaque z en une valeur entre 0 et 1.
Description textuelle du graphique

L’axe horizontal représente z, de −4 à 4. ReLU est une ligne horizontale à 0 pour tout z négatif. À partir de z = 0, elle monte avec une pente de 1 et atteint 4 à z = 4. La fonction logistique est une courbe en S : 0,018 à z = −4, 0,5 à z = 0 et 0,982 à z = 4. Elle ne descend jamais sous 0 et ne dépasse jamais 1.

Le réseau de billets de soutien du cours a une ReLU après sa couche cachée : 2 864 comptes de mots → 64 neurones → ReLU → 5 scores d’équipe. ReLU permet aux 64 neurones cachés de devenir 64 caractéristiques différentes. Sans elle, le réseau entier serait une seule somme pondérée des comptes de mots. Ce serait un modèle linéaire, comme la régression logistique de la première leçon.

Voici une remarque pour être transparent. Sur les billets, ce modèle linéaire dirige déjà correctement 98,8 % des billets. Les courbures comptent donc beaucoup moins ici que pour les anneaux. Elles comptent quand le motif est courbe : quand un mot signifie une chose seul et une autre près d’autres mots. Les modules 5 et 6 cherchent de tels motifs dans les billets.

Plus de neurones : plus de courbures, plus de risques

Section intitulée « Plus de neurones : plus de courbures, plus de risques »

Si 16 neurones suivent si bien les anneaux, est-il toujours préférable d’avoir plus de neurones? Regardez un deuxième jeu de données simplifié, les « deux lunes ». Ses deux groupes ressemblent à deux bananes courbées qui s’entrecroisent, avec plus de bruit que les anneaux. Les points des deux groupes se chevauchent un peu, donc aucune frontière ne peut être parfaite.

Explorer

Deux lunes : plus de courbures, plus de risques

Poids et biais
33
Bien classés sur les 200 points d’entraînement
96,5 %
Bien classés sur 200 nouveaux points
94,0 %

8 neurones cachés avec ReLU : la frontière est faite de segments droits qui se rejoignent en des coudes. Il classe bien 96,5 % des points d’entraînement, contre 83,5 % pour un seul neurone.

  • Groupe A (cercles)
  • Groupe B (triangles)
  • Frontière : le réseau hésite à 50/50
−101−1012Caractéristique 1Caractéristique 2
−10102Caractéristique 1Caractéristique 2
Les vraies frontières de décision sur les données simplifiées des deux lunes : scikit-learn MLPClassifier. Comparez les points d'entraînement aux nouveaux points.
Description textuelle de l’explorateur

Le même explorateur sur les données des deux lunes. Les 100 cercles (groupe A) forment une lune supérieure. Les 100 triangles (groupe B) forment une lune inférieure qui s’entrecroise avec elle. Les groupes se chevauchent un peu près du milieu.

Sans activation : toujours une droite diagonale, 65 parameters, 83.5% of the training points and 85.0% of the new points right, comme avec un seul neurone. ReLU avec 2 neurones : presque la même droite, 9 parameters, 83.0% of the training points and 85.5% of the new points right. ReLU avec 4 neurones : la frontière se courbe autour des extrémités des lunes, 17 parameters, 95.5% of the training points and 93.5% of the new points right. ReLU avec 8 neurones : 33 parameters, 96.5% of the training points and 94.0% of the new points right. ReLU avec 16 neurones : la frontière présente des pointes marquées qui s’étendent vers des points d’entraînement isolés, 65 parameters, 97.0% of the training points and 90.5% of the new points right.

Avec 8 neurones ReLU, le réseau classe correctement 96.5% des points d’entraînement et 94.0% des nouveaux points. Avec 16, il classe correctement plus de points d’entraînement, 97.0%, mais moins de nouveaux points, 90.5%. Ses courbures supplémentaires s’étendent vers des points d’entraînement bruités et isolés. Elles suivent des détails dus au hasard dans ces 200 points, et non la vraie forme des lunes. C’est du surapprentissage, maintenant illustré.

Regardez aussi les 2 neurones ReLU : 83.0%, pas mieux qu’un seul neurone. Deux courbures ne suffisaient pas ici, et cet entraînement a trouvé presque la même droite. Ces résultats dépendent aussi des poids initiaux aléatoires : rien ne garantit qu’un réseau utilise tous ses neurones.

La règle pour la largeur et la profondeur est donc la suivante. Plus de neurones et de couches donnent plus de courbures, et plus de risques d’apprendre le bruit. Choisissez la taille avec les données de validation, comme Contrôler la complexité choisissait la profondeur d’un arbre dans le cours d’apprentissage automatique. Le module 4 ajoute des outils qui permettent à un grand réseau d’apprendre sans surapprentissage.

  1. Dans le premier explorateur (les anneaux), faites votre prédiction, puis sélectionnez I have made my prediction (j’ai fait ma prédiction).
  2. Gardez None (aucune). Sélectionnez 0, 2, 4, 8 et 16 neurones. Chaque fois, observez la ligne et la proportion de points d’entraînement bien classés. Vous devriez toujours voir une seule droite, et de 50,5 % à 51,0 %.
  3. Sélectionnez ReLU et 2. Vous devriez voir un angle et 66,0 %.
  4. Sélectionnez 4, 8 et 16. Vous devriez voir 97,5 %, 99,0 % et 100,0 % sur les points d’entraînement.
  5. Sélectionnez 0 avec ReLU. Vous devriez revoir la droite : sans couche cachée, il n’y a aucun endroit où placer l’activation.
  6. Écrivez deux phrases : que change l’activation, et que changent les neurones supplémentaires?
Afficher un exemple de réponse

« Sans activation, la frontière reste une seule droite, peu importe combien de neurones j’ajoute, car les couches forment une seule somme pondérée. Avec ReLU, chaque neurone caché ajoute un segment droit avec un angle, donc plus de neurones permettent à la frontière d’entourer le disque. »

Changez une condition : les données. Dans le deuxième explorateur, vous avez prédit quel nombre de neurones ReLU classe correctement le plus de nouveaux points. Vérifiez maintenant : sélectionnez ReLU, puis 2, 4, 8 et 16 neurones, et notez les deux exactitudes pour chacun. Quelle taille choisiriez-vous si seules les réponses sur les nouveaux points comptaient?

Afficher la réponse
Neurones ReLU Points d’entraînement bien classés Nouveaux points bien classés
2 83.0% 85.5%
4 95.5% 93.5%
8 96.5% 94.0%
16 97.0% 90.5%

Choisissez 8 neurones : ce réseau classe correctement le plus de nouveaux points, 94.0%. Seize neurones semblent meilleurs sur les points d’entraînement, mais moins bons sur les nouveaux points. Cet écart est un signe de surapprentissage. Quatre neurones font presque aussi bien avec moitié moins de paramètres; c’est donc aussi un choix raisonnable. Avec seulement 200 nouveaux points, la différence entre 4 et 8 est trop petite pour compter : un demi-point de pourcentage, soit 1 point sur 200. La baisse avec 16 est plus grande.

Erreur courante

Un réseau profond sans activations

Symptôme : Tomás construit un réseau pour les anneaux avec trois couches cachées de 64 neurones chacune : 8 577 paramètres. Il s’entraîne sans erreur, mais classe correctement seulement 49,5 % des points d’entraînement, pas mieux qu’un seul neurone. Avec ReLU après chaque couche cachée, le même réseau atteint 100 %.

Cause : il a oublié les activations. Une couche en code, comme nn.Linear de PyTorch au module 2, calcule seulement la somme pondérée plus le biais. Elle n’a aucune activation, à moins que vous en ajoutiez une. Ses trois couches se réduisent donc à une seule somme pondérée, et la frontière est une droite.

Solution : placez une activation, comme ReLU, après chaque couche cachée. Ne placez pas ReLU après la couche de sortie : celle-ci utilise la sigmoïde ou softmax pour donner sa réponse. Pour vérifier un réseau, notez ses couches dans l’ordre et cherchez une activation entre chaque paire de couches de poids.

Vérifiez votre compréhension

Deux couches sans activation calculent h = 4x − 2, puis y = −0,5h + 3. Écrivez y comme une seule expression en x. Que montre ce résultat?

Afficher la réponse

y = −0,5 × (4x − 2) + 3 = −2x + 1 + 3 = −2x + 4. Les deux couches donnent une seule droite, qu’un seul neurone pourrait aussi donner. Une somme pondérée de sommes pondérées est une seule somme pondérée. Les couches sans activations n’ajoutent donc aucune puissance.

Vérifiez votre compréhension

Faites une prédiction : sur les anneaux, quelle frontière trace un réseau avec 8 neurones cachés et aucune activation? Et avec 8 neurones cachés ReLU?

Afficher la réponse

Sans activation : une seule droite, et environ la moitié des points bien classés (50,5 % dans l’explorateur). Le réseau est l’équivalent d’un seul neurone. Avec 8 neurones ReLU : une figure fermée composée de segments droits autour du disque. Il classe correctement 99,0 % des points d’entraînement et 98,0 % des nouveaux points.

Les exercices du module réunissent les trois leçons. Calculez d’abord un tout petit réseau à la main. Utilisez ensuite l’explorateur pour expliquer pourquoi un réseau sans activations ne peut pas séparer des données courbes.

Exemple détaillé : un tout petit réseau à la main

Section intitulée « Exemple détaillé : un tout petit réseau à la main »

Le réseau a 2 entrées, 2 neurones cachés avec ReLU et 1 neurone de sortie avec la fonction logistique. Les poids sont inventés pour vous permettre de suivre chaque nombre.

  • neurone caché 1 : poids 2 et −1, biais 0;
  • neurone caché 2 : poids −1 et 1, biais −2;
  • neurone de sortie : poids 1,5 et −1 (pour les neurones cachés 1 et 2), biais −1, puis la fonction logistique.

L’entrée est (2, 1).

  1. Neurone caché 1 : 2 × 2 + (−1) × 1 + 0 = 3. ReLU conserve cette valeur : 3.
  2. Neurone caché 2 : (−1) × 2 + 1 × 1 − 2 = −3. ReLU la remplace par 0 : ce neurone est désactivé.
  3. Sortie : z = 1,5 × 3 + (−1) × 0 − 1 = 3,5.
  4. Fonction logistique : 1 ÷ (1 + e^(−3,5)) = 0,971. Le réseau est sûr à 97 % qu’il s’agit du groupe B.

Qu’a changé ReLU? Sans cette activation, le neurone caché 2 transmettrait −3, et z = 1,5 × 3 − 1 × (−3) − 1 = 6,5, soit un score de 0,998. ReLU a désactivé un neurone pour cette entrée. Pour une autre entrée, un autre neurone est désactivé. Ces changements d’état créent les courbures.

  1. Calculez le même réseau pour l’entrée (0, 3) : les deux neurones cachés avant et après ReLU, puis z, puis le score.
  2. Utilisez le premier explorateur pour expliquer à Omar, en trois ou quatre phrases, pourquoi un réseau sans activations ne peut pas séparer les anneaux. Utilisez les nombres que vous voyez.
Afficher le corrigé

1. L’entrée (0, 3). Neurone caché 1 : 2 × 0 + (−1) × 3 + 0 = −3, et ReLU donne 0. Neurone caché 2 : (−1) × 0 + 1 × 3 − 2 = 1, et ReLU conserve 1. Sortie : z = 1,5 × 0 + (−1) × 1 − 1 = −2. Score : 1 ÷ (1 + e²) = 1 ÷ 8,389 = 0,119, donc le réseau indique le groupe A. Cette fois, le neurone 1 est désactivé et le neurone 2 est activé : l’inverse de l’exemple détaillé.

2. Pour Omar. « Sans activations, chaque couche est une somme pondérée, et une somme pondérée de sommes pondérées reste une seule somme pondérée. Le réseau entier équivaut donc à un seul neurone, et sa frontière est une seule droite. Dans l’explorateur, 16 neurones sans activation classent correctement 51,0 % des points, comme avec 0 neurone. Une droite ne peut pas entourer un disque. Avec ReLU, les mêmes 16 neurones atteignent 100 %, parce que chaque neurone ajoute une courbure. »

Une réponse complète calcule les deux neurones cachés avant et après ReLU. Elle explique leur réduction à une seule somme avec les nombres de l’explorateur, pas seulement avec des mots.

Vérifiez votre compréhension

Rappel : nommez les deux étapes du calcul d'un neurone et donnez le nombre de paramètres d'une couche de 10 entrées et 4 neurones.

Afficher la réponse

Étape 1 : la somme pondérée des entrées plus le biais, z. Étape 2 : l’activation, une fonction fixe de z, comme ReLU ou la fonction logistique. Une couche de 10 entrées et 4 neurones a 10 × 4 = 40 poids et 4 biais : 44 paramètres.

Vérifiez votre compréhension

Expliquez ou prédisez : Tomás double le nombre de couches cachées d'un réseau sans activations, de 2 à 4. Que devient sa frontière de décision? Quel seul changement lui permettrait de se courber?

Afficher la réponse

Rien ne change dans ce qu’il peut tracer. Sans activations, 4 couches se réduisent à une seule somme pondérée, tout comme 2 couches. La frontière reste donc une seule droite. Le réseau a simplement plus de paramètres à entraîner. Ajouter une activation comme ReLU après chaque couche cachée permet à la frontière de se courber. Chaque neurone caché ajoute alors un segment droit avec un angle.

Vérifiez votre compréhension

Vérification des acquis : un neurone a des poids de 0,4 et −0,2, un biais de 0,1 et l'activation logistique. Calculez sa sortie pour les entrées 5 et 3, et expliquez pourquoi empiler des couches linéaires n'ajoute aucune capacité.

Afficher la réponse

z = 0,4 × 5 + (−0,2) × 3 + 0,1 = 2 − 0,6 + 0,1 = 1,5. La sortie est 1 ÷ (1 + e^(−1,5)) = 1 ÷ 1,223 = 0,818.

Empiler des couches linéaires n’ajoute aucune capacité, car une somme pondérée de sommes pondérées reste une seule somme pondérée. Par exemple, h = 2x + 1 et y = 3h − 4 donnent y = 6x − 1. Quel que soit leur nombre, les couches sans activations équivalent à une seule couche. La frontière de décision reste donc une droite. Une activation entre les couches, comme ReLU, empêche cette réduction.

Récapitulatif

Récapitulatif du module 1

  • L’apprentissage profond apprend ses propres caractéristiques à partir des entrées brutes, au fil des couches. Sur les billets de soutien de Larkfield, le modèle linéaire du cours Apprentissage automatique : du problème à un modèle fiable en achemine correctement 98,8 %. Il reste le modèle à utiliser pour l’acheminement. Le cours utilise cette tâche pour observer comment les réseaux apprennent.
  • Un neurone calcule une somme pondérée plus un biais, puis une activation. Avec l’activation logistique, c’est une régression logistique. Une couche regroupe plusieurs neurones qui lisent les mêmes entrées; un réseau est une chaîne de couches. Le réseau pour les billets, 2 864 → 64 → 5, a 183 685 paramètres.
  • Sans activations, les couches se réduisent à une seule : h = 2x + 1 et y = 3h − 4 forment une seule droite, y = 6x − 1. Avec ReLU, max(0, z), chaque neurone caché ajoute une courbure. Sur les anneaux, 16 neurones donnent 51,0 % sans activation et 100 % avec ReLU.
  • Plus de neurones ajoutent des courbures et augmentent le risque de surapprentissage. Sur les lunes, 16 neurones ReLU classent correctement 97,0 % des points d’entraînement, mais seulement 90,5 % des nouveaux points; 8 neurones atteignent 94,0 %.

Réinitialisation : ce module n’installe rien et n’enregistre rien sur votre ordinateur. Pour recommencer avec un explorateur, rechargez la page. Si vous avez utilisé un carnet (notebook) Jupyter, redémarrez-le : dans Colab, choisissez Runtime › Restart session (environnement d’exécution › redémarrer la session); dans Kaggle, Run › Restart & clear cell outputs (exécuter › redémarrer et effacer les sorties des cellules). Exécutez ensuite toutes les cellules à nouveau. Pour repartir de zéro, ouvrez de nouveau le carnet à partir du lien en haut de la leçon.

Ensuite, le module 2 transforme ces images en code. Les nombres d’un réseau se trouvent dans des tenseurs. Vous devez lire la forme de chaque tenseur avant d’exécuter quoi que ce soit.

Leçon suivante : Tenseurs et formes