Aller au contenu
Kudos AI

Neural Network From Scratch

Un réseau à propagation avant en NumPy, avec rétropropagation dérivée à la main et validée par gradients numériques : le calcul différentiel est prouvé, non pas supposé.

Python (NumPy)actif

Un perceptron multicouche écrit uniquement avec NumPy, conçu pour rendre la rétropropagation concrète. La passe avant, la fonction de perte et les gradients analytiques de chaque couche sont dérivés à la main puis implémentés directement, et la discipline centrale du projet est la vérification des gradients : chaque gradient analytique est comparé à une estimation par différences finies, et l’implémentation n’est acceptée que lorsque l’erreur relative descend à l’ordre de 1e-7. C’est ce contrôle qui transforme la rétropropagation d’une formule vue en une formule vérifiée. Le réseau est ensuite entraîné sur XOR - choisi parce qu’aucune couche linéaire seule ne peut le représenter, ce qui fait de la nécessité d’une couche cachée un fait démontré plutôt qu’une affirmation. L’implémentation est en cours et aucun dépôt source n’a encore été publié.

Points forts

  • Gradients analytiques dérivés par couche et vérifiés par différences finies à ~1e-7 d’erreur relative
  • XOR comme cas travaillé, avec l’argument de séparabilité linéaire posé avant la construction du réseau
  • Activation, perte et initialisation interchangeables pour exposer leur effet sur la convergence
  • Aucune différentiation automatique : la règle de chaîne est écrite, non déléguée

Articles associés

8 min de lectureNeural Networks

What Is a Neural Network?

Layers as parameterised transformations, the forward pass, and why depth and non-linearity are not optional: a proof that no single linear layer can compute XOR, and a two-layer network that does, worked entirely by hand.

Apprentissage profondMathématiques
8 min de lectureNeural Networks

Backpropagation and Gradient Descent

How a neural network learns: the loss as a function of weights, gradient descent, and backpropagation as the chain rule applied backwards, with every partial derivative of a small network computed by hand and checked against autograd.

Apprentissage profondOptimisationMathématiques