Apprentissage d’un perceptron simpliste.

Consultez la version mise à jour de cette page sur neural-networks.io.

Simple perceptron

Considérons le simple perceptron ci-dessous avec une fonction de transfert donnée par f(x)=x pour simplifier les calculs:

Fonction de transfert

La fonction de transfert est donnée par:

 y= w_1.x_1 + w_2.x_2 + ... + w_N.x_N = \sum\limits_{i=1}^N w_i.x_i

Erreur de sortie

Dans les réseaux de neurones artificiels, l’erreur que l’on souhaite minimiser est donnée par:

 E=(y

avec:

  • E l’erreur de sortie
  • y la sortie souhaitée (de la base d’exemples d’entrainement)
  • y la sortie réelle (du réseau)

En pratique et pour simplifier la suite des équations, l’erreur est divisée par 2:

 E=\frac{1}{2}(y

Descente de gradient

L’algorithme de descente de gradient utilisé pour entraîner le réseau (i.e. mettre à jour les poids) est donné par:

 w_i

avec:

  • w_i la valeur des poids avant mise à jour
  • w_i la valeur des poids après mise à jour
  • \eta le taux d’apprentissage (learning rate)

Dérivée de l’erreur

Dérivons l’erreur:

 \frac{dE}{dw_i} = \frac{1}{2}\frac{d}{dw_i}(y

Grâce à la formule de dérivation des fonctions composées [  (f \circ g) ] l’équation précédente peut être réécrite:

 \frac{dE}{dw_i} = \frac{2}{2}(y

Comme  y= w_1.x_1 + w_2.x_2 + ... + w_N.x_N :

 \frac{dE}{dw_i} = -(y

Mise à jour des poids

Les poids peuvent être mis à jour avec la formule suivante:

 w_i

En conclusion :

 w_i

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *