Vous êtes sur la page 1sur 13

GPA-779

Introduction aux Rseaux de neurones artificiels

Introduction
Les rseaux des neurones artificiels = composition dlments simples (ou neurones) fonctionnant en parallle.

Les RNA sont inspirs du systme nerveux biologique.

Le fonctionnement du RNA est fortement influenc par la connexion des lments entre eux.

On peut entraner un rseau de neurones pour une tche spcifique en ajustant les valeurs des connections (ou poids) entre les lments (neurone).
2

AUT 2005Automne 2003 1

GPA-779

Pourquoi un RNA?
Utiliss lorsqu'un phnomne observ est soit trop complexe (ou non compris) pour tre modlis par les outils conventionnels Les mthodes classiques danalyse de donnes sont coteuses en temps de calcul Le systme nerveux peut adapter par des modifications structurelles et fonctionnelles induites par lexprience acquise au cours du temps. Lapprentissage peut se faire sans exprience ce qui nest pas possible pour les machines squentielles qui doivent recevoir du code dun programme.

Avantages par rapport larchitecture Von Neuman

calculs parallles et distribus apprentissage et gnralisation adaptation et contexte tolrance aux fautes faible consommation d'nergie

AUT 2005Automne 2003 2

GPA-779

Ce que fait un RNA

Classification Approximation de fonctions Prdiction prvision Pr pr Contrle Mmoire adressable par le contenu
5

Applications
- Industrie : contrle qualit, diagnostic de panne, analyse de signature ou d'criture manuscrite... - Finance : prvision et modlisation du march (cours de monnaies...), attribution de crdits,... - Tlcommunications et informatique : analyse du signal, limination du bruit, reconnaissance de formes (bruits, images, paroles)... - Environnement : valuation des risques, analyse dsertification, prvisions et modlisation mtorologiques, gestion des ressources... -
6

AUT 2005Automne 2003 3

GPA-779

Historique
1943 : Mc Culloch et Pitts prsentent le premier neurone formel. 1949 : Hebb propose un mcanisme dapprentissage. 1958 : Rosenblatt prsente le premier rseau des neurones artificiels : le Perceptron, il est inspir du systme visuel et possde deux couches de neurones : perceptive et dcisionnelle. Dans la mme priode, le modle de l'ADALINE (Adaptive Linear Element) est prsent par Widrow. Ce sera le modle de base des rseaux multicouches. 1969 : Minsky et Papert publient une critique des perceptrons en montrant ses limites. 1972 : Kohonen prsente ses travaux sur les mmoires associatives. 1982 : Hopfield dmontre lintrt dutiliser les rseaux rcurrents pour la comprhension et la modlisation des fonctions de mmorisation. 1986 : Rumelhart popularise lalgorithme de rtro propagation du gradient, conu par Werbos, qui permet dentraner les couches caches des rseaux multicouches.

Le neurone biologique

Schma simplifi de Neurone Biologique

Un neurone reoit des impulsions de ses voisins par l'intermdiaire des "dendrites". Si la somme des signaux dpasse un certain seuil, il renvoie un signal vers d'autres neurones, par l'intermdiaire de son "axone".
8

AUT 2005Automne 2003 4

GPA-779

Modle dun neurone

Neurone artificiel = Unit de calcul simple qui essaie de mimer le fonctionnement dun neurone biologique

Neurone biologique

Neurone artificiel

Synapses

Poids de connexions

Axones

Signal de sortie

Dendrite

Signal dentre

Somma

Fonction dactivation

Modle dun neurone

La fonction de combinaison et la fonction de transfert constituent la fonction dactivation

La fonction de transfert calcule la valeur de sortie partir du rsultat de la fonction de combinaison La fonction de combinaison rassemble toutes les entes en une seule valeur unique, gnralement forme de somme pondre

Chaque entre a son poids

10

AUT 2005Automne 2003 5

GPA-779

Fonction dactivation
Une fonction dactivation consiste en deux parties : la fonction de combinaison qui rassemble toute les entres en une seule valeur, la fonction de combinaison la plus courante est la somme pondre. la fonction dactivation est la fonction de transfert, qui tire son nom du fait quelle transfre la valeur de la fonction de combinaison la sortie de lunit.

Neurone entres multiples

Inputs

Sortie

a = f (Wp+b)

11

Fonction de transfert

12

AUT 2005Automne 2003 6

GPA-779

Lapprentissage
Apprentissage Modification des poids jusqu atteindre une sortie correcte pour les formes dentre de lensemble dapprentissage Gnralisation Capacit du rseau produire une rponse correcte une forme non-apprise Rgle dapprentissage Fonction de modification des poids

13

Architecture de Rseaux de neurones

Simple couche

Multicouche

x1 x2

y1 y2

entre

cache

sortie

14

AUT 2005Automne 2003 7

GPA-779

Monocouche, rcurrent

15

Exemple: Perceptron Monocouche


C'est un rseau simple, puisque il ne se compose que d'une couche d'entre et d'une couche de sortie. Sa principale limite est qu'il ne peut rsoudre que des problmes linairement sparables. Leur avantage est que l'apprentissage du rseau converge vers une solution optimale

Couche dente

Couche de sortie

16

AUT 2005Automne 2003 8

GPA-779

Taxonomie La taxonomie consiste btir un arbre de classification des rseaux neuroniques selon le nombre de couches, la mthode de recherche de solution et la rgle dapprentissage Une des toutes premires taxonomies propose dans la littrature fut larbre de classification de Lippmann, en 1987. Cet arbre de classification a longtemps t considr comme un classique dans le domaine.

17

Les rseaux de neurones sont habituellement regroups en deux catgories: Rseaux non-boucls (feed-forward) : sont des graphes acycliques. Ce type de rseau est gnralement statique ; ils ne produisent quune seule rponse en fonction des entres fournies. Ils ont une capacit de mmorisation assez faible, puisque leur rponse `a une entre est indpendante de ltat antrieur du rseau. Rseaux rcurrents (feedback) : sont des graphes avec circuits du fait de la prsence darcs de rtro-action. Ils sont plus dynamique : lorsquune nouvelle forme dentre est prsente les sorties du neurone sont traites. Grce aux connexions rtroactives, les entres de chaque neurone sont modifies, ce qui conduit le rseau dans un nouvel tat.
18

AUT 2005Automne 2003 9

GPA-779

Taxonomie de Jain et al. (1996)

19

Simulateurs

Approche objet
Environnement graphique volu Inspire de la POO Neurone objet
Attributs
Valeur dactivation Valeur de sortie Poids etc.

Mthodes
Fonctions dactivation, de sortie Apprentissage
20

AUT 2005Automne 2003 10

GPA-779

Approche matricielle
Utilisation de logiciels spcialiss en traitement matriciel
MATLAB Mathematica

couche vecteur poids matrice

21

Approche par programmation


Environnement de simulation Language orient objet : C++ ou Java Objet informatique :
Attributs Mthodes

22

AUT 2005Automne 2003 11

GPA-779

% Approximation de fonction y avec l'algorithme backpropagation P= 0:1:20; % les valeurs dentre T= P.^3 + 2*P.^2 - 2 ; % les valeurs de sortie %----------------------------------------------------------------------% La forme de rseau Neurone de type PMC %---------------------------------------------------------------------% En utiliser la fonction de la bote outils: newff % Intervalle dente : 0 ~ 20 % Nombre de neurones de premire couche cache: 5 fonction de transfrent est tansig % Nombre de neurones de deuxime couche cache: 5 fonction de transfrent est purelin % Nombre de neurones de couche sortie: 1 fonction du transfert est purelin net = newff([0 20],[5 5 1],{'tansig' 'purelin' 'purelin'}, traingdm ); % Dfinitions de larchitecture PMC %--------------------------------------------------------------------------% Exemple de couche cache % PMC avec 5 neurones avec une seule couche cache

23

% newff([0 20],[5 1], { 'tansig' 'purelin' } ) % MLP avec trois couches caches % newff([0 20],[5 5 5 1], { 'tansig' ' tansig' ' purelin' 'purelin' } ) %----------------------------------------------------------------------------------------% Mettre les paramtres de l'algorithme pour former : %---------------------------------------------------------------------------------------net.trainParam.epochs = 300 ; % Permet de rgler le nombre depochs c.--d. L'epochs % maximal est 300 (nombre de l'itration d'optimisation) net.trainParam.goal = 0.000001; % La limite de l'erreur est 0.000001 %--------------------------------------------------------------------------------------%Pour former lentrainement du PMC en utilisant la fonction de train net = train(net,P,T); %--------------------------------------------------------------------------------------% Ici on simule la nouvelle sortie de rseau et on obtient le rsultat dsir Test=[0:1:20]; % L'entre a pour le but de test Output=sim(net,Test); % la fonction sim permet de simule de sortie dsir %-------------------------------------------------------------------------------------plot(P,T,'b',Test,Output,'r',P, Test,'c') title('Test de rseaux de neurone MLP ') ; xlabel('vecteure dentre'); ylabel('la sortie') ; legend({'la vrai courbe ','la courbe simule','erreur'})
24

AUT 2005Automne 2003 12

GPA-779

Test de rseaux de neurone MLP 9000 8000 7000 6000 5000 la sortie 4000 3000 2000 1000 0 -1000 la vrai courbe la courbe simule erreur

8 10 12 vecteure dentre

14

16

18

20

25

Statistiques et rseaux de neurones


Rseaux de neurones Apprentissage Poids Connaissance Apprentissage supervis Classification Apprentissage non-supervis Clustering Rseau de neurones Grand : 100 000 poids Ensemble dapprentissage Grand : 50 000 exemples Estimation Paramtres Valeur des paramtres Rgression / classification Discrimination / classement Estimation de densit / clustering Classification / taxinomie Modle Grand : 50 paramtres chantillon Grand : 200 cas.
26

Statistiques

AUT 2005Automne 2003 13