• Aucun résultat trouvé

Chapitre 2 : Modélisation multiéchelle de l’ultrastructure osseuse par éléments finis et réseaux de neurones

5. Modélisation multiéchelle de l'ultrastructure par réseaux de neurones

5.1. Méthode des Réseaux de Neurones (RN)

5.1.1. Définition et historique

Les réseaux de neurones sont composés d’éléments simples (neurones) fortement connectés, fonctionnant en parallèle. Ces éléments ont été inspirés du système nerveux biologique. Comme dans la nature, le fonctionnement du réseau de neurones est influencé par la connexion des éléments entre eux. Chaque élément calcule une sortie unique sur la base des informations qu'il reçoit. La première apparition de cette méthode date de1890 ; on la doit à W. James, célèbre psychologue américain, qui a introduit le concept de mémoire associative et proposé la loi de fonctionnement de l’apprentissage par les réseaux de neurones, connue plus tard sous le nom de loi de Hebb. Cette méthode a évolué et a ensuite été utilisée dans plusieurs domaines. En 1943, J. Mc Culloch et W. Pitts ont proposé le premier modèle de neurone biologique [DAVALO et NAIM, 1993].En 1949, D. Hebb, physiologiste américain explique le conditionnement chez l’animal par les propriétés des neurones. En 1958, le psychologue F. Rosenblatt a développé le modèle du perceptron [ROSENBLATT, 1958]. Il s’agit d’un réseau de neurones, capable d’apprendre à différencier des formes simples et à calculer certaines fonctions logiques. En 1982, Hopfield a démontré l’intérêt des réseaux

Paramètres valeurs Géométrie Longueur de fibrille (nm) 200 Diamètre de fibrille (nm) 100 Longueur de modèle (nm) 440 Largeur du modèle (nm) 202, 203, 204 Mécanique

Module de Young de minéral (GPa) 150, 114, 62.75 Coefficient de Poisson de minéral 0.27

Module de Young de fibrille (GPa) 36, 60, 110 Coefficient de Poisson de microfibrille 0.28

Chapitre 2 : Modélisation multiéchelle de l’ultrastructure osseuse par éléments finis et réseaux de neurones __________________________________________________________________________________________ entièrement connectés [DAVALO et NAIM, 1993]. Parallèlement, Werbos a conçu un mécanisme d’apprentissage pour les réseaux multicouches de type perceptron (la rétro-propagation). Cet algorithme permet de propager l’erreur vers les couches cachées. Depuis ces travaux, la méthode des réseaux de neurones a été appliquée dans différents domaines scientifiques : aérospatial (pilotage automatique, simulation du vol, etc.), automobile (système de guidage automatique, etc.), défense (guidage de missile, suivi de cible, reconnaissance du visage, radar, sonar, lidar, traitement du signal, compression de données, suppression du bruit, etc.), électronique (prédiction de la séquence d’un code, vision machine, synthétiseur vocal, modèle non linéaire, etc.), finance (prévision du coût de la vie), télécommunications (compression de données, etc.).Les réseaux neurones ont été largement employés dans l'analyse des problèmes de la science et de la technologie [TOPPING et BAHREININED, 1992, JENKINS, 1997, RAFIQ et al, 2011, HAMBLI et al, 2006, CHAMEKH et al, 2007]. Hambli et al. [HAMBLI et al, 2011] ont appliqué cette méthode à des études multiéchelle sur l’os.

5.1.2. Structure des réseaux de neurones

Du point de vue modélisation mathématique, on peut définir un réseau de neurones artificiel par les quatre éléments suivants [CHAMEKH et al, 2007] : (i) La nature des entrées et des sorties, (ii) La fonction d’entrée totale qui définit le prétraitement effectué sur les entrées, (iii) La fonction d’activation du neurone qui définit son état en fonction de son entrée totale et (iv) La fonction de sortie qui calcule la sortie du réseau en fonction de son état d’activation.

Il existe deux types de réseaux de neurones : des réseaux non bouclés et des réseaux bouclés : Réseau de neurones non bouclé : un réseau de neurones non bouclé est représenté graphiquement par un ensemble de neurones connectés entre eux, l’information circulant des entrées vers les sorties dans un seul sens "sans retour " [CHAMEKH et al, 2007] (Figure 2.11(a)). Les réseaux non bouclés à couche sont structurés de manière telle que les neurones appartenant à une même couche ne sont pas connectés entre eux, chacune des couches recevant des signaux de la couche précédente, et transmettant le résultat de ses traitements à la couche suivante. Les deux couches extrêmes correspondent à la couche d’entrée qui reçoit ses entrées du milieu extérieur d’une part, et à la couche de sortie qui fournit le résultat des traitements effectués d’autre part. Les couches intermédiaires sont appelées couches cachées, leur nombre est variable. Les réseaux de neurones non bouclés à couches dont les neurones

Chapitre 2 : Modélisation multiéchelle de l’ultrastructure osseuse par éléments finis et réseaux de neurones __________________________________________________________________________________________ cachés ont une fonction d’activation sigmoïde, sont souvent appelés des perceptrons multicouches (ou MLP pour Multi-Layer Perceptron) [CHAMEKH et al, 2007].

Réseau de neurones bouclé : un réseau de neurones bouclé est schématisé par un graphe des connexions cyclique. Lorsqu’on se déplace dans le réseau en suivant le sens des connexions, il est possible de trouver au moins un chemin qui revient à son point de départ. Ainsi, un retard entier, multiple de l’unité de temps choisie, est attaché à chaque connexion d’un réseau de neurones bouclé. La figure 2.11(b) représente un exemple de réseau de neurones bouclé. Les chiffres dans les carrés indiquent le retard attaché à chaque connexion, exprimé en multiple de l’unité de temps.

Figure 2. 11.Types de réseaux de neurones: (a) Structure d’un réseau de neurones non bouclé, (b) un réseau de neurones bouclé à deux entrées.

5.1.3. Apprentissage des réseaux de neurones

L'apprentissage est une phase du développement d'un réseau de neurones durant laquelle le comportement du réseau est modifié jusqu'à l'obtention du comportement désiré. L'apprentissage neuronal fait appel à des exemples de comportement. On distingue deux types d’apprentissage : un apprentissage « supervisé » et un apprentissage « non supervisé » [CHAMEKH et al, 2007].

5.1.4. Fonctionnement d’un réseau de neurones

Un neurone artificiel fait une somme pondérée des potentiels d’actions qui lui parviennent (chacun de ces potentiels est une valeur numérique qui représente l’état du neurone qui l’a émis), puis s’active suivant la valeur de cette sommation pondérée. Si cette somme dépasse un certain seuil, le neurone est activé et transmet une réponse (sous forme de potentiel d’action) dont la valeur est celle de son activation. Si le neurone n’est pas activé, il ne transmet rien.

Chapitre 2 : Modélisation multiéchelle de l’ultrastructure osseuse par éléments finis et réseaux de neurones __________________________________________________________________________________________ Parmi les algorithmes utilisés pour construire des réseaux de neurones et calculer les erreurs on trouve : l’algorithme du gradient total, l’algorithme du gradient stochastique (LMS) et l’algorithme de rétro-propagation des erreurs.

L’algorithme de rétro-propagation est souvent utilisé pour calculer l’erreur dans un réseau de neurones. C’est un algorithme de gradient itératif conçu pour calculer le poids des connexions, en minimisant le nombre total d'erreurs quadratiques moyennes entre la sortie réelle du réseau multicouche et la sortie désirée. En particulier, les poids sont initialement choisis de façon aléatoire et la règle consiste à comparer la valeur de sortie connue et désirée avec la valeur de sortie de calcul, en utilisant l'ensemble actuel de coefficients de pondération et de seuil.

5.1.5. Algorithme RN adopté

Hambli et al. [HAMBLI et al, 2011] ont développé un algorithme RN pour réaliser une modélisation multiéchelle du remodelage osseux. Ils ont utilisé la méthode de gradient total (équation 2.18) pour la construction des réseaux de neurones et la méthode de rétro-propagation pour calculer l’erreur.

(2.18)

avec pour les poids de réseaux, les sorties des neurones de la couche précédente , la valeur seuil pour produire une sortie.

La fonction d'activation est la sigmoïde donnée par l’équation suivante :

(2.19)

où est un paramètre définissant la pente de la fonction.

En résumé, l'application de calcul de réseaux de neurones RN peut être décrite par les étapes suivantes (Figure 2.12):

- Construire l'architecture de RN.

- Préparer une base de données pour l’apprentissage de RN. - Réaliser l’apprentissage de RN.

Chapitre 2 : Modélisation multiéchelle de l’ultrastructure osseuse par éléments finis et réseaux de neurones __________________________________________________________________________________________

- Appliquer l’apprentissage de RN pour la prédiction : le temps d'exécution est de quelques secondes.

Figure 2. 12.Schéma de fonctionnement de programme RN.

Dans cette étude, on utilise le même programme pour réaliser la modélisation multiéchelle de l’ultrastructure osseuse. On a construit un algorithme de trois blocs RN de telle sorte que les sorties du premier bloc alimentent le bloc suivant.