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

Plan Les réseaux de neurones –Historique –Définitions –Réseaux « usuels » Le réseau RBF –Introduction –Paramètres RBF et Mushroom –Paramètres –Algorithme.

Présentations similaires


Présentation au sujet: "Plan Les réseaux de neurones –Historique –Définitions –Réseaux « usuels » Le réseau RBF –Introduction –Paramètres RBF et Mushroom –Paramètres –Algorithme."— Transcription de la présentation:

1 Plan Les réseaux de neurones –Historique –Définitions –Réseaux « usuels » Le réseau RBF –Introduction –Paramètres RBF et Mushroom –Paramètres –Algorithme –Résultats –Optimisations

2 Les réseaux de neurones

3 Historique (1) : Alan TURING : Machine de Turing 1943 : Warren McCULLOCH & Walter PITTS (neurobiologistes US) : Modèle de neurone : von Neuman : Les réseaux dautomates 1949 : Donald HEBB : Hypothèse de l'efficacité synaptique, notion de mémoire associative, premières règles d'apprentissage : Franck ROSENBLATT et Bernard WIDROW créent le Perceptron et Adaline. 3

4 Les réseaux de neurones Historique (2) 1969 : Marvin MINSKY et Seymour PAPERT : Analyse théorique des capacités de calcul des réseaux à base de perceptrons. Mise en évidence de fortes limitations. Stagnation des recherches sur les réseaux neuromimétiques : Report des efforts sur l'Intelligence Artificielle. Années 1980 : Stephen GROSSBERG et Teuvo KOHONEN : Découvrent de nouvelles voies : auto-organisation des réseaux et processus d'adaptation. Renaissance du Connexionnisme. 4

5 Les réseaux de neurones Historique (3) John HOPFIELD : Analogies avec la Mécanique Statistique. Comportement de systèmes constitués d'un grand nombre d'éléments simples interagissant fortement. Application des nombreux résultats de la physique théorique au connexionisme. Machine de BOLTZMANN et Perceptron Multi-Couches (PMC) : Mécanismes d'apprentissage performants. Evolution des ordinateurs : simulation de modèles complexes. 5 On est donc passé dun point de vue biologique à un point de vue mathématique et informatique.

6 Les réseaux de neurones Définitions (1) 6 6 Neurone : Sorte dautomate qui se compose dentrées, dune sortie et dune fonction des entrées vers la sortie. WnWn f x1x1 xnxn W1W1 y=f(W 1 X 1 + … + W n X n ) Fonction dactivation Poids dune connexion Connexion

7 Les réseaux de neurones Définitions (2) Réseau de neurones : Interconnexion déléments simples (neurones) Graphe orienté (connexions) Echange dinformation via ces connexions Calcul distribué et coopératif … … … 7 ENTREESORTIE

8 Les réseaux de neurones Définitions (3) 8 Réseau de neurones (suite) : Cest le renforcement ou laffaiblissement de certaine connexion qui adapte la structure du réseau pour donner des réponses différentes. Chaque neurone est paramétrable et, afin dobtenir un réseau intéressant, on modifie ces paramètres pour adapter les calculs quils effectuent. Tout ceci crée une caractéristique des réseau de neurone : lapprentissage (et loubli).

9 Les réseaux de neurones Définitions (4) 9 Apprentissage supervisé : Mode d'apprentissage le plus courant. Consiste à évaluer les poids synaptiques (poids des connexions) qui minimisent lerreur globale sur une Base dapprentissage. Cette Base dapprentissage est une série dentrée au réseau desquelles on connaît les sorties associées. Exemples : Perceptron, Adaline

10 Les réseaux de neurones Définitions (5) Apprentissage non-supervisé : Mode dapprentissage moins intuitif. Correspond au cas où il nest pas possible davoir une Base dapprentissage. Dans ce cas, on présente les entrées au réseau et on le laisse évoluer librement jusquà ce quil se stabilise. Exemples : Cartes de Kohonen 10

11 Les réseaux de neurones Les réseaux « usuels » (1) 11 Les premiers modèles de neurones étaient caractérisés par une fonction d'activation à seuil simple (binaire : 0=inactif, 1=actif). Le déclenchement de l'activité intervient si la somme des excitations dépasse un certain seuil propre au neurone. Fonction seuil : f(x) = 1, si x > SEUIL. f(x) = 0, sinon.

12 Les réseaux de neurones Les réseaux « usuels » (2) 12 Le modèle binaire a été rapidement perfectionné, mais l'effet de seuil reste souvent recherché. Un neurone est d'autant plus actif qu'il est excité (fonction monotone croissante) et un neurone ne peut être actif au-delà d'une certaine valeur (fonction bornée). Fonction linéaire bornée : f(x) = -1 ou 1, au-delà des bornes. f(x) = A*x, sinon.

13 Les réseaux de neurones Les réseaux « usuels » (3) 13 Lorsque la fonction d'activation est dérivable, il est possible d'utiliser des algorithmes d'apprentissage performants, basés sur la recherche d'un minimum de la fonction d'erreur, notamment la "rétro- propagation du gradient" pour les PMC. Une fonction est Sigmoïde lorsqu'elle est monotone croissante, dérivable et bornée. Ce type de fonction combine l'avantage de l'effet de seuil et de la dérivabilité. Les fonctions sigmoïdes sont donc très utilisées.

14 Les réseaux de neurones Les réseaux « usuels » (4) 14 Fonction sigmoïde exponentielle : f(x) = 1 / (1+EXP(-x)) Dérivée : f'(x) = f(x)*(1-f(x)) Fonction sigmoïde tangentielle : f(x) = TANH(x) Dérivée : f'(x) = 1-F(x)²

15 Le réseau RBF

16 Introduction (1) 16 Modèle proposé par : Powell (1985) Broomhead et Lowe (1988) Moody et Darken (1989) Pooggio et Girosi (1990) RBF ? Radial Basis Function

17 Le réseau RBF Introduction (2) 17 Le réseau RBF est un réseau de neurones supervisé. Il sagit dune spécialisation dun PMC. Un RBF est constitué uniquement de 3 couches : La couche dentrée : elle retransmet les inputs sans distorsion. La couche RBF : couche cachée qui contient les neurones RBF. La couche de sortie : simple couche qui contient une fonction linéaire. Chaque couche est fully connected à la suivante.

18 Le réseau RBF Introduction (3) … … ENTREESORTIE n N 18 Chaque neurone RBF contient une gaussienne qui est centrée sur un points de lespace dentrée. Pour une entrée donnée, la sortie du neurone RBF est la hauteur de la gaussienne en ce point. La fonction gaussienne permet aux neurones de ne répondre quà une petite région de lespace dentrée, région sur laquelle la gaussienne est centrée.

19 Le réseau RBF Introduction (4) Fonction gaussienne : f(x) = EXP(x² / (2* Beta²)) 19

20 Le réseau RBF Introduction (5) … … ENTREE SORTIE = n N La sortie du réseau est simplement une combinaison linéaire des sorties des neurones RBF multipliés par le poids de leur connexion respective. W1W1 W2W2 W3W3 WNWN 20

21 Le réseau RBF Paramètres (1) 21 Il y a 4 paramètres principaux à régler dans un réseau RBF : Le nombre de neurones RBF (nombre de neurones dans lunique couche cachée). La position des centres des gaussiennes de chacun des neurones. La largeur de ces gaussiennes. Le poids des connexions entre les neurones RBF et le(s) neurone(s) de sortie. Tout modification dun de ces paramètres entraîne directement un changement du comportement du réseau.

22 Le réseau RBF Paramètres (2) 22 Le nombre de neurones RBF (N) et la position des gaussiennes sont deux paramètres intimement liés. Deux optiques soffrent à nous : soit I nest pas trop grand et alors N=I ; soit I est trop grand et on choisi N<

23 Le réseau RBF Paramètres (3) Nombre et position avec N=I : Dans ce cas-ci (le plus simple), le nombre de neurones RBF est égal au nombre dexemples soumis au réseau. Chacune des gaussiennes est alors centrée sur un des exemples. 23

24 Le réseau RBF Paramètres (4) 24 Nombre et position avec N<

25 Le réseau RBF Paramètres (5) 25 Choix de la position des centroïdes avec N<

26 Le réseau RBF Paramètres (6) Choix de la position des centroïdes avec N<

27 Le réseau RBF Paramètres (7) 27 Une fois tous les centres C j choisis, il faut déterminer la largeur (ß) des gaussiennes. Une règle empirique consiste à prendre : ß = avec M = nombre de centroïdes et d = max ||c i - c j ||, 1 i,j M si on choisit un ß égal pour toutes les gaussiennes. Mais rien nimpose de prendre la même valeur de ß pour chaque centroïde. Dans ce cas, un autre règle nous dit : ß j = ||x i - c j ||

28 Le réseau RBF Paramètres (8) 28 Une fois le nombre et la position des centroïdes et la largeur des gaussiennes fixés, les poids de chacune des connexions (RBF-output) peut être calculé par léquation matricielle suivante : avec f(x) = EXP(x² / (2* ß ²)), la gaussienne. la matrice colonne Y, les output attendus M, le nombre de centroïdes N, le nombre dexemples dans la base dapprentissage

29 Le réseau RBF Paramètres (9) Enfin, un fois lapprentissage effectué, la partie test peut commencer. Elle se résume aussi en une équation matricielle : 29 avec f(x) = EXP(x² / (2* ß ²)), la gaussienne. la matrice colonne W, les poids des connexions (RBF-output) M, le nombre de centroïdes t i, le i ème élément de la base de test

30 RBF et Mushroom

31 Paramètres (1) 31 Nombre et position des centroïdes : Dans un premier temps cas le plus simple : N = I Mais double matrice[][] = new double[6500][6500] … Java = !!! Rappel : 8124 champignions, 80 % dapprentissage (6500) et 20 % de test (1624). Donc, mauvaise idée.

32 RBF et Mushroom Paramètres (2) 32 Nombre et position des centroïdes : Deuxième approche N<

33 RBF et Mushroom Paramètres (3) 33 Largeur des gaussiennes : Dans un premier temps, tous les gaussiennes ont la même largeur, cas le plus simple. ß = Les poids des connexions nont donc plus quà être calculés par léquation matricielle vue avant.

34 RBF et Mushroom Algorithme (1) (Code en Annexe1) Choix des centroïde Reprendre les informations du fichier texte. Déterminer les cordonnées des centroïdes (choix aléatoire (entre 10 et 200) dans la base dapprentissage ). 2. Définir la largeur des gaussiennes maximum des distances entre les centroïdes / racine carrée du nombre de centroïdes. 3. Création de la matrice phy Création de la matrice des distances (6500 * le nombre de centroïdes). Appliquer la gaussienne à chaque éléments de cette matrice de distance.

35 RBF et Mushroom Algorithme (2) Résolution de l'équation matricielle pour obtenir les poids Résolution du système [Matrice_Phy][poids_inconnus]=[output_apprentissage] (cf. JNL). Récupérer la matrice des poids (nombre de centroïdes(de 10 à 200)*1). 5. Test Pour chaque exemple de test : – Calcul de la matrice des distances entre lexemple et les centroïdes (1* le nombre de centroides). – Appliquer la gaussienne à cette matrice. – Résolution du système [Matrice_Phy][poids_connus]=X (cf. JNL). – Appliquer une fonction qui détermine si loutput (X) est 1 ou 0. – Comparer cet output (X) avec l'output attendu Calculer le taux d'erreur globale.

36 RBF et Mushroom Résultats 36 Lalgorithme est arrivé à un maximum de bonne classification de 94,5 % avec un nombre de centroïdes de 140. Soit +/- 1/50 de la base d apprentissage. Rem : essai avec plus de centroïdes (500) et différents ß, mais pas de meilleurs résultats … bien au contraire.

37 RBF et Mushroom Optimisations 37 Deux optimisations permettraient certainement dobtenir encore de meilleurs résultats : Définir un ß différents pour chaque gaussienne. Celui-ci serait approprié à chacune dentre elles. Ne plus choisir aléatoirement les centroïdes mais les fixés grâce à un LVQ (code en Annexe2).

38 Bibliographie Cette présentation, mes codes et le package JNL sont disponibles sous forme électronique sur ma page Web : 38


Télécharger ppt "Plan Les réseaux de neurones –Historique –Définitions –Réseaux « usuels » Le réseau RBF –Introduction –Paramètres RBF et Mushroom –Paramètres –Algorithme."

Présentations similaires


Annonces Google