0% ont trouvé ce document utile (0 vote)
22 vues50 pages

RNA HSe FR 2324

Le document présente une introduction aux réseaux de neurones artificiels, expliquant leur architecture, leur fonctionnement et leur utilisation en apprentissage supervisé pour des tâches de classification et de régression. Il décrit les composants d'un réseau, notamment les couches, les neurones, et les paramètres associés, ainsi que des exemples pratiques tels que le réseau pour la fonction logique OU. Enfin, il aborde la notion de perceptron et la séparabilité linéaire des fonctions.

Transféré par

filali.aamine
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
22 vues50 pages

RNA HSe FR 2324

Le document présente une introduction aux réseaux de neurones artificiels, expliquant leur architecture, leur fonctionnement et leur utilisation en apprentissage supervisé pour des tâches de classification et de régression. Il décrit les composants d'un réseau, notamment les couches, les neurones, et les paramètres associés, ainsi que des exemples pratiques tels que le réseau pour la fonction logique OU. Enfin, il aborde la notion de perceptron et la séparabilité linéaire des fonctions.

Transféré par

filali.aamine
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Introduction

Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Les réseaux de neurones

Houcine Senoussi

December 1, 2023

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

1 Introduction

2 Definitions

3 Premiers exemples

4 Paramètres et hyperparamètres d’un RN

5 Apprentissage dans les RNs

6 Conclusion

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Introduction

Dans ce chapitre nous introduisons les réseaux de neurones


artificiels, leur architecture et leur fonctionnement.
Il s’agit d’une méthode d’apprentissage supervisé, utilisée
aussi bien en classification qu’en régression.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Qu’est-ce qu’un réseau de neurones?

Vu comme une boite noire (figure7), un réseau de neurones


est un système ayant des entrées numériques et de sorties
numériques.
Autrement dit, du point de vue mathématique, un réseau de
neurones est une fonction de Rn dans Rm .
Nous notons (x1 , . . . , xn ) les entrées du réseau et (ŷ1 , . . . , ŷm )
ses sorties.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Qu’est-ce qu’un réseau de neurones?

Figure: Un réseau de neurones vu comme boite noire.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Qu’est-ce qu’un réseau de neurones?

Problèmes de régression:
1 Étant donné une instance X décrite par un n-uplet
(x1 , . . . , xn ), le réseau doit calculer une valeur f (X ) ∈ Rm .
2 Dans ce cas, le RN a n entrées et m sorties dont la
signification est immédiate.
Problèmes de classification:
1 Étant donné une instance X décrite par un n-uplet
(x1 , . . . , xn ), le RN doit permettre de déterminer sa classe
(éventuellement ses classes dans le cas multi-labels) dans un
ensemble de classes {C1 , ..., Cp }.
2 Dans ce cas, le RN a n entrées et le nombre de sorties dépend
de p de la manière qui sera expliquée plus bas.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Qu’y a-t-il à l’intérieur de la boite noire ?


Un réseau de neurones se compose d’une suite de couches
(figure3): la couche d’entrée, les couches cachées et la
couche de sortie.
La couche d’entrée sert juste à introduire les données dans le
réseau.
Une couche cachée reçoit ses entrées de la couche précédente,
fait des calculs, et transmet les résultats à la couche suivante.
La couche de sortie reçoit ses entrées de la couche précédente,
fait des calculs, et transmet les résultats (les sorties du réseau,
donc) à l’extérieur.
Du point de vue mathématique, chaque couche cachée et la
couche de sortie sont donc des fonctions de Rn1 dans Rn2 , le
réseau de neurones est la composée de ces fonctions.
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Qu’y a-t-il à l’intérieur de la boite noire ?

Figure: Couches d’un RN.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Qu’y a-t-il à l’intérieur de la boite noire ?

Nous noterons L le nombre de couches du réseau, et


l = 1, . . . , L l’indice de chaque couche.
Compte tenu du sens unique de la circulation des données, le
réseau est qualifié de feedforward.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Zoom sur une couche

Une couche est un tableau de neurones.


Un neurone est une unité de calcul.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Le neurone
Le fonctionnement du neurone est décrit par la figure suivante
:

Figure: Un neurone.
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Le neurone

1 Le neurone (figure ci-dessus) reçoit en entrée n1 valeurs x1 ,


..., xn1 issues d’autres neurones.
2 Chaque neurone a n1 poids wi et un biais b qui lui sont
propres.
P
3 Le neurone calcule la valeur z = i wi ∗ xi +b.
4 Le neurone calcule sa sortie y = g (z) où g est la fonction
d’activation. Tous les neurones d’une même couche ont la
même fonction d’activation.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Zoom sur une couche

Chaque neurone de la couche l + 1 est connecté en entrée à


chaque neurone de la couche l. Autrement dit, il reçoit en
entrée la sortie de chacun de ces neurones.
Chaque neurone de la couche l est connecté en sortie à
chaque neurone de la couche l + 1. Autrement dit, il envoie
sa sortie à chacun de ces neurones.
Le nombre de poids d’un neurone (noté n1 ci-dessus) de la
couche l est donc égal au nombre de neurones de la couche
l − 1.
Cette double propriété des neurones nous conduit à qualifier le
RN de totalement connecté (fully connected).

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Notations
1 Nombre de couches : L.
Couche l = 1 : Couche d’entrée.
Couches l ∈ {2, . . . , L − 1} : Couches cachées.
Couche l = L : Couche de sortie.
2 Nombre de neurones de la couche l: nl.
3 La position de chaque neurone dans le réseau est définie par
un couple (l, j), où l est le numéro de la couche à laquelle
appartient le neurone, et j ∈ {1, . . . nl} est la position du
neurone dans sa couche.
4 Nous notons wjkl le poids de la connexion entre le neurone
(l − 1, k) et le neurone (l, j), et bjl le biais du neurone (l, j).
(l)
5 Nous notons xj la sortie du neurone (l, j).
(L)
Pour la couche de sortie, xj se confond donc avec ŷj .
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Notations-2

1 Compte tenu des notations présentées ci-dessus, nous avons


(l) Pnl−1 l (l−1)
xj = g ( k=1 wjk xk ).
Pnl−1 (l−1)
2 La somme k=1 wjk xk , appelée somme pondérée
(l)
(weighted input) du neurone (l, j), sera notée zj .
(l) (l)
3 Nous avons donc xj = gl (zj ).

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Un RN pour le OU logique

Notre premier réseau de neurones reçoit en entrée deux


valeurs binaires x1 et x2 et fournit en sortie la valeur
y = x1 ∨ x2 où ∨ est l’opérateur OU logique.
Ce réseau aura donc deux neurones en entrée et un neurone
en sortie. Compte tenu de la simplicité du problème, nous
allons construire un réseau sans couche cachée.
Ce réseau sera donc entièrement déterminé par le choix d’une
fonction d’activation h et la détermination des poids w 1 et
w 2 et le biais b du neurone de sortie.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Un RN pour le OU logique
La sortie du réseau sera h(w 1 ∗ x1 + w 2 ∗ x2 + b). Puisque
cette valeur sera toujours égale à 0 ou 1, nous allons prendre
comme fonction d’activation h la fonction de Heaviside
définie
( comme suit (figure 4(a) ci-dessous):
h(x) = 1, si x > 0
h(x) = 0, sinon

Figure: Fonctions d’activation

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Un RN pour le OU logique
Reste à déterminer les poids et le biais. C’est ce que nous
allons faire à l’aide des graphiques suivants:

Figure: Un RN pour le OU logique.


Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Un RN pour le OU logique

Nous plaçons les 4 entrées possibles dans le plan (x1 , x2 ).


Nous constatons qu’il existe une (infinité de) droite(s) qui
sépare(nt) les points correspondant à y = 0 de ceux
correspondant à y = 1.
Autrement dit, il existe w 1, w 2 et b tels que:
(
w 1x1 + w 2x2 + b > 0 lorsque y = 1
w 1x1 + w 2x2 + b < 0 lorsque y = 0
ou
( encore:
h(w 1x1 + w 2x2 + b) = 1 lorsque y = 1
h(w 1x1 + w 2x2 + b) = 0 lorsque y = 0
Cela donne le RN de la figure 5 (b).

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Perceptrons et séparabilité linéaire

Définition :
Soit f une fonction de Rn dans {0, 1}. f est dite linéairement
séparable s’il existe un hyperplan qui sépare les points de Rn dont
l’image par f est égale à 1 et ceux dont elle est égale à 0.
Autrement dit, s’il existe (a1 , . . . an , b) ∈ Rn+1 tel que ∀
(x1 , . . . xn ) ∈ Rn f (x) = 1 ⇐⇒ a1 ∗ x1 + · · · + an ∗ xn + b > 0.

Définition :
Un perceptron est un réseau de neurones, sans couches cachées,
dont la couche de sortie a un seul neurone et dont la fonction
d’activation est la fonction de Heaviside.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Perceptrons et séparabilité linéaire(2)

Propriété :
Une fonction f de Rn dans {0, 1} peut être représentée par un
perceptron si et seulement si elle est linéairement séparable.

Exercice : Vérifiez que la fonction ET logique est aussi


linéairement séparable et définissez un RN permettant de la
calculer.
Intéressons-nous à présent à la fonction OU-exclusif (XOR).

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Un RN pour le OU-exclusif (XOR)


La figure 6(a)-gauche montre clairement que cette fonction
n’est pas linéairement séparable. Nous allons donc utiliser
un RN ayant une couche cachée et fixons à 2 le nombre de
neurones de cette couche (figure 6(b)).
Les deux neurones de la couche cachée transforment l’entrée
(x1, x2) en (y 1, y 2). Autrement dit la couche cachée permet
d’avoir une nouvelle représentation de (x1, x2).
Pour obtenir cette nouvelle présentation, nous avons pris
y 1 = x1 ∨ x2 et y 1 = x1 ∧ x2.
La figure 6(a)-droite montre la nouvelle représentation. On
vérifie bien que dans le nouveau plan (y 1, y 2), il existe une
(infinité de) droite(s) permettant de séparer les points pour
lesquels y vaut respectivement 0 et 1. Nous utilisons une telle
droite pour définir le neurone de la couche de sortie.
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Un RN pour le OU-exclusif (XOR)

Figure: UnSenoussi
Houcine RN pourLesleréseaux
OU-exclusif.
de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Paramètres et hyperparamètres d’un RN


Pour définir et faire fonctionner un réseau de neurones, nous
avons besoin (au moins) des paramètres suivants:
le nombre de couches L (c’est-à-dire, en réalité, le nombre de
couches cachées L − 2),
le nombre de neurones dans chaque couche,
la fonction d’activation de chaque couche,
les poids et les biais des connexions entre les neurones,
c’est-à-dire la définition de chaque neurone caché ou de sortie.
En nous posant la question de savoir comment on détermine
ces différents paramètres, nous nous rendons compte qu’il y a
une différence essentielle entre les paramètres (les poids et
les biais) d’un coté, et les hyperparamètres (les autres
paramètres) de l’autre.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Paramètres et hyperparamètres d’un RN

Les hyperparamètres sont fixés par le concepteur du réseau


qui peut (du moins pour certains) en essayer plusieurs valeurs
et les ajuster en fonction des résultats auxquels ils conduisent.
En revanche, le concepteur du réseau n’a pas la main sur les
poids et les biais parce que leurs valeurs doivent être celles, ou
faire partie de celles, qui permettent de calculer la fonction
que le réseau est censé représenter. Un algorithme utilise un
ensemble d’apprentissage, c’est-à-dire un ensemble
d’exemples D = {Xi , Yi )} pour déterminer les poids et les
biais de manière Ŷi (sorties du réseau, valeurs prédites de Y )
soient aussi proches que possible des Yi (valeurs cibles de Y ).
Autrement dit, le réseau doit apprendre ses paramètres.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Détermination des hyperparamètres

Il n’existe pas de véritables règles pour déterminer les


hyperparamètres. En règle général, ils sont déterminés en
essayant plusieurs valeurs et en prenant celles qui donnent les
meilleurs performances (tout en gardant un coût raisonnable
pour le réseau et en évitant le sur-apprentissage).
Nous pouvons exclure de la liste des hyperparamètres le
nombre de neurones des couches d’entrée et de sortie. Ces
‘paramètres’ sont en réalité déterminés par la fonction que le
réseau doit représenter. Rappelons en effet que:
1 le nombre de neurones de la couche d’entrée n’est rien d’autre
que le nombre de variables (indépendantes) de cette fonction,
2 et que le nombre de neurones de la couche de sortie se déduit
naturellemnt du nombre de variables dépendantes.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Couches de sortie

Problèmes de régression (à une ou plusieurs sorties) : le


nombre m de neurones de la couche de sortie est tout
simplement égal à celui des variables à prédire.
Classification binaire: la couche de sortie aura un seul
neurone dont la sortie donnera la probabilité d’une classe
choisie comme classe de référence.
Classification à trois classes ou plus (multi-classes ou
multi-étiquettes): le nombre m de neurones de la couche de
sortie est égal à celui des classes. Chaque sortie donnera la
probabilité d’une classe.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Fonctions d’activation

Historiquement, la première fonction d’activation à avoir été


utilisée est la fonction de Heaviside. Sa sortie binaire
correspond à la définition d’un neurone à deux états: activé
(suite au calcul d’une combinaison de ses entrées) ou non
activé.
Cela limite son intérêt car l’empêche d’exprimer une
probabilité ou de permettre des calculs intermédiaires dont le
résultat n’est pas binaire.
Mathématiquement, elle a aussi l’inconvénient de ne pas être
continue en 0 (donc non dérivable) alors que ces bonnes
propriétés sont utiles dans des algorithmes essentiels pour les
RN.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

La fonction sigmoı̈de
La fonction sigmoı̈de (figure 4-(b)) peut être vue comme une
version ‘lissée’ de la fonction de Heaviside. À ce titre, elle
permet de distinguer les valeurs hautes (voisines de 1) et les
valeurs basses (voisines de 0) des sorties des neurones.
Elle est définie par
σ(x) = 1+e1 −x
Elle possède les ‘bonnes’ propriétés qu’une fonction
d’activation doit avoir (e.g. continuité et dérivabilité).
Ses valeurs étant comprises entre 0 et 1 et pouvant donc être
interprétées comme des probabilités, on l’utilise dans la
couche de sortie dans le cas d’une classification binaire (mais
aussi d’une classification multi-labels).
On l’utilise aussi dans les couche cachées.
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Autres fonctions d’activation

Il existe un grand nombre de fonctions d’activation. Citons


notamment les deux suivantes:
La fonction d’activation linéaire définie par f (x) = λ ∗ x et
dont la fonction identité est un cas particulier. Cette fonction
a l’avantage de la simplicité, mais son usage est limité à des
situations particulières, notamment la couche de sortie dans le
cas d’un problème de régression.
La fonction tangente hyperbolique définie par
−x
th(x) = 1−e
1+e −x , a les mêmes propriétés que la fonction
sigmoı̈de, mais en diffère par le fait qu’elle a des valeurs
négatives et qu’elle est centrée autour de 0. Elle est utilisée
dans les couches cachées.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Cas particulier de la fonction Softmax


Dans le cas d’un problème de multi-classification à m classes
on utilise la fonction softmax comme fonction d’activation de
la couche de sortie.
Pour alléger les notations, notons x1 , ..., xn les entrées de la
couche de sortie (c’est-à-dire les sorties de la couche L − 1.
Quelle est la notation rigoureuse pour ces valeurs?).
Toujours pour alléger (légèrement) les notations, notons wjk et
bj les poids et le biais du j eme neurone de la couche de sortie.
Chaque neurone j commence par calculer la moyenne
pondérée:
Pn
zj = k=1 wjk ∗ xk + bj
Ensuite il calcule sa sortie comme suit :
yˆj = Pmexp(zj )
j=1 exp(zi )

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Cas particulier de la fonction Softmax

Les deux propriétés principales de cette fonction, qui la


rendent utile ici sont:
La sortie de chaque neurone est comprise entre 0 et 1.
La somme des sorties est égale à 1.
Autrement dit, ce qui rend utile la fonction Softmax est que
ses valeurs peuvent être interprétées comme m probabilités, ce
qui correspond à notre besoin dans le cas d’un problème de
multi-classification.
La particularité de cette fonction est qu’elle suppose que
chaque neurone a accès aux valeurs zi des autres neurones.
On parle de couche Softmax plutôt que de fonction
d’activation seulement.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Exemple:Un RN pour le dataset Iris

Problème de multi-classification.
Variables indépendantes? modalités de la classe?
Architecture du RN.
Fonctions d’activation.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Calcul des paramètres d’un RN


Une fois les hyperparamètres déterminés, il nous reste à
calculer les paramètres, c’est-à-dire les poids et les biais de
chaque neurone.
Pour ce faire, nous disposons d’un ensemble
d’apprentissage D = {(Xk , Yk ) k = 1, . . . , K }.
Il s’agit donc de trouver des poids et des biais qui permettent
au réseau, lorsqu’il reçoit l’entrée Xk , de produire une sortie
aussi proche que possible de Yk .
Le principe des algorithmes utilisés pour cela est celui de la
correction des erreurs: calculer une erreur par
comparaison des sorties voulues et des sorties produites par
le réseau, puis ajuster les paramètres dans un sens qui permet
de réduire cette erreur.
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Apprentissage par correction des erreurs

Le schéma général des algorithmes d’apprentissage par correction


des erreurs est le suivant:

Algorithme: Calcul des poids par correction des erreurs.

1 Initialiser les poids et les biais de manière aléatoire.


2 Tant que (critère d’arrêt n’est pas atteint)
1 Pour chaque exemple (X , Y ) ∈ D, calculer la sortie Ŷ
correspondant à l’entrée X .
2 Calculer l’erreur en comparant les valeurs Y et Ŷ .
3 Ajuster les poids et les biais de manière à réduire l’erreur.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Apprentissage par correction des erreurs


Pour passer de ce schéma général aux algorithmes, plusieurs choix
doivent être faits:
1 Comment le réseau doit-il calculer l’erreur? Cela nous

amènera à introduire les fonctions de perte (loss functions).


2 Comment ajuster les poids et les biais de manière à minimiser

l’erreur? Là, il s’agit donc de choisir un algorithme


d’optimisation.
3 Quel critère d’arrêt appliquer? Un tel critère est inclus dans

l’algorithme d’optimisation. Il est lié plus particulièrement à la


convergence de ce dernier.
Dans la suite, nous allons présenter deux algorithmes
d’apprentissage: d’abord l’algorithme simple appelé ‘règle du
Delta’ (Delta rule), ensuite l’algorithme le plus général (la
rétropropagation).
Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Règle du Delta

Considérons un réseau de neurones sans couches cachées, dont la


couche de sortie comporte un nombre quelconque m de neurones
et dont la fonction d’activation est linéaire. L’ensemble
d’apprentissage est donc comme suit:
D = {(Xk , Yk ) i = 1, . . . , K }.
Pour k = 1, . . . , K Xk = (xk1 , . . . , xkn ) et
Yk = (yk1 , . . . , ykm ).
Pour chaque exemple (Xk , Yk ), la sortie Yˆk calculée par le réseau à
chaque itération est un m-uplet (ŷk1 , . . . , ŷkm ) tel que:
Pour j = 1, . . . , m ŷkj = ni=1 wji ∗ xki + bj
P

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Règle du Delta-Définition de l’erreur


Pour chaque exemple, l’écart entre la sortie voulue et la sortie
calculée par le réseau à chaque itération est calculé de la manière
suivante:
Ek = 12 m 2
P
j=1 (ykj − ŷkj )
= 2 ∥Yk − Yˆk ∥
1 2

L’erreur globale est donc:


PK
E = k=1 Ek
1 PK
= 2 k=1 ∥Yk − Yˆk ∥2
= 12 K
P Pm 2
k=1 Pj=1 (ykj − ŷkj )
1 K m
= 2 k=1 j=1 (ykj − wj1 ∗ xk1 − · · · − wjn ∗ xkn − bj )2
P

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Règle du Delta-Définition de l’erreur

L’erreur E est donc une fonction quadratique des poids


w11 , . . . , wmn et des biais b1 , . . . , bm . Pour la minimiser, nous
allons utiliser une descente du gradient. Soit, en notant W le
vecteur contenant les poids et les biais, et t le numéro d’une
itération:

Wt+1 = Wt - η∇E (Wt ) (1)

où η est une constante réelle appelée taux d’apprentissage


(learning rate) et ∇E () est le gradient de E .

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Règle du Delta-Définition de l’erreur


L’équation (1) peut être réecrite de la manière suivante:

( ∂E
Pour i = 1, . . . , n, j = 1, . . . , m ∆wji = -η ∂wji (W ) (2a)
∂E
Pour j = 1, . . . , m ∆bj = -η ∂bj (W ) (2b)

Ce qui donne, compte tenu de la définition de E :

(
η K
P
∆wji = xki (ykj − ŷkj ) (3a)
Pk=1
K
∆bj = η k=1 (ykj − ŷkj ) (3b)

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Règle du Delta-Définition de l’erreur

Nous constatons la présence d’un terme commun dans les


équations (3a) et (3b). C’est précisément ce terme propre à
chaque neurone qu’on appelle δ j . Nous avons:
δj = (yj − rj ).
Nous retrouverons ce terme plus bas, dans le cas le plus
général.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Règle du Delta

Reste à définir un critère d’arrêt. Pour cela nous avons


plusieurs possibilité[Link] peut être par exemple E < Emax ,
deux valeurs successives de W et B sont quasi-identiques
(utilisation d’un paramètre epsilon), idem pour deux valeurs
de l’erreur (ou ce qui revient au même de Yˆk ). Ces critères
peuvent être combinés avec un nombre d’itérations maximal.
La convergence de l’algorithme est assurée par le fait que
l’erreur (c’est-à-dire la fonction à minimiser) est quadratique.
Dans ce cas, cette fonction possède un minimum unique.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Rétropropagation

Nous allons à présent retourner au cas général d’un réseau de


neurones quelconque et nous inspirer de la règle du Delta
pour avoir un nouvel algorithme d’apprentissage.
Il s’agit donc de généraliser la règle du Delta de 3 manières:
nombre de couches quelconque, fonction d’activation
quelconque, fonction de perte quelconque.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Fonctions de perte

Étant donnée l’ensemble d’apprentissage


D = {(Xk , Yk ), k = 1, . . . , n}, la fonction de perte (loss
function) mesure l’écart entre les valeurs de Yk et celles des
sorties Yˆk que le réseau de neurones calcule lorsqu’on lui
soumet Xk en entrée.
L’objectif de l’apprentissage est donc de minimiser la valeur
de cette fonction.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Fonctions de perte

Les principales fonctions de perte utilisées dans les RN sont:


1 L’erreur quadratique, c’est-à-dire la méthode des moindres
carrés.
2 L’entropie croisée binaire (binary cross-entropy), utilisée
notamment dans les problèmes de classification binaire. Elle
est définie comme suit:
BCE (ŷ , y ) = -(ylog (ŷ ) + (1 − y )log (1 − ŷ )).
3 L’entropie croisée catégorielle (categorical cross-entropy)
utilisée dans les problèmes de multi-classification. En utilisant
pour Y la représentation one-hot, notre fonction de perte peut
s’écrire de la manière suivante:
Pm
CCE (ŷ , y ) = - j=1 yj log (yˆj ).

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Rétropropagation

Le principe de l’algorithme reste identique: utiliser une


descente du gradient pour mettre à jour à chaque itération les
poids et les biais.
L’application de la descente du gradient se fait d’une manière
qui donne son nom à l’algorithme : les mises à jour des poids
et des biais se font couche par couche, de droite à gauche.
Derrière cette rétropropagation il y a le fait que chaque
neurone (l, r ), pour mettre à jour ses poids et ses biais à
besoin de calculer une valeur qu’on note δrl qui dépend des
valeurs δsl+1 calculées par les neurones de la couche suivante.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Rétropropagation

Figure: Étapes de l’apprentissage.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Rétropropagation
Algorithme: Rétropropagation.
Entrées : l’ensemble d’apprentissage
D = {(Xk , Yk ), k = 1, ..., n}
Initialiser W and B.
Tant que (critère d’arrêt n’est pas atteint)
1 Pour k=1, ..., n
1 Mettre Xk à l’entrée du RN.
2 Poue l = 2, ..., L calculer les sorties de la couche l.
(Feedforward)
3 La sortie de la couche L est Yˆk .
4 Utiliser les valeurs Yk et Yˆk pour calculer l’erreur E .
5 Pour l = L, L − 1, ..., 1 (Rétropropagation)
Calculer les valeurs δjl qui dépend des valeurs δil+1 .
∂E ∂E
Calculer les valeurs ∂w l and ∂b l
jk j

Mettre à jour les valeurs de wjkl and bjl .


Houcine Senoussi Les réseaux de neurones
Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

La rétropropagation dans la pratique


Tel que nous l’avons présenté ci-dessus, cet algorithme met à jour
les poids et les biais à chaque exemple. Dans la pratique, ce n’est
pas toujours le cas. De ce point de vue, il y a en effet 3 versions de
cet algorithme:
La version batch learning: à chaque itération, l’algorithme
calcule une erreur globale sur tous les exemples avant de
mettre à jour les poids et les biais.
La version descente du gradient stochastique: à chaque
itération, un exemple est choisi aléatoirement, et les calculs
puis les mises à jour sont effectués.
La version mini-batch learning: La mise à jour se fait tous les
mb exemples, mb étant la taille du mini-batch.

Houcine Senoussi Les réseaux de neurones


Introduction
Definitions
Premiers exemples
Paramètres et hyperparamètres d’un RN
Apprentissage dans les RNs
Conclusion

Conclusion

Dans ce premier chapitre consacré aux réseaux de neurones, nous


avons présenté les réseaux de neurones ‘standards’, leur
architecture et leur fonctionnement.

Houcine Senoussi Les réseaux de neurones

Vous aimerez peut-être aussi