Réseaux de neurones

Perceptron, activations, multi-couches : le fil XOR

Dans ce chapitre, vous apprendrez à

Outils : NumPy

9 exercices

Chaque exercice est corrigé automatiquement, dans le navigateur. Les énoncés complets sont accessibles avec un compte.

  1. À quoi ça sert dans la vraie vie

    Les IA dont tout le monde parle sont des réseaux de neurones, et toutes sont bâties à partir d'une même petite brique, répétée des millions de fois. - Lire l'écriture. En 1989, Yann LeCun et ses collègues des…

  2. Portail logique

    Vous avez une machine très simple. Elle prend deux entrées binaires (x1x_1 et x2x_2, valant 0 ou 1) et produit une sortie binaire (0 ou 1). La machine fonctionne ainsi : - Elle calcule…

  3. Frontière invisible

    On vous donne des points en 2D, chacun coloré en rouge (classe 0) ou bleu (classe 1) :

  4. Apprentissage automatique

    Au problème précédent, vous avez trouvé (w1,w2,b)(w_1, w_2, b) à la main. Mais si les données changent, il faut tout recommencer... Écrivez une fonction train(X, y, n_iter) qui trouve automatiquement les bons poids en…

  5. Neurone qui doute

    Le perceptron répond par un oui/non sec (seuil dur) et cale dès que les deux groupes se chevauchent : aucune droite ne les sépare parfaitement, alors sa règle tourne en rond. Donnons-lui de la nuance. Au…

  6. Deux couches valent mieux qu'une

    Souvenez-vous du XOR, impossible avec une seule machine. Et si on en enchaînait deux ? Architecture à deux étages : Étage 1 : deux machines en parallèle : -…

  7. Revanche du XOR

    Au problème précédent, vous avez vaincu XOR en enchaînant deux étages de machines à seuil, réglés à la main : trois neurones, huit nombres épars, un point traité à la fois. Un réseau réel ne fonctionne jamais ainsi. Il…

  8. Chaîne universelle

    Votre réseau XOR de l'exercice précédent a une architecture figée : deux étages, écrits en dur. Mais rien n'oblige un réseau à avoir deux couches, ni des couches de même taille. On veut pouvoir décrire n'importe…

  9. Ingrédient secret

    Jusqu'ici, votre réseau utilise la fonction seuil (step) entre les couches : 0 ou 1, rien entre les deux. Problème : la dérivée de cette fonction est nulle partout (et n'existe pas en 0). Le gradient ne dit donc…