13
Réalisé par : Encadré par : MAADOUR Soufiane Pr. MAJDA Aicha ZYATE Mahmoud KAMRANI Abdelhalim HAMOUT Hamza BOUTAYEB Aymane Date début du projet : 18/02/2015 Date Fin du projet : 05/05/2015 Lien du Blog : www.gsirx.wordpress.com 2014 – 2015 Université Sidi Mohamed Ben Abdellah Faculté Des Sciences et Techniques Fès Objectifs Redéfinition de l’algorithme d’apprentissage en utilisation la fonction de voisinage gaussienne Compte Rendu Réseau de Kohonen

Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

Réalisé par : Encadré par :

MAADOUR Soufiane Pr. MAJDA Aicha

ZYATE Mahmoud

KAMRANI Abdelhalim

HAMOUT Hamza

BOUTAYEB Aymane

Date début du projet : 18/02/2015 Date Fin du projet : 05/05/2015

Lien du Blog : www.gsirx.wordpress.com

2014 – 2015

Université Sidi Mohamed Ben Abdellah

Faculté Des Sciences et Techniques

Fès

Objectifs

Redéfinition de l’algorithme d’apprentissage en utilisation la fonction de voisinage gaussienne

Compte Rendu Réseau de Kohonen

Page 2: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

2

Sommaire

SOMMAIRE ......................................................................................................................................................... 2

INTRODUCTION .................................................................................................................................................. 3

ALGORITHMES D’APPRENTISSAGE ...................................................................................................................... 8

FONCTION DE DECROISSANCE LINEAIRE ............................................................................................................................ 8

FONCTION DE DECROISSANCE GAUSSIENNE....................................................................................................................... 9

APPLICATION BASEE SUR KOHONEN ................................................................................................................. 10

Page 3: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

3

Introduction

Jusqu’au là dans notre cours on a supposé que les synapses W, ne sont pas en inter-

connexion. Mais en réalité cette supposition n’est pas valide, étant donné les recherches en

physiologie et en psychologie. Qui ont montré que les réseaux de neurones biologiques dans

le cerveau sont essentiellement des couches à deux dimensions des neurones interconnectés.

Chaque neurone d’entré est connecté à chaque neurone de sortie avec un poids de connexion

variable. Et ces neurones de sortie sont interconnecté avec des connections locales (latérales),

la force de la connexion latérale dépend de la distance entre le neurone et ses voisins.

Ces réseaux sont appelés des cartes auto-organisatrices SOFM (Self-Organizing Feature

Maps), ou ( topology preserving maps) puisque les poids (du neurone d’entrée i au neurone

du sortie j) seront organisés de telle sorte que les neurones proches sont sensibles aux en-

trées qui sont physiquement similaires. Un bas-niveau organisationnel est généralement pré-

déterminé, tandis qu’une organisation de haut-niveau est créée pendant la phase de

l’apprentissage par des algorithmes qui supporte l’auto-organisation. Dans ce sens Kohonen

(1982) annonce que ce caractéristique des cartes auto-organisatrice est similaire à ce qui se

passe dans le cerveau.

Les cartes auto-organisatrices de Kohonen sont basées sur l’apprentissage concurren-

tiel. Les neurones de sorties entre dans une compétition entre eux pour être activés. Quand

un neurone « gagne » avec un vecteur d’entrée x. tous les synapses dans son voisinage seront

mis à jours ce qui va finalement aboutir à un seul neurone en sortie sera activé.

L’algorithme de Kohonen, transforme un signal d’entrée à des dimensions quelconques

à une carte discrète à une ou deux dimensions, et il effectue cette transformation en

s’adaptant à un mode topologique. La figure ci-dessous montre l’architecture d’une carte de

Kohonen.

Figure 1 : Carte auto-organisatrice de Kohonen

Page 4: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

4

Pour induire une compétition « winner-takes-all » entre les neurones de sortie, on uti-

lise des connections latérales inhibiteurs. La figure 2 montre un treillis de neurones à une di-

mension avec des connections feedforward et feedback. Dans la

figure 2 représente le stimulus d’entrée pour le réseau. n le nombre de neurones d’entrée. Wji

les poids correspondant au neurone j. le feedback latéral est décrit par une fonction Gaus-

sienne montrée dans la figure 3. A partir de ces deux figures on peut voir que quelques feed-

back sont positives quand le neurone est dans région (1), tandis que quelques feedback sont

négatives quand ils sont plus loin dans la région (2). Dans la région (3) des stimulus faibles

sont ignorés.

Figure 2 : treillis de neurones à une dimension avec des connections feedforward et feedback.

Page 5: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

5

Dans la figure 2 : ϒji représentent les poids latérales feedback qui sont en connexion

avec le neurone j. Les Yi pour les valeurs de sorite du réseau. Avec m le nombre des neurones

dans le réseau. La sortie yj dans la couche de sortie est composée de deux parties : la première

est le stimulus d’entrée au neurone j :

L’autre partie est l’interconnexion latérale des neurones

dans la couche de sortie. La réponse du neurone j est :

Ou :

Avec f une fonction non linéaire. Des itérations seront menées pour trouver une solu-

tion à cette équation non-linéaire. La réponse du neurone j au temps (t+1) est :

Avec t : le temps discret. α : un facteur de feedback pour contrôler la convergence. ϒjk :

le coefficient du feedback comme une fonction de la distance entre les neurones.

Figure 3 : fonction Gaussienne des poids latéraux et self-feedback.

Page 6: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

6

Dans la figure 2 : on a m grappes (clusters) arrangés dans comme un tableau linéaire.

Ce réseau doit regrouper N model : dans ces

groupes. Avec wj le vecteur des poids synaptiques

du neurone j dans la couche de sortie.

Pour trouver le neurone de sortie qui va correspondre au vecteur d’entrée x, on com-

pare les produits scalaires avec et on choisit la valeur la plus large.

Ce qui est équivalent au critère de la distance euclidienne minimale entre vecteurs :

Quand le neurone j est le plus proche du vecteur x, ce neurone est le gagnant pour

l’entrée x. en utilisons cette approche, un espace continue d’entrée est mappé à un ensemble

discret de neurones.

Chercher le minimum des M distances revient à chercher

le maximum entre les scalaires : ou :

Sera alors la valeur d’activation du neurone gagnant, une fois le gagnant est

trouvé, le poids synaptique du neurone j doit être modifié en relation avec le vecteur d’entré

x, de telle sorte qu’il devient plus similaire (ou proche) du vecteur d’entrée. Le poids du neu-

rone gagnant est modifié par la formule :

Et les poids peuvent être mis à jours par :

wj (t) le poids synaptique du neurone j au temps t, wj (t+1) est la valeur mis à jours au

temps t+1 ; β(t) est le taux d’apprentissage et il est variée dynamiquement durant

l’apprentissage.

Page 7: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

7

La figure 4 montres deux tableaux de neurones planaires avec des voisinages rectangu-

laire et hexagonale est utilisé comme une mesure de similarité entre x et wj

Le rayon de doit diminuer au fur et à mesure que l’apprentissage progresse

avec : le rayon peut être très large

quand l’apprentissage commence (qui peut être utile pour une organisation initiale globale

des poids). Vers la fin de l’apprentissage le voisinage peut se réduire au seul neurone vain-

queur.

Figure 4 : Voisinage autour du neurone gagnant j.

Page 8: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

8

Algorithmes d’apprentissage Fonction de décroissance linéaire

Il s’agit d’un algorithme basé sur une fonction de décroissance linéaire :

Pour choisir les voisinages du neurone gagnant, on est obligé de choi-

sir dans un premier temps le nombre de voisinages de neurone ga-

gnant afin de lancer l’équation de décroissance.

Page 9: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

9

Fonction de décroissance gaussienne

Si on veut que le rayon d’action décroisse dans le temps de manière à ce que vers la fin de l’apprentissage,

seul le neurone gagnant subisse une mise à jour significative de son vecteur, on peut faire décroitre expo-

nentiellement la variance de la gaussienne en fonction de temps :

- α0 est le taux d’apprentissage d’âpres Kohonen, cette constante doit être à l’ordre 𝒑𝒖𝒊𝒔𝒔𝒂𝒏𝒄𝒆(𝟏𝟎,−𝟏).

-la mise à jour de l’écart type de fait par la fonction suivante :

L’algorithme correspondant serait le suivant

Page 10: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

10

Application base e sur Koho-nen

On a essayé de développer une première application en java implémentant l’algorithme de Kohonen et la

fonction gaussienne lors de sélections des voisinages de neurone gagnant.

Dans le cadre d’apprentissage, on donne à l’utilisateur la liberté de choisir aléatoirement un nombre des

itérations, écart type initial, écart type final et finalement le taux d’apprentissage.

A la fin de l’apprentissage de réseau de Kohonen on peut passer à l’angle de classification.

Page 11: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

11

Dans le cadre de la classification c’est à l’utilisateur d’importer une image des lettres souhaitée :

Page 12: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

12

Apres avoir choisi l’image à identifier il suffit de cliquer sur le bouton Tester afin que le programme identifie

la classe correspondente.

Page 13: Compte Rendu - gsirx.files.wordpress.comavec le neurone j. Les Y i pour les valeurs de sorite du réseau. Avec m le nombre des neurones dans le réseau. La sortie y j dans la couche

GROUPE SIRX MSIR 2014

13

La classification donne des résultats généralement justes .