0% ont trouvé ce document utile (0 vote)
62 vues11 pages

II Deuxième Partie: Réseaux de Neurones Artificiels

Transféré par

amina.bekkar2612
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)
62 vues11 pages

II Deuxième Partie: Réseaux de Neurones Artificiels

Transféré par

amina.bekkar2612
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

II Deuxième partie: Réseaux de neurones artificiels

II.1. Neurone formel

Par ressemblance aux neurones biologiques Figure 1, les neurones artificiels Figure 2 ont pour but de
reproduire des raisonnements intelligents. La pluparts du temps simulés par des algorithmes exécutés sur
des ordinateurs ou des microprocesseurs. Ils sont utilisés essentiellement pour résoudre des problèmes de
classification, de reconnaissance de formes, d'identification, de commande,... . Ces neurones peuvent
adopter certaines qualités de l'être humain, c’est-à-dire, la généralisation et la déduction.

axone
noyau
Corps
cellulaire

Synapses
dendrites

Figure II.1: Neurone biologique

La forme d’un neurone artificiel est une copiée de la structure de neurone biologique. Un neurone artificiel
exécute une addition pondérée de signaux provenant de d'autres neurones, y ajoute un seuil θ, et donne une
sortie modulée par une fonction f dite d'activation.

1 θj
X1 wj1
X2 wj2
wj3 ∑ f yj
X3
wjn
Xn

Figure II.2: Neurone formel

x1 à xn forment le vecteur d’entrée x. La fonction f est appelée fonction d’activation du neurone. Chaque
entrée xi de neurone j est pondérée par un poids wji , ces poids vont permettre au neurone d’apprendre et de
modifier sa sortie pendant la phase d’apprentissage. La sortie du neurone est y = f( w.x ), où s = w.x
représente le produit scalaire du vecteur poids par le vecteur des entrées.

II.1.1. Modélisation

La fonction de transfert d'un neurone est donnée par:

( ) 1

∑ ( ) 2

Les facteurs de pondération wji sont appelés des coefficients synaptiques ou poids. Souvent, il ya un élément
additionnel 1 pondéré par le poids θ, ce terme est considéré comme le seuil interne du neurone.

II.1.2. Fonctions d'activations

Les fonctions d'activations les plus utilisées Figure 3:

f(x) f(x) f(x)

1 1
x x x

Echelon Signe Linéaire ( f(x) = x )


f(x) f(x) f(x)

1 1 1
x x x

1 1

Sigmoïde [0,1] Sigmoïde [-1,1] Saturation

Figure II.3: Fonctions d'activations


II.2. Structure d'un réseau neuronal

Un réseau de neurones est, un ensemble de neurones en réseau, de sorte que les signaux sortant des neurones
deviennent des signaux entrant dans d’autres neurones.

On peut classer les réseaux de neurones en deux grandes catégories, statiques ou dynamiques.

II.2.1. Réseaux statiques (non récurrents)

Dans cette architecture le temps n'est pas un paramètre significatif, en d'autres termes, la modification de
l'entrée n'entraine qu'une modification invariable de la sortie, il n'y a pas le retour d'information vers cette
entrée.

La plupart des réseaux statiques utilisés sont organisés en plusieurs couches de neurones, appelés
perceptrons multicouches ou réseaux multicouches.

Dans tel réseau, il n'y a pas de connexion entre neurones d'une même couche et les connexions ne se font
qu'avec les neurones des couches avales Figure 4. Généralement, chaque neurone d'une couche est connecté
à tous les neurones de la couche suivante seulement.

x0 y0

x1
y1
x2

y2

yn
xm

Figure II.4: Réseau multicouches


II.2.2. Réseaux dynamique (récurrents)

Les réseaux dynamiques contiennent des bouclages partiels ou totaux, d'une autre manière, les connexions
récurrentes ramènent l'information en arrière par rapport au sens de propagation Figure 5.

x0 y0

x1 y1

y2

yn
xm

Figure II.5: Réseau dynamique


(Modèle de Hopfield)

Ces réseaux, généralement, sont en train de s’entraîner. Il en existe plusieurs types.

II .2.2.1 Réseau de Kohonen

Dans ce type de réseau plusieurs neurones entrent en concurrence pour être activé. Dans cette situation, un
seul neurone est activé. Dans ce cas, seul le neurone vainqueur, verra son poids modifié. Veut dire, seul le
neurone vainqueur et son proximité bénéficieront de l’apprentissage, figure 6.

Couche d'entrée
Couche de Kohonen

Figure II.6: Réseau de Kohonen


II.3. Le perceptron

Le perceptron est formé de trois couches; une couche d'entrée fournissant des données à une couche
intermédiaire comporte des neurones chargées des calculs, elle-même connectée à la couche de sortie Figure
7.

x0 y0

x1
y1
x2

y2

yn
xm

Figure II.7: Le perceptron

Un perceptron est capable d’apprendre un ensemble de points linéairement séparables. Dans le cas de deux
dimensions, le perceptron pourra apprendre à reconnaître deux classes différentes qui peuvent être séparés
dans le plan par une droite Figure 8.

Figure II.8: La solution du perceptron


Cependant, les perceptrons à un neurone ne peuvent apprendre que des fonctions séparables linéairement
figure 9.

Figure II.9: La limite du perceptron

II.3.1. Algorithme d'apprentissage

1. Mettre les poids w1, w2, …, wn ainsi que le seuil θ à des valeurs aléatoires, aussi fixer le coefficient
d’apprentissage.
2. Pour chaque exemple x(p) et sa sortie désiré Yd(p):
 Calculer la sortie du neurone réelle pour l'itération p s(p)=f(x(p))
 Calculer la correction des poids : wi=*( Yd(p)-s(p))*x(p)
 Mettre à jour les poids : wi = wi + wi
3. Augmenter p de 1, retourner à l’étape 2 et répéter le procédé jusqu’à la convergence.

II.4. Réseaux multicouche

Les réseaux de neurones multicouches comprennent plusieurs couches. La plupart des réseaux de neurones
multicouches sont, des perceptrons multicouches. Comporte une couche d’entrée reçoit une donnée externe
qu’elle attribue à la première couche cachée qui suit, qui exécute un calcul et qui le propage ensuite à la
couche suivante qui fera la même chose et ainsi de suite jusqu’à la dernière couche.
y1

x1
Y2
x2

X3
Y3

Xn

Ym

Couche de sortie
Couche d’entrée
Couches de cachées

Figure II.10: Réseau multicouche

II.5. Apprentissage

Toute l'information que possède un réseau de neurones est représentée dans les poids des connexions entre
les neurones. Le réseau acquiert cette information pendant la phase d'apprentissage.

L'apprentissage consiste donc à ajuster les poids de telle façon que le réseau présente un certain
comportement désiré.

La procédure d'apprentissage peuvent se subdiviser, en deux catégories: apprentissage supervisé et


apprentissage non supervisé.

II.5.1. Apprentissage supervisé

Il implique l'avis d'un professeur qui a pour rôle de juger le succès ou l'échec du réseau quand il lui est
présenté une entrée donnée. Cette vérification consiste à renvoyer au réseau une information qui lui
permettant de faire varier ses poids afin de faire diminuer son erreur.
II.5.2. Apprentissage non supervisé

Dans cet apprentissage la connaissance du couple, entrées et sorties désirées n'est pas nécessaire. C'est un
réseau autonome, la régulation des poids se fait automatiquement.

II.6. Rétro-propagation du gradient

Les limites du perceptron peuvent être surmontées en augmentant le nombre de couches cachées dans le
réseau de neurones.

Le but est de minimiser l'erreur quadratique E entre les sorties réelles et celles désirées.

 1
E ( w)  *  (désirée  réelle) 2 3
2 exemples

∑ ( ) ∑ ( ( ) ( )) 4

Yd(t): la sortie désirée.

RRk(t): la sortie du neurone K de la couche R

T: l'ensemble des exemples d'apprentissage.

On présente l'ensemble des exemples qui sont les entrées et les sorties désirés, et on applique la méthode de
descente du gradient pour minimiser l'erreur à travers les poids:

E
wi  E (w) où E ( w)  5
wi

L'apprentissage se fait en deux phases. Dans la première, on calcul la sortie de chaque neurone, on peut
mettre en évidence les erreurs apparaissant sur les neurones de sorties. Dans la seconde phase, on propage
les erreurs de la couche de sortie vers la couche d'entrée. Ce processus est répété jusqu'à ce que l'erreur soit
inférieure à un seuil choisi.

II.6.1. Adaptation des poids

Pour la couche de sortie:

( ) ( ( ) ( )) ( ( )) 6

( ) ( ) ∑ ( ) ( ) 7

Pour les couches cachées:


( ) ( ( )) ∑ ( ) ( ) 8

( ) ( ) ∑ ( ) ( ) 9

II.6.2. Algorithme de la rétro-propagation

1. Initialiser tous les poids à des valeurs aléatoires petites.


2. Présenter le couple, entrées et sorties désirées.
3. Calculer les sorties de chaque neurone.
4. Calculer les erreurs de chaque neurone
5. Adapter les poids de la couche de sortie puis les poids des couches cachées.
6. Revenir à 2 jusqu'à la convergence du réseau.

II.7. Procédure de l'identification d’un réseau de neurones

Pour le développement d'un modèle neuronal, il nous faut sept étapes :

 La collecte des données,


 L’analyse des données,
 La séparation des bases de données,
 Le choix d’un réseau de neurones,
 La mise en forme des données,
 L’apprentissage,
 La validation.

II.7.1. Collecte des données

L’intérêt de cette étape est d'assembler des données, à la fois pour l'apprentissage du réseau de neurones et
pour le teste. Le but est de collecter un nombre de données suffisant pour constituer une base caractéristique
du système. Le modèle constitué n’a de validité que dans le domaine où on l’a ajusté. En d’autres termes, la
présentation de données distinctes de celles de l’apprentissage peut entraîner un modèle incorrecte.
II.7.2. Analyse des données

Il est préférable d’effectuer une analyse des données de manière à déterminer les caractéristiques
discriminantes pour détecter ou différencier ces données. Cette détermination des caractéristiques a des
conséquences à la fois sur la taille du réseau et donc le temps de simulation, sur les performances du
système, et sur le temps d’apprentissage. Une étude statistique sur les données peut permettre d’écarter
celles qui sont aberrantes et redondantes.

II.7.3. Séparation des bases de données

Pour le développement d'un modèle neuronal, il est indispensable d'arranger deux bases de données: une
base pour l’apprentissage et une autre pour tester le modèle acquis et déterminer ses performances.

II.7.4. Choix d’un réseau de neurones

On distingue plusieurs types de réseaux de neurones, chacun des avantages et des inconvénients, aussi le
choix d’un réseau peut dépendre :

 Du travail à achever, exemple classification, association, commande de processus, ...,


 Du type des données,
 D’utilisation en temps-réel,

II.7.5. Mise en forme des données pour un réseau de neurones

Les données d'apprentissage et de teste doivent subir un traitement afin d’être acceptées comme entrées et de
sorties du réseau de neurones. Un prétraitement courant consiste à effectuer une normalisation appropriée,
qui tienne compte de l’amplitude des valeurs acceptées par le réseau.

II.7.6. Apprentissage du réseau de neurones

Les réseaux de neurones sollicitent un apprentissage. Plusieurs types d’apprentissages peuvent être adaptés.
Les critères de choix sont la rapidité de convergence ou les performances de généralisation. Le critère
d’arrêt de l’apprentissage est souvent l’écart entre les valeurs de sortie obtenues et les valeurs souhaitées.
Certains algorithmes d’apprentissage se chargent de la détermination des paramètres d'architecture du réseau
de neurones.

II.7.7. Validation

Une fois la phase d'apprentissage est achevée, il est nécessaire de le tester sur une base de données différente
de celles utilisées pour l’apprentissage. Ce test permet à la fois d’apprécier les performances du système
neuronal et de détecter le type de données qui pose problème. Si les performances ne sont pas satisfaisantes,
il faudra soit modifier l’architecture du réseau, soit modifier la base d’apprentissage.
II.8. Les inconvénients d’un réseau de neurones

 On ne sait pas prévoir le nombre de neurones cachés nécessaires pour un problème donné, pour
pallier ce manque, on ajoute au fur et à mesure de l’apprentissage des neurones cachés.

 Le temps d’apprentissage risque d’être démesuré.

 Une fois que le modèle neuronal est déterminé (après apprentissage), il est impossible de lui faire
apprendre de nouvelles données sans recommencer son apprentissage au début.

II.9. Les avantages d’un réseau de neurones

 Temps de réponse très court, en effet une fois que le réseau est appris, il peut sortir quasi-
instantanément la réponse.

 Le réseau de neurones ayant une bonne capacité de généralisation.

 Avec le réseau de neurones on n’est pas besoin de connaitre la fonction de transfère ou le modèle
mathématique du système.

Vous aimerez peut-être aussi