Université du Québec à Rimouski Richard Lepage M.Sc.A. ingénierie M.Sc. Océanographie Étudiant au doctorat en Ingénierie Réseaux de neurones formels et logique floue Département de Mathématiques, d’Informatique et de Génie. DMIG Université du Québec à Rimouski Université du Québec à Chicoutimi @2010 1 Plan de la discussion Historique et concepts. Les types de réseaux neuronaux. Les champs d’applications. Évolution future des réseaux de neurones. Conclusion. 2 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Naissance du modèle théorique du neurone biologique élaboré par 2 neurobiologistes (McCulloch et Pitts) en 1943. Schématisation d’un neurone biologique Modélisation d’un neurone formel à partir du modèle biologique n Y wi xi w0 x0 w1 x1 sgn(S ) w2 x 2 i 0 Y On associe un poids à chacune des entrées xi. L’ensemble des entrées-poids est ensuite appliqué à un sommateur suivi d’un comparateur. 1 Y 0 1 Fonction d’activation de la sortie Yj 3 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Neurone formel (automate à seuil avec entrées et sorties binaires). Application à la logique Booléenne. Dans la configuration porte logique, le modèle se comporte comme un séparateur linéaire entre deux classes distinctes. Les deux classes sont séparées par une droite dont la pente et l’ordonnée sont définies par la valeur des poids. Dans cet exemple, la valeur des poids a été préalablement définie. d ( x, y ) ax by c w1 x1 w2 x2 w0 w2 w1 x w2 y w0 0 x1 x, x2 n ou y mx b S=1 S=0 B (x2) S(y) 0 0 0 0 1 1 1 0 1 1 1 1 S=0 x1 0.35 Y sgn(S ) x2 w2 w0 .3 x0 sgn(S ) 1 Y ET logique 1 1 n A (x1) B (x2) S(y) 0 0 0 0 1 0 1 0 0 1 1 1 wi xi x1 w1 0.35 w2 0.35 i 1 sgn(S ) x2 Les poids w1 et w2 sont liés à la pente de la droite tandis que w0 et w2 sont liés à l’ordonnée à l’origine de la droite. 0.35 Y 0 x2 S=1 i 1 w1 A(x1) x1 wi xi x1 OU logique x2 y w0 x0 Nécessité d’un algorithme pour automatiser le processus de modification des poids. Y .5 1 4 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Règles du Perceptron En 1949, découverte de la règle d’apprentissage de Hebb pour la mise à jour automatique des poids du réseau entrainant le développement de l’algorithme du Perceptron selon une sortie désirée d(i) durant un processus d’apprentissage. Étape 1 –Choisir des valeurs aléatoires pour les poids w1 , w 2 ..w n et le biais w 0 Étape 2 –Appliquer le vecteur d’entrée x(i) Étape 3 -Calculer la valeur de S () S w1 x1 w 2 x2 ... w0 Étape 4 – Si S= d(i) on retourne à l’étape 2 sinon on passe à l’étape 5 Étape 5 -– dw0 d ( i ), dw i x ( i )d ( i ) w0 w0 dw0 , w i w i dw i pour i 1..n Étape 6 - Retourner à l’étape 2. 5 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Le perceptron de Rosenblatt (1958). d (i ) L’objectif premier du Perceptron a été de modéliser la perception visuelle. Entrées x1 w1 0.1 Y - sgn(S ) w2 x2 2 w0 .3 x0 1 err Une couche linéaire de neurone formel soumis à la règle d’apprentissage de Hebb d (i ) xn 0 .1 Sortie désirée Y Entrées sgn(S ) wn xn Modification des biais et des poids du réseau selon l’erreur produite entre la sortie désirée et la sortie du réseau 1 wn 1 Mise à jour des poids par la règle de Hebb Sortie désirée - 2 w0 .3 x0 1 err 6 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Problème non linéairement séparable (impossibilité de résoudre le XOR logique) En 1970, Minsky et Papert évaluèrent les faiblesses du perceptron. Ils découvrirent l’impossibilité pour le perceptron de résoudre un problème non linéairement séparable telle que la porte logique XOR. d (i ) x2 x1 XOR logique A(x1) B(x2) S 0 0 0 S=0 S=1 S=0 x1 S=1 0 1 1 1 0 1 1 1 0 w1 0.1 Y sgn(S ) x2 w2 - 2 w0 .3 x0 1 err La droite de discrimination linéaire ne peut séparer les deux classes peut importe les valeurs données aux poids et au biais. Minsky et Papert préconisèrent d’ajouter d’autres couches de neurones entre l’entrée et la sortie. il fallait résoudre le problème qui était de trouver une procédure qui permettrait de mettre à jour les poids et les biais du réseau, s’apparentant à un processus d’apprentissage. 7 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Évolution vers un réseau à couches cachées En 1980, révolution du perceptron à couches multiples (MLP) utilisant la règle de rétropropagation du gradient de l’erreur (back-propagation). Généralisation de l’algorithme de Widrow et Hoff que l’on nomme également « règle delta » en minimisant la somme des erreurs quadratiques. wji x1 y1 y z1 x wkj x2 y2 z2 Couche d’entrée vers la couche cachée x3 c w ji j xi wkj k k 1 Couche cachée vers la couche de sortie wkj k yj zk f ' ( net j ) x i y3 x4 Couche d'entrée t k - z k f ' (netk ) y j Couche cachée Couche de sortie Fonctions d’activations f ’ est la dérivée de la fonction d’activation. Cette découverte revient à deux équipes indépendantes: Rumelhart et all et Le Cun et all y x y 1 1 e x 8 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Résolution d’un problème non linéairement séparable avec le réseau MLP Le cas de la porte logique XOR. x2 XOR logique S=1 S=0 D2 D1 S=0 x1 S=1 A(x1) B(x2) S 0 0 0 0 1 1 1 0 1 1 1 0 Couche N x1 w11,1 y1 w12,1 w21,1 o x2 w21,1 w12, 2 y2 Noeuds de sortie Couche N-1 Le réseau MLP à deux entrées permet de séparer les deux classes du problème XOR. Couche 1 Couche 0 Réseau à N-couches Noeuds cachés Branchements wi,j Noeuds d’entrée 9 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Configuration optimale du réseau de neurone MLP On relève néanmoins un problème majeur dans l’utilisation des réseaux neuronaux: la difficulté d’optimiser le nombre de couches cachées ainsi que le nombre de neurones pour chaque couche. Paramètres à prendre en considération Le pas d’apprentissage La vitesse d’apprentissage La capacité de généralisation du réseau Les fonctions d’activations des couches cachées Comment y remédier? Par une méthode d’essai et erreur (efficacité faible). Par la méthode des plans d’expériences (méthode taguchi) (efficacité élevée). Par une optimisation conjointe des paramètres et de la topologie du réseau par algorithme génétique hiérarchiques (efficacité élevée mais processus complexe) . Par utilisation de l’ensemble de Pareto optimal (Vilfredo Pareto ) : problème d’optimisation sous contrainte (efficacité élevée nécessitant beaucoup de calcul). 10 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Techniques d’apprentissage ou de détermination des poids. Apprentissage supervisé et non supervisé. Apprentissage supervisé (Approche déterministe) On enseigne au réseau ce qu’il doit présenter comme information à la sortie selon les données présentées à l’entrée. Cela force les poids à prendre des valeurs distinctes selon les formes présentées au réseau de neurones. Avantages: Le réseau atteint une précision très élevée au niveau de la reconnaissance et la base d’exemple n’a pas besoin d’être très grande. Désavantage: On perd en généralité car les formes sont reconnues d’une manière trop exacte. Si une forme proche de la cible est présentée au réseau, celle-ci ne sera peut-être pas reconnue. On ajoutera un bruit blanc au données pour permettre une meilleure généralisation. 11 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Techniques d’apprentissage ou de détermination des poids Apprentissage non supervisé (approche statistique) Le réseau regroupe les données selon des algorithmes de calcul de distance (distance Euclidienne, de Manhattan…) par la méthode des moindres carrées ou selon une autre méthode. À chaque groupe correspond une classe. Après identification de toutes les classes, une valeur de sortie dictée par l’usager est associée à chacune des classes. En utilisant une inférence bayésienne, on pourra produire des probabilités conditionnelles pour chacune des variables aléatoires étant donné les autres. Avantages: Le réseau atteint une précision très élevée au niveau de la reconnaissance et la généralisation est très bonne. Désavantage: La base d’exemple se devra d’être très volumineuse et le temps d’apprentissage augmentera pour chaque nouvel exemple ajouté au réseau 12 lors d’un nouvel apprentissage. HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Méthode de minimisation pour le calcul des poids. Méthode de descente du Gradient 2 wnj ,i n j wnj ,i f ( h nj ) xin 1 2 n j n j n j f ( h nj ) Mise à jour des poids et des biais wnj ,i ( new) n j (new) wnj ,i (old ) n j (old ) wnj ,i n j 13 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Méthode de minimisation pour le calcul des poids. Méthode de descente du gradient avec terme d’inertie 2 w(new) wkj w(old ) w k 0< <1 t k - z k f ' (netk ) y j Terme d’inertie yj w convergera vers 2 w 1 w 14 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Méthode de minimisation pour le calcul des poids. Méthode de Newton Par l’utilisation de la série de Taylor E (w) E ( w0 ) ( w w0 ) E = fonction d’erreur ( 2) où H = matrice Hessienne 2 E wi w j H ij 1 ( w w0 ) 2 H 2 E ( w0 ) E ( w) 1 2 N Yj d j où Y j wij xi i 1 De la série de Taylor, nous obtenons E ( w) et w E ( w0 ) H ( w w0 ) w0 H 1 E ( w0 ) ( Méthode de Newton) 15 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Méthode de minimisation pour le calcul des poids. Mise à jour des poids par la méthode de Newton Avantages: w Convergence rapide (forme quadratique) Désavantages: wCalculs intensifs (nécessité de calculer la matrice inverse à chaque pas d’itération. wLa matrice Hessienne est difficile à calculer selon la complexité de la fonction d’activation. Nous devons donc choisir une fonction d’activation qui soit continûment dérivable. 16 HISTORIQUE ET CONCEPT DES RÉSEAUX NEURONAUX Méthode de minimisation pour le calcul des poids. Méthode de Levenberg-Marquardt Backpropagation JJ JE w où J ( w) J ( w) J ( w) E ( JJ I ) JE 1 J = Matrice Jacobienne E = Toutes les erreurs I = Matrice identité = Taux d’apprentissage Avantages: wConvergence très rapide et généralisation très bonne. wMéthode la plus utilisée jusqu’à maintenant. Désavantages: •Il ne faut pas que le nombre de poids constituant le réseau soit plus grand que 200 car cette méthode devient inefficace en terme de rapidité de calcul. 17 TYPES DE RÉSEAU NEURONAUX MLP - Multilayer perceptron (perceptron multi-couches) Réseau vu précédemment. RBF - Radial Basis Function (à fonction d’activation gaussienne) Approximation de fonctions à plusieurs variables. Réseau de Kohonen - (Réseau auto-organisateur) Conservation topologique de la forme Compression de données Réseau de Hopfield - (Réseau pleine connection) non présenté dans cette présentation, utilisé dans le contrôle d’un système non-linéaire. 18 TYPES DE RÉSEAU NEURONAUX Nouvelles tendances: Combinaison de plusieurs types de réseaux pour la résolution de problèmes dans un cadre plus spécifique. Entrée(s) Réseau de Kohonen Réseau MLP Sortie(s) Système neuro-flou approchant le comportement humain. Réseau MLP Entrée(s) Sortie(s) Logique floue 19 TYPES DE RÉSEAU NEURONAUX Le réseau RBF (Radial Basis Function) Broomhead et Lowe (1988) sont les concepteurs du réseau RBF. Sert actuellement pour les applications d’approximation de fonction mais s’explique mieux dans le contexte de la classification. Le réseau RBF est un réseau à une couche cachée (Couche avec fonction d’activation gaussienne et couche de sortie linéaire). La règle Delta est utilisée comme technique d’apprentissage du réseau RBF. Structure du réseau RBF sortie linéaire x1 Entrées x2 La couche cachée est constituée de fonction-noyau de type gaussienne. La fonction noyau doit être paramétrisée convenablement. 20 TYPES DE RÉSEAU NEURONAUX Modèle linéaire du réseau RBF c: centre; r: rayon; m f ( x) w j h j ( x) j 1 Fonction d’activation gaussienne h( x ) exp ( x c) 2 r2 Fonction d’activation quadratique h( x ) RBF gausienne RBF quadratique r 2 ( x c) 2 r 21 TYPES DE RÉSEAU NEURONAUX Le réseau RBF (Radial Basis Function) Pour déterminer le nombre et la position des neurones-noyau, on utilise l’algorithme décrit par Mustawi et all (1992). 1. 2. 3. 4. 5. 6. 7. 8. On associe un neurone par donnée du corpus d’apprentissage représentant un nuage distinct, l’objectif étant de regrouper des nuages de données. On choisie aléatoirement un nuage (un neurone i) On trouve un second nuage de la même classe (un neurone j). Regroupement des deux nuages en un nouveau nuage k et calcul du barycentre Ck. Calcul de la distance rk entre Ck et la donnée de k la plus éloignée. Calcul de la distance dk entre Ck et le barycentre du nuage le plus proche. Si dk > Delta*rk, alors regroupement accepté et nouveau nuage k qui remplace les nuages i et j, sinon on répéte depuis l’étape 3 jusqu’à ce que le regroupement soit accepté. Répéter l’opération à partir de 2, en examinant tous les nuages jusqu’à ce qu’aucun regroupement ne soit plus possible. 22 TYPES DE RÉSEAU NEURONAUX Le réseau RBF (Radial Basis Function) utilisé dans l’approximation d’une fonction Somme pondérée des entrées Vecteurs d’apprentissage Fonction gaussienne Résultat après apprentissage On présente 20 vecteurs (x,y) que le réseau doit apprendre. Lorsque l’apprentissage est terminé, n’importe laquelle des valeurs présentées à l’entrée donnera une valeur de sortie qui sera présente sur la courbe. 23 TYPES DE RÉSEAU NEURONAUX Le réseau SOM de Kohonen (réseaux compétitifs) Kohonen (1990) développa la carte topologique (“Self-Organizing Map). Le réseau SOM est constitué d’une couche d’entrée et d’une couche compétitive en sortie. Le réseau à apprentissage compétitif de Kohonen (spécialisation du neurone ) s’approche le plus du type de structure observé dans le cerveau. La règle d’apprentissage modifie les poids du neurone 1 de façon à le rapprocher du patron présenté au réseau. Poids du réseau I1 I2 W1 0.6 0.4 W2 0.4 0.6 Patron 1 1.0 0.0 Patron 2 0.8 0.2 Patron 3 0.0 1.0 Patron 4 0.2 0.8 i1 w1,1 e1 w2,1 w1, 2 i2 Couche d’entrée w2, 2 e2 Couche de compétition Le réseau SOM est parfaitement adapté pour l’analyse des données (regroupement sous forme de nuage de données). 24 TYPES DE RÉSEAU NEURONAUX Le réseau SOM de Kohonen (réseaux compétitifs) 100 points de données formant un cercle unitaire 2 entrées et 10 neurones dans la couche compétitive w1,1 x w2,1 Les vecteurs poids suivent la courbe de données après apprentissage. e1 e2 w1, 2 e9 y w2, 2 e10 Le graphique représente les poids de chaque neurone. Ils suivent la courbe de données en positionnant les poids de chacun des neurones au barycentre des nuages de données qui ont été créé. 25 LES APPLICATIONS Classification de données vectorielles Reconnaissance des formes Approximation de fonction Détection de patrons dans un signal Prédiction future selon des données passés Contrôle robotique (PID) Compression de données régression linéaire et non-linéaire 26 APPLICATIONS DES RÉSEAUX NEURONAUX NNTOOL (commande Matlab du toolboxes neural network) 27 APPLICATIONS DES RÉSEAUX NEURONAUX Classification de données par réseau MLP. Commande Matlab : Création des données d’apprentissage x = randn([ o = (x x Sortie désirée o: Si (x1,x2) est dans un cercle de rayon 1 centré à l’origine Alors o=1 Sinon o=0 Les composantes d’entrées x1 et x2 sont générées à partir de nombres aléatoires. Class 1 Class 0 2 1 0 -1 -2 -3 -3 -2 -1 0 1 2 3 28 APPLICATIONS DES RÉSEAUX NEURONAUX Classification par réseau MLP. Commande Matlab : Création d’un réseau à deux couches PR = [min(x( ,:)) max(x( bornes de chacune des entrées min(x( ,:)) max(x( S nbr. de noeuds dans la couche 1 et 2 S TF = 'logsig'; TF = 'logsig'; BTF = 'traingd'; BLF = 'learngd'; PF = 'mse'; net = newff(PR,[S S ],{TF TF },BTF,BLF,PF); fonction d’activation de la couche 1 et 2 fonction d’entrainement fonction d’apprentissage fonction coût (mean square error ou mse) commande de création du réseau 29 APPLICATIONS DES RÉSEAUX NEURONAUX Classification par réseau MLP. nbr. d’époque de calcul net.trainParam.epochs = net.trainParam.goal = erreur maximale désirée net = train(net,x,o); commande d’apprentissage y = sim(net,x); calcul en continu des sorties du réseau conversion en sortie binaire netout = y> Structure du réseau Noeud de sortie (Sigmoide) x1 Noeuds d’entrées x2 Unité de seuil Couche cachée (pour sortie binaire) (sigmoide) 30 APPLICATIONS DES RÉSEAUX NEURONAUX Classification par réseau MLP. Initialisation aléatoire des poids avant le début du calcul. Affichage aléatoire des droites de séparation avant le processus d’apprentissage. Class 1 Class 0 2 1 0 -1 -2 -3 -3 -2 -1 0 1 2 3 Le réseau calculera la valeur des poids et des biais qui ajustera les droites de séparation selon la sortie désirée. 31 APPLICATIONS DES RÉSEAUX NEURONAUX Classification par réseau MLP (trois types d’algorithme). Méthode de descente par le gradient 10 10 10 -1 -2 10 10 -3 0 0.5 1 20000 Epochs 1.5 2 x 10 Performance is 0.151679, Goal is 0.002 0 10 -1 -2 -3 Class 1 Class 0 10 10 10 0 0.5 1 20000 Epochs 4 MSE vs époques d’apprentissage 2 10 Levenberg-Marquardt Backpropagation Training-Blue Goal-Black 10 Performance is 0.151511, Goal is 0.002 0 Training-Blue Goal-Black Training-Blue Goal-Black 10 Descente de gradient avec terme d’inertie 1.5 2 x 10 -1 -2 -3 0 Class 1 Class 0 0 0 0 -1 -1 -2 -2 0 1 2 3 Erreur de classification : 40/200 10 Class 1 Class 0 -1 -2 -3 -3 -1 8 2 1 -2 6 MSE vs époques d’apprentissage (convergence atteinte en 10 époques) 1 -3 4 10 Epochs 1 -3 2 4 MSE vs époques d’apprentissage 2 Performance is 0.00172594, Goal is 0.002 0 -3 -2 -1 0 1 2 3 Erreur de classification : 40/200 6 noeuds seulement sont nécessaires ! -3 -2 -1 0 1 2 3 Erreur de classification : 0/200 32 APPLICATIONS DES RÉSEAUX NEURONAUX Reconnaissance de forme avec réseau MLP Schémas synoptiques d’un système de reconnaissance de formes Prétraitement des données images (Phytoplancton) 1 Image originale en couleurs 4 2 Niveau de gris 5 Remplissage des vides 3 Filtre Sobel Rehaussement de contraste 6 Linéarisation de l’objet Segmentation de l’image 33 APPLICATIONS DES RÉSEAUX NEURONAUX Reconnaissance de forme avec réseau MLP Extraction des caractéristiques de forme On recherche l’invariance en translation, en rotation et en homothétie en groupant des moments centrés d’ordre p,q, par exemple M20+M02 Moments centrés d’ordre p,q Moments élémentaires d’ordre p,q M10 et M01 définissent le centre de gravité de la surface et M00 définit la surface de l’objet Axes principaux d’inertie Allongement et orientation de la forme 34 APPLICATIONS DES RÉSEAUX NEURONAUX Reconnaissance de forme avec réseau MLP Base des exemples à soumettre au réseau. Prétraitement des données et normalisation. Application des paramètres caractéristiques invariantes de la forme dans l’étape du processus d’apprentissage. Classement de la forme selon une étiquette présentée au réseau comme sortie désirée. Après apprentissage de la première forme, on retourne à la base d’exemple pour l’apprentissage de la forme suivante. 35 APPLICATIONS DES RÉSEAUX NEURONAUX Reconnaissance de forme avec réseau MLP Amélioration de la reconnaissance des formes Les données d’entrées et de sortie doivent être normalisées. La normalisation des données est le processus par lequel les données d’entrée et de sortie ont des valeurs évoluant entre -1 et +1. On utilise au minimum deux couches cachées d’environ une dizaine de neurones pour éviter le sur-apprentissage. On peut ajouter un bruit blanc aux formes qui sont présentées lors de l’apprentissage du réseau pour améliorer la généralisation. On utilise un algorithme d’apprentissage de type Levenberg-Marquard qui est le plus adéquat pour le réseau MLP. 36 APPLICATIONS DES RÉSEAUX NEURONAUX Reconnaissance des signaux par réseau MLP Signal à analyser Patrons de signaux Le signal à analyser provient d’une machine à usinage. Pour éviter d’endommager la pièce, un réseau de neurones détecte les bris des outils à usiner (mèches, fraiseuses…) en reconnaissant les signaux précurseurs à un mauvais fonctionnement qui endommagerais les pièces usinées. Signal à analyser en temps réel Passage d’une fenêtre de 10 échantillons par intervalle d’un échantillon. Processus de reconnaissance selon les 10 patrons appris par le réseau MLP Décision sur la commande de l’appareil (sortie [0.1 à 1.0]) 37 APPLICATIONS DES RÉSEAUX NEURONAUX Reconnaissance des signaux par réseau MLP On utilise un réseau d’une couche cachée de 5 neurones avec fonction d’activation « logsig » et un neurone en sortie avec fonction d’activation linéaire « purelin ». y1 Contrôle de la machine à usiner [0.1 – 1.0] La mise à jour des poids se fait par l’algorithme de Levenberg-Marquard durant l’étape d’apprentissage. 10 échantillons présentés à l’entrée du réseau selon une fenêtre glissante y10 38 AVENIR DES RÉSEAUX NEURONAUX Réseau de neurones à circuit intégré Implantation sous forme de circuit intégré d’un réseau de neurone électronique à contrôle universel. Le DANA23 (Digital Adaptive Neuro ASIC) contient un réseau complet avec modification et sauvegarde des poids et biais avec un algorithme d’apprentissage intégré de type backpropagation modifié. Caractéristiques générales Technologie: 0,35 μ CMOS Dimension substrat: 35 mm2 Tension d’alimentation: 3,3 V Fréquence horloge: 33 MHz Puissance consommée: 0,5 W Boitier de type: CQFP 208 Dimensions: 30,6 mm x 30,6 mm x 4,1 mm Vitesse de traitement à 33MHz: 45MCUPS1 39 AVENIR DES RÉSEAUX NEURONAUX Réseau de neurones en circuit intégré 40 AVENIR DES RÉSEAUX NEURONAUX La logique floue La logique floue a été conceptualisée en 1965 par Lofti Zadeh Technique utilisée en intelligence artificielle Logique booléenne: 0: faux, 1:vrai Logique floue: niveau d’appartenance entre 0 et 1 à l’aide d’une fonction d’appartenance. La logique floue est complémentaire de la théorie des probabilité La théorie des possibilité a été introduite en 1978 par Lofti Zadeh Modèle Mamdani (interprétabilité) Modèle TSK (Takagi-Sugeno-Kang) (Précision) 41 AVENIR DES RÉSEAUX NEURONAUX Processus de fuzzification: Passage d’une grandeur physique à une variable linguistique. Identification des variables linguistiques Identification des valeurs linguistiques Exemple d’utilisation d’une variable linguistique que l’on nomme Puissance Valeurs linguistiques de la variable linguistique Puissance P pour positif, N pour négatif, M pour moyen, Z pour grand et A pour petit, par exemple, PZ signifie grand positif, NA signifie petit négatif… Exemple du graphique de degré d’appartenance Fonction d’appartenance triangulaire AVENIR DES RÉSEAUX NEURONAUX Règles d’inférences: Processus permettant de tracer la fonction de sortie à l’aide des fonctions logiques à valeurs multiples selon la base de connaissances. Défuzzification: Processus permettant le passage d’une variable linguistique en une grandeur physique. Il existe deux méthodes de défuzzification couramment utilisée: Méthode du maximum Méthode du centre de gravité 43 AVENIR DES RÉSEAUX NEURONAUX Commande FUZZY de la librairie fuzzy logic de Matlab Modèle Variables linguistiques Règles d’inférence Fonctions membres 44 AVENIR DES RÉSEAUX NEURONAUX Affichage des règles d’appartenance Surface des possibilités 45 AVENIR DES RÉSEAUX NEURONAUX Le réseau neuro-flou Le réseau neuro-flou a été proposé par J. S. R. Jang. C’est la combinaison d’un réseau de neurones artificielles associé à un système de logique floue. Cette combinaison s’approche du raisonnement humain (logique floue) doté de l’apprentissage connexionniste (réseau de neurones formels). Diagramme de connexion d’un système neuro-flou. AVENIR DES RÉSEAUX NEURONAUX Réseau de neurones biologiques sur substrat de silicium (neurochips) Un groupe de chercheur du Caltech (institut de technologie de Californie) ont réussi la greffe d’un neurone sur un substrat de silicium en 1991. La surface lisse du silicium est un environnement idéal pour la croissance des cellules cérébrales. Conception prochaine de circuits qui exécutent des calculs analogiques massivement parallèles La vision et les capacités de la mémoire neurologique exécutent massivement des opérations parallèles impossibles à reproduire même sur les plus grands superordinateurs du monde. 47 CONCLUSION Les réseaux de neurones formels sont en constante évolution et la nouvelle vogue est la combinaison de différents types de réseaux accomplissant des tâches spécifiques collaborant avec la logique floue . L’optimisation de la configuration des réseaux de neurones est actuellement un problème ouvert. Il existe diverses techniques mais il reste à trouver celle qui optimise vraiment la configuration selon un schéma théorique précis. Des recherches intensives sont en cours pour appliquer les réseaux SOM (auto-organisateur) dans le secteur de l’industrie. La compréhension des réseaux SOM permettra d’approcher le comportement du cerveau humain en hybridation avec la logique floue. Nous sommes encore loin de l’époque où un cerveau humain sera remplacé par une machine car les fonctions humaines même les plus simples demeurent encore à ce jour un énorme défis pour la technologie. 48 Vous avez des questions??? Vous pouvez obtenir copie de cette présentation sur le site http://rlepage.uqar.qc.ca/ 49