La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

RECONNAISSANCE DE FORMES IAR-6002. Réseaux de neurones u Introduction u Réseaux sans couches cachées u Réseaux avec des couches cachées u Algorithme de.

Présentations similaires


Présentation au sujet: "RECONNAISSANCE DE FORMES IAR-6002. Réseaux de neurones u Introduction u Réseaux sans couches cachées u Réseaux avec des couches cachées u Algorithme de."— Transcription de la présentation:

1 RECONNAISSANCE DE FORMES IAR-6002

2 Réseaux de neurones u Introduction u Réseaux sans couches cachées u Réseaux avec des couches cachées u Algorithme de propagation-arrière u Réseaux de Hopfield

3 Introduction u Les réseaux de neurones permettent de simuler lactivité du cerveau humain u Des tâches comme la reconnaissance de visages humains est accomplit facilement par un humain mais devient très difficile pour les ordinateurs conventionnels u Le cerveau humain est composé de cellules nerveuses (neurones) organisées de façon à travailler en parallèle sur le même problème

4 Introduction u Un neurone est constitué dun corps cellulaire, de dendrites qui reçoivent les signaux en entrée et daxones qui émettent les signaux en sortie u Les dendrites reçoivent des signaux des organes sensoriels (yeux, oreilles) ou daxones dautres neurones u Les axones émettent des signaux à des organes comme les muscles ou aux dendrites dautres neuronnes

5 Introduction

6 u Un neurone reçoit des signaux de plusieurs milliers de dendrites et émet au travers de centaines daxo- nes u Avec le haut niveau de redondance des connexions entre neurones, les performances du cerveau sont robustes u Dans plusieurs régions du cortex cérébral, les neurones sont organisés en couches u Un neurone reçoit généralement des signaux des neurones de la couche adjacente

7 Introduction u De plus, les signaux en entrée proviennent de neurones dune petite région proche du neurone récepteur, et le patron dinterconnexion est similaire pour chaque neurone récepteur u Les connexions entre les couches sont générale- ment dans une seule direction, partant du traite- ment bas-niveau (œil, oreille) jusquà un haut- niveau de raisonnement

8 Introduction u Premier modèle mathématique dun neurone (McCulloch et Pitts) –Les entrées sont définies par x 1,…..x M. –Calcul dune somme pondérée s en utilisant les poids w 1,…w M. –Seuillage de s SI s > T ALORS sortie = 1 SI s <= T ALORS sortie = 0

9 Introduction u Les connexions avec des poids positifs sont excitatives et celles avec des poids négatifs sont inhibitives u La sortie dun neurone est 1 SI

10 Introduction u Nous pouvons réécrire cette expression u Le poids w 0 est un poids biaisé

11 Introduction u Ce nouveau modèle est représenté

12 Introduction u Lentraînement des réseaux de neurones est laspect le plus difficile de leurs utilisations u Lentraînement revient à trouver les poids w i permettant aux réseaux de fonctionner avec une performance acceptable

13 Réseaux sans couches cachées u Ces réseaux sont aussi appelés réseaux à deux couches, une couche en entrée et une en sortie w ij DjDj xixi

14 Réseaux sans couches cachées u Rosenblatt a crée un classificateur pouvant être entraîné (PERCEPTRON) u Lalgorithme dentraînement permet de déduire les poids du PERCEPTRON qui sont eux, identiques aux coefficients de la fonction discriminante

15 Réseaux sans couches cachées u Par exemple

16 Réseaux sans couches cachées u La fonction discriminante prend la forme

17 Réseaux sans couches cachées u Recherche des poids w i –Nous cherchons les valeurs de poids qui minimise la fonction u d p : sorties désirées de lobservation p u x p1,…., x pM : valeurs caractéristiques de lobservation p u Les poids sont optimisés dun seul coup pour tout léchantillon dentraînement en posant les dérivées par- tielles E/ w i égale à 0 et en trouvant la solution du système déquations linéaires résultant pour chaque w i

18 Réseaux sans couches cachées u Recherche des poids w i – Lalgorithme MSE séquentiel est une technique adaptative avec laquelle les observations dentraîne- ment sont présentées au système une à la fois –Une observation est classifiée par le réseau et le résultat (D) est comparé aux sorties (d) de la vraie classe de cette observation –Si lobservation est mal classée, les poids w i sont corrigés proportionnellement aux valeurs caractéris- tiques p multiplié par la différence entre les sorties désirées et celles actuelles

19 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud –Lalgorithme MSE utilise la procédure steepest descent minimisation (SDM) pour corriger les poids de chaque observation –Les poids sont changés selon les directions qui permettent à la fonction E de décroître rapidement –La direction de décroissance maximale de la fonc- tion derreur est donnée par le vecteur

20 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud (1 sortie) (procédure SDM) –Choisir des poids de départ w 1,…w M, et une cons- tante c positive –Calculer les dérivées partielles F/ w i ( E/ w i ) pour i=1,…,M, et remplacer w i par w i - c F/ w i pour i=1,…,M ( E/ w i E/ w i ) –Répéter létape précédente jusquà ce que les poids w 1,…,w M ne changent plus significati- vement

21 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud (exemple de procédure SDM)

22 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud (exemple de procédure SDM) (c = 0.1)

23 Réseaux sans couches cachées u La procédure SDM (difficultés) –Choix de w i au départ –Choix de la constante c u Le choix de w i peut influencer la convergence vers des minima locaux si w i est trop loin des valeurs w i qui donnent un minimum global u Si la constante c est trop petite la convergence est lente, si c est trop grand lalgorithme peut passer par dessus des minima sans converger

24 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud –Nous faisons une mise à jour séquentiel des poids en considérant une observation à la fois

25 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud –Choix des poids de départ w 0,….w M, et une constante c –Présenter les observations 1 à N au classificateur, revenant à lobservation 1 après N. En calculant pour chaque observation

26 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à un seul nœud –Remplacer w i par w i - c(D-d)x i pour chaque i –Répéter les 2 étapes précédentes tant que les w i changent

27 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à nœuds multiples u Pour chacune des N observations nous avons: – un vecteur de caractéristiques x 0, x 1, …. x M. –Un vecteur en sortie d 1, d 2, …, d N. –Les poids w ij correspondent à la connexion entre lentrée i et le nœud de sortie j

28 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à nœuds multiples

29 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à nœuds multiples –Choix des poids de départ w 0,….w M, et une constante c –Présenter les observations 1 à N au classificateur, revenant à lobservation 1 après N. En calculant pour chaque observation

30 Réseaux sans couches cachées u Lalgorithme MSE séquentiel à nœuds multiples –Remplacer w ij par w ij - c(D j -d j )x i pour chaque i –Répéter les 2 étapes précédentes tant que les w ij changent u Les algorithmes MSE séquentiel à un et multiples nœuds sont reconnus pour être efficace lorsque les classes sont bien séparées

31 Réseaux avec couches cachées u En général, un réseau à plusieurs couches est caractérisé: –K+1 couches de nœuds, dénotées 0, 1, …., K –La sortie du nœud i de la couche k est dénotée x i (k) et représente la valeur seuillée de la somme pondé- rée des entrées –La couche 0 est appelée couche rétine (entrée) –La couche K est la couche de sortie –Les couches entre les deux sont les couches cachées

32 Réseaux avec couches cachées u Réseau à plusieurs couches

33 Algorithme de propagation-arrière u Lentraînement dun réseau multicouche ne peut être fait par la méthode SDM puisquune variation dun poids ne change généralement pas les sorties du réseau u La sortie dun nœud sera changée seulement si les poids changent suffisamment pour que la somme pondérée change de signe u Même si une sortie change de valeur dans une couche donnée cela ne signifie pas que les sorties de la prochaine vont changer

34 Algorithme de propagation-arrière u Les sorties finales du réseau sont alors résistantes aux petites variations des poids dans le réseaux u Pour éliminer le besoin des seuils T nous pourrions être tenté déliminer ces seuils et de calculer sim- plement la somme pondéré à chaque nœud u Par contre, les réseaux à couches multiples devien- nent inutiles puisque dans ce contexte nous pou- vons déduire un réseau à 2 couches équivalents

35 Algorithme de propagation-arrière u Réseaux sans seuil

36 Algorithme de propagation-arrière u Réseaux sans seuil

37 Algorithme de propagation-arrière u Nous pouvons trouver un compromis entre lutili- sation dun seuil discontinu ou dune combinaison linéaire à chaque nœud en utilisant une fonction sigmoïde de la forme

38 Algorithme de propagation-arrière u La fonction R à chaque nœud permet aux sorties du réseau dêtre des fonctions différentiables des poids. u Lensemble des poids peut alors être détermininé par la méthode SDM

39 Algorithme de propagation-arrière u Pour lentraînement du réseau lalgorithme PA utilise la procédure SDM et une fonction sigmoïde u Les couches sont dénotées k=0,1,….K avec k=0 pour la couche dentrée et k=K pour la couche de sortie u La sortie du noeud j dans la couche k est dénotée par x j (k) pour j=1,…M k ou M k est le nombre de nœuds de la couche k (sans compter le nœud avec un poids biaisé)

40 Algorithme de propagation-arrière u Pour la couche dentrée: x j (0) = x j pour j=1,…M 0 u Pour chaque couche sauf la couche de sortie la sortie du nœud à poids biaisé est x 0 (k) =1 pour k=0,…,K-1 u Les sorties sont x j (K) pour j=1,…,M K u Les poids des connexions entre le nœud i de la couche k-1 et le nœud j de la couche k est w ij (k)

41 Algorithme de propagation-arrière u Les poids des connexions entre le nœud i de la couche k-1 et le nœud j de la couche k est w ij (k)

42 Algorithme de propagation-arrière u Étapes de lalgorithme PA –Phase dalimentation-avant (feed-forward) par laquelle les sorties des nœuds sont calculées à partir de la couche 1 vers la couche K –Phase de propagation arrière où les poids sont ajustés pour que les sorties x 1 (K), …., x MK (K) et les sorties désirées d 1,…d MK soient en accord

43 Algorithme de propagation-arrière u 1) Initialisation des poids w ij (k) à de petites valeurs aléatoires et choix dune constante c positive u 2) Pour chaque observation 1 à N, initialisée les entrées x 1 (0), …., x M0 (0), revenant à lobservation 1 après avoir atteint lobservation N u 3) Alimentation-avant. Pour k=0,…,K-1 calculer

44 Algorithme de propagation-arrière u 4) Propagation-arrière. Pour les nœuds de la couche de sortie j= 1,…, M K calculer u Pour les couches k = K-1, …, 1 calculer

45 Algorithme de propagation-arrière u 5) Remplacer les poids u 6) Répéter les étapes 2 à 5 TANT QUE les poids changent significativement

46 Algorithme de propagation-arrière u Si la valeur de sortie dun nœud est proche de 0 ou 1 la valeur de j (k) -> 0, cela signifie alors que la valeur des poids est stable u La phase de PA utilise la méthode SDM pour ajus- ter les poids de façon à minimiser la fonction der- reur

47 Algorithme de propagation-arrière u Les dérivées partielles de E sont calculées par rap- port aux poids de la couche K et ainsi de suite jus- quà la couche 1 u De plus, les dérivées partielles de la couche k découlent de celles calculées de la couche k+1

48 Algorithme de propagation-arrière u La fonction de correction j (K) découle

49 Application (Reconnaissance de visage) u Image initiale du visage de 30X30 en 256 niveaux de gris u Compression des données 900->40 u Réseau de classification à une couche cachée u Réseau entraîné avec 80 visages u Réseau testé avec 10 visages

50 Application (Reconnaissance de visage)

51 Réseaux de Hopfield u Le cerveau humain est capable de reconnaître des formes même si elles sont réprésentées de façons imparfaites u De plus, la reconnaissance dune forme particulière peut amener la résurgeance dautres évènements mémorisés u Ce concept fait référence aux mémoires associati- ves par lesquelles une forme même imparfaite est associée à dautres formes

52 Réseaux de Hopfield u Un réseau de Hopfield est une mémoire associative simple u Les formes sont représentées par des séquences de n-bits de 1 et de -1 u Contrairement à la plupart de réseaux qui sont à alimentation-avant, chaque nœud du réseau de Hopfield est connectés aux autres nœuds du réseau u De plus, chaque connexion possède un poids et est bidirectionnelle

53 Réseaux de Hopfield u Lassignation des poids représente la phase dap- prentissage du réseau par laquelle les formes à as- sociées sont emmagasinées dans le réseau u Par la suite, dès quune forme est présentée au réseau, celui-ci recherche la forme emmagasinée la plus semblable à celle introduite en entrée

54 Réseaux de Hopfield u Étapes de la classification –Les n nœuds du réseau sont initialisés aux n valeurs caractéristiques dune forme –Chaque nœud calcule la somme pondérée des valeurs des autres nœuds et change sa valeur à 1 si la somme pondérée est + ou à -1 si cette somme est - –Dès que les poids cessent de changer le réseau à alors atteint un état stable qui correspond à la forme stockée la plus proche de celle introduite en entrée

55 Réseaux de Hopfield u Le réseau converge alors vers la forme dont la dis- tance est minimale. La distance étant donnée par le nombre de positions de 2 chaînes (formes) x et y dont les valeurs sont différentes u Les résultats expérimentaux démontrent que les réseaux de Hopfield peuvent emmagasinés approximativement 0.15n formes, où n est le nombre de nœuds du réseaux

56 Réseaux de Hopfield

57 u Exemple de réseau de Hopfield avec comme forme en entrée:

58 Algorithme de stockage u Les poids w ij sont déduits des formes à emmagasi- ner u Le poids entre les nœuds i et j dépendent de la similarité entre les bits i et j des formes emmaga- sinées u Nous pouvons représenter une forme p pour 1<=p<=m

59 Algorithme de stockage u Les poids w ij entre les nœuds i et j sont calculés par u Le poids entre les nœuds i et j est alors le nombre de fois que le bit i et j dune forme sont pareilles moins le nombre de fois quils diffèrent et ce additionner sur lensemble des formes emmagasinées

60 Algorithme de retrait u Si nous avons une forme à recherchée donnée par u Le traitement commence en initialisant chaque nœud i par les valeurs y i. Ensuite, chaque valeur de y i choisie aléatoirement est mise à jour tant que le réseau ne conver- ge pas vers un état stable. La mise à jour de y i devient:

61 Algorithme de retrait u Pour comprendre comment une forme y est mise à jour de façon itérative nous réécrivons u Si une forme y (INPUT) est semblable à une forme x (p) la quantité entre parenthèse sera proche de n si ces formes sont très différentes cette même quantité sera proche de -n

62 Algorithme de retrait (convergence) u Pour démontrer la convergence nous écrivons u Ce qui représente la fonction Liapunov du réseau. Quand un nœud k déclenche, E ne doit pas augmenter. Pour voir cela supposons que le nœud k déclenche et que y k change de 1 à -1. E peut être réécrit

63 Algorithme de retrait (convergence) u Si E est la différence entre la valeur originale de E (quand y k = +1) et sa nouvelle valeur (quand y k = -1) et y la différence entre la valeur originale de y k (+1) et sa nouvelle valeur y k (-1) alors E sécrit

64 Algorithme de retrait (convergence) u Si E est la différence entre la valeur originale de E (quand y k = +1) et sa nouvelle valeur (quand y k = -1) et y la différence entre la valeur originale de y k (+1) et sa nouvelle valeur y k (-1) alors E sécrit

65 Algorithme de retrait (convergence) u Si E est la différence entre la valeur originale de E (quand y k = -1) et sa nouvelle valeur (quand y k = +1) et y la différence entre la valeur originale de y k (-1) et sa nouvelle valeur y k (+1) alors E sécrit

66 Algorithme de retrait (convergence) u E est décroissant (par coup de 2) et a une borne inférieure donnée par

67 Algorithme de retrait (convergence) u Le réseau converge vers un état stable u Après avoir atteint un état stable, cet état ne change pas même si les noeuds continus de déclencher u Un état stable vers lequel le réseau converge nest pas nécessairement unique et peut ne pas être une des formes enmagasinées u Ces situations surviennent lorsque le nombre de formes stockées par rapport au nombre de noeuds du réseau


Télécharger ppt "RECONNAISSANCE DE FORMES IAR-6002. Réseaux de neurones u Introduction u Réseaux sans couches cachées u Réseaux avec des couches cachées u Algorithme de."

Présentations similaires


Annonces Google