Vous êtes sur la page 1sur 5

Université Virtuelle de Tunis

_________________________________________________________________
Mastère : IASRIA
Module : Les réseaux de neurones artificiels
TD 1

Exercice 1
On se propose dans ce problème d'étudier le principe de l'apprentissage d’un neurone à base
du perceptron. L'apprentissage consiste à modifier l'ensemble des coefficients synaptiques afin
de trouver un ensemble de coefficients optimaux qui minimise un critère quadratique de
l'erreur. Pour simplifier l'étude on considère un seul neurone (perceptron) comme l'indique la
figure ci-dessous :

f est la fonction sigmoïde donnée par: f(u)=1/(1+exp(-a.u).


On suppose que seul w est variable et on donne in=wo=biais=a=l et d=0.5.
L'erreur quadratique à minimiser est égale à: E(w)=(d-f(u))2.

Partie A :
1) Donner l'expression de E(w) en fonction de w.
1
𝐸(𝑤) = (0.5 − )2
1 + exp⁡(−1 − 𝑤)

1
2) Donner la représentation graphique de la fonction E(w) sur l'intervalle [-5 +5]

3) En déduire :
- le coefficient synaptique w* qui minimise E
𝑤 = −1

- la valeur minimale de E(w*)


𝐸(−1) = 0
Partie B : Dans le cas des réseaux multicouches il est difficile de trouver l'ensemble des
coefficients synaptique optimaux par cette méthode directe. Pour cela on utilise des méthodes
itératives. La méthode la plus connue est la méthode du gradient à pas descendant.
Cette méthode est basée sur l'algorithme suivant : w(k+l)=w(k)-µdE(w)/d(w).
1) Comment est-il appelé µ ?
Coefficient d’apprentissage
2) supposons que µ=0.9. Partant de w(0)= -2.8,
- calculer l'erreur quadratique initiale E(w(0)).
𝐸(−2.8) = ⋯
- calculer les w(k) nécessaires pour atteindre, une erreur quadratique 10-1. (Donner ces valeurs
sous forme d'un tableau)
Pour cela il faut chercher l’expression de la dérivée de E par rapport à w pour pouvoir appliquer
la loi du gradient indiquée par l’équation en rouge.

2
𝑑𝐸 (exp(−1 − 𝑤) − .5)exp⁡(−1 − 𝑤)
= −2
𝑑𝑤 (1 + exp⁡(−1 − 𝑤))3
Ensuite on procède itérativement comme suit : Itération 1, c.à.d : k=1
𝑑𝐸
𝑤(1) = 𝑤(0) − µ (𝑤(0))
𝑑𝑤
On calcule 𝐸(𝑤(1)) ; si elle est inférieure à 10-1 on s’arrête ;

Sinon on continue : Itération 2, c.à.d : k=2


𝑑𝐸
𝑤(2) = 𝑤(1) − µ (𝑤(1))
𝑑𝑤
On calcule 𝐸(𝑤(2)) ; si elle est inférieure à 10-1 on s’arrête ; Sinon on continue :
𝑑𝐸
𝑤(3) = 𝑤(2) − µ (𝑤(2))
𝑑𝑤
etc…..
jusqu’à ce que l’erreur devient inférieure au seuil demandé.

- Quelle est la valeur de w obtenue ?


facile
- Quelle est l'erreur quadratique atteinte ?
facile
2) Tracer la courbe de la variation de l'erreur quadratique E(w) en fonction des nombres
d'itérations k.
facile
Exercice 2
On donne les fonctions d'activation suivantes :
y=f(u) y=f(u) y=f(u)

1 1 1

u u u
a
-1

a. fonction linéaire par morceau b. fonction tangente hyperbolique c. fonction sïgmoide

Quelles sont parmi ces fonctions qui ne peuvent pas être utilisées dans la méthode du
gradient ? Justifier ?
3
Comme on a remarqué pour appliquer la méthode du gradient il faut que la fonction
d’optimisation (qui E(w) dans notre cas) soit dérivable. Pour cela il faut donc que la fonction
d’activation soit dérivable. Donc les fonctions qui peuvent êtres utilisées sont b) et c).

Exercice 3
Considérons le neurone artificiel suivant :

avec y = f (u ) = u
1. Exprimer y en fonction de x.
𝑦 = 𝑤0 + 𝑤1 𝑥

2. On veut apprendre à ce neurone (à 10-2 près) la fonction donnée par le tableau suivant :

Entrée : x Sortie désirée : yd


0.5 1
1 1.5

Calculer le vecteur des coefficients synaptiques : W = [w0 w1 ]T

Si 𝑥 = 0.5 alors 𝑦 = 1 donc : 1 = 𝑤0 + 0.5𝑤1


Si 𝑥 = 2 alors 𝑦 = 1.5 donc : 1.5 = 𝑤0 + 2𝑤1
La résolution de ce système de deux équations à deux inconnues conduit à :
𝑤0 = 1.1
𝑤1 = −0.2

3. On se propose de recalculer ces coefficients synaptiques en utilisant la méthode suivante :


E (n)
wi (n) = − 
wi (n)

4
1
avec E (n) = [ y (n) − yd (n)]2 , wi (n) = wi (n + 1) − wi (n)
2
a. Exprimer E(n) en fonction de l’entrée et des coefficients synaptiques et de la sortie
désirée.
n désigne le numéro de l’itération
1
𝐸 = ((𝑤0 + 𝑤1 𝑥) − 𝑦𝑑 )2
2
b. Donner les équations d’actualisation de w0 (n + 1) et de w1 (n + 1)

Il suffit de calculer les dérivées de E par rapport à w0 puis par rapport à w1 et déduire les
expressions demandées

Tout le reste est semblable à l’exercice 1

c. Trouver la première valeur W (1) pour le premier pattern [ x yd ]T = [0.5 1]T et  = 0.1
sachant le point initial W (0) = [w0 (0) w1 (0)]T = [1 1]T . Calculer l’erreur correspondante : E(1).
d. Trouver W (2) pour le 2ème pattern. Calculer l’erreur E(2) pour ce 2ème pattern.
e. En déduire la moyenne des deux erreurs calculées ci-dessus.
f. Doit-on arrêter l’apprentissage ? Justifier votre réponse ?

Bon travail

Vous aimerez peut-être aussi