• Aucun résultat trouvé

Méthodologie de simulation à l’échelle d’un système

4.3 Preuve de concept d’un apprentissage

4.3.1 Méthodologie de simulation à l’échelle d’un système

De façon analogue aux simulations du chapitre3, les circuits associés aux neurones sont décrits de manière fonctionnelle, tandis que les synapses, constituées de cellules

électrochimi-... 2×81

entrées

Séquence

images 9×9

3 sorties

Conversion

en impulsions

3 voies

Nanosynapse

tp -Vw Sortie Vw = 0,4 V tp = 50 µs Entrée

Impulsions

FI G U R E4.10 – Schéma de principe des simulations à l’échelle d’un système. La vignette en noir et blanc est un exemple d’image tirée de l’une des vidéos artificielles utili-sées comme entrée brute. L’intensité de chaque pixel est codée dans son niveau de gris. Les symboles au cœur des deux blocs bleus indiquent le type de varia-tion d’intensité qui est utilisé pour générer des impulsions présynaptiques à partir d’une vidéo présentée en entrée. Le symbole du haut et le symbole du bas correspondent aux entrées présynaptiques sensibles respectivement à une diminution et à une augmentation d’intensité des pixels. Les trois symboles triangulaires rouges désignent les trois neurones de sortie. À droite sont esquis-sées les formes d’onde des impulsions utiliesquis-sées par le simulateur (similaires à celles des mesures expérimentales). La masse constitue la référence de chacune de ces formes d’onde.

ques métallique Ag2S, sont modélisées par les équations (4.2) à (4.6).

Les neurones d’entrée du système présentent des impulsions asynchrones générées à partir d’une vidéo selon une approche inspirée par une rétine biologique, reposant sur les variations d’intensité de chaque pixel. Chaque pixel de la vidéo est associé à deux neurones d’entrée, l’un sensible aux variations d’intensité positives, le second aux variations négatives. Ces neurones émettent des impulsions lorsqu’ils sont sujets à une évolution d’intensité qui excède un seuil de détection arbitraire.

Les neurones d’entrée sont connectés à trois neurones de sortie, chaque couple possible étant relié par une unique cellule électrochimique métallique Ag2S, formant ainsi une matrice de 2×81×3 synapses. Les effets résistifs et capacitifs des lignes de cette matrice ne sont pas pris en compte lors des simulations. Par ailleurs, les courants parasites de fuites (sneak path currents en anglais) ne sont pas à priori critiques dans la situation considérée puisque les neurones au repos imposent une masse virtuelle et que les signaux sont transmis en parallèle. Une situation comparable sera étudiée au chapitre5.

Lorsqu’un neurone de sortie est déclenché, il émet une impulsion de sortie et applique un re-tour identique sur le port postsynaptique des cellules électrochimiques métalliques auxquelles il est connecté. Cette fonctionnalité peut par exemple être mise en œuvre avec un convoyeur de courant144. Par ailleurs, l’émission d’une impulsion par un neurone de sortie remet également à zéro les deux autres neurones de sortie.

Cette architecture est schématisée à la figure4.10et des précisions sur les différents sous-systèmes impliqués sont données dans la partie suivante.

4.3.1.2 Précisions techniques

Entrées vidéo artificielles. Afin de mieux contrôler la dynamique temporelle des entrées ap-pliquées au système étudié, les impulsions présynaptiques sont obtenues à partir d’une vidéo artificielle, composée d’une succession à fréquence fixe d’images de 9×9 pixels. Ces images représentent 3 voies de circulation verticales, sans chevauchement et de largeur identique (3 pixels). Des motifs de 6 pixels, de forme, vitesse et direction identiques, se déplacent de haut en bas au centre de ces voies. Il n’y a jamais plus d’un motif à la fois sur une image.

Le fichier vidéo d’entrée dure 7,2 s, présentant 90 cycles de 80 ms. Durant chaque cycle, 3 motifs sont présentés successivement : un sur chaque voie, dans un ordre aléatoire. Ceci permet de forcer un minimum d’activité sur chacune des synapses du système, notamment lors du début de l’apprentissage. En l’absence de bruit, le délai entre deux impulsions successives sur une même synapse est compris entre 1/3 et 5/3 de cycle, c’est-à-dire entre environ 27 et 133 ms.

La vidéo est cadencée à 450 images par seconde. Un motif traverse l’extension spatiale définie par les images en 12 images successives, activant pour chacune d’entre elles les pixels qui le composent. En l’absence de bruit, les pixels activés par un motif sont tous de même valeur

unitaire (dans une unité arbitraire d’intensité), tandis que tous les autres pixels sont de valeur nulle.

Du bruit peut être ajouté sur cette vidéo artificielle. Chaque pixel possède ainsi une pro-babilité P r (ON → OFF|ON) de s’éteindre s’il est actif et une propro-babilité Pr (OFF → ON|OFF) de s’activer s’il est éteint. Ce bruit blanc est indépendant et identiquement distribué sur l’ensemble des pixels de chacune des images.

D’une séquence d’images à des impulsions asynchrones. La vidéo artificielle présentée est ensuite convertie en impulsions présynaptiques asynchrones selon l’évolution de l’intensité de chaque pixel entre deux images successives. Cette façon de faire est une version significa-tivement simplifiée du comportement de la rétine neuromorphique Dynamic Vision Sensor62 présentée dans les chapitres1et3. Chacun des 81 pixels d’une même image est ainsi asso-cié à deux neurones présynaptiques. Au sein de chacune de ces 81 paires, un neurone émet une impulsion lorsqu’il détecte un accroissement d’intensité au-delà d’un seuil T+, tandis que le second procède de même pour une diminution d’intensité en deçà d’un seuil T. Dans les simulations présentées ci-après, les seuils employés sont tous de même valeur absolue (T+= −T= 0,5).

En nous basant sur les observations de la partie précédente, une période réfractaire d’une milliseconde est utilisée pour empêcher deux tirs successifs d’un même neurone présynaptique durant ce laps de temps. Il devient ainsi possible de distinguer l’interaction d’une impulsion présynaptique proche d’une impulsion postsynaptique de celle entre deux entrées présynap-tiques consécutives.

D’un point de vue pratique, considérant la situation de deux images successives k et k + 1, l’instant exact de tir d’un neurone présynaptique dû à un changement suffisant d’intensité entre ces deux images est tiré de façon aléatoire et uniforme dans une fenêtre temporelle d’une milliseconde, juste avant le début de l’image k + 1. Ceci permet d’obtenir une situation plus asynchrone, en évitant que les impulsions présynaptiques aient toutes lieu exactement à l’ins-tant où une nouvelle image est présentée.

Enfin, le bruit ajouté dans certaines des vidéos artificielles employées comme entrées des simulations présentées ci-après correspond en moyenne à 2 impulsions supplémentaires et 0,1 impulsion manquanteIpour une centaine d’impulsions correctes.

Quid des sorties ? Les neurones de sortie sont de type « intègre-et-tire avec fuites ». De manière analogue aux simulations présentées dans le chapitre3, ces neurones sont implémentés de façon purement fonctionnelle : de simples intégrateurs intégrant un terme de fuite et émettant une impulsion lorsque leur variable interne atteint un seuil donné. Après avoir tiré, un neu-rone de sortie est remis à zéro durant une période réfractaire de 20 ms. Par ailleurs, le neuneu-rone ayant tiré remet également à zéro durant 15 ms l’ensemble des autres neurones de sortie. Ce

62. P. LI C H T S T E I N E R, C. PO S C Het T. DE L B R Ü C K, IEEE Journal of Solid-State Circuits, 2008. I. Pour rappel, les motifs activent bien moins de pixels qu’il n’y en a d’éteints.

mécanisme d’inhibition latérale permet de limiter la redondance entre les motifs appris.

Delay   [ms]

0.1

0.15

0.2

Pr

ev

. c

on

du

ct

an

ce

 

 [m

S]

Without variability

<

>

FI G U R E4.11 – Chaque courbe bleue est l’isoligne zéro du paysage d’évolution de la conduc-tance∆G (figure4.7b) associée à l’une de 3×162 synapses utilisées lors de l’une des simulations présentant de la variabilité entre composants synaptiques. Des dispersions gaussiennes indépendantes de 3 % de coefficient de variation sont ajoutées surσU, UetτU de l’équation (4.6), et de 5 % de coefficient variation sur le préfacteur exponentiel C0de l’équation (4.3). La courbe noire illustre la situation sans variabilité.

Ajout de variabilité entre composants synaptiques. Pour étudier en simulation la résilience du système à la variabilité entre synapses, une solution consiste à ajouter une dispersion sur tout ou partie des paramètres du modèle synaptique, constitué des équations (4.2) à (4.6). Dans les simulations présentées ci-après et incluant de la variabilité synaptique, une dispersion gaus-sienne indépendante a été ajoutée sur chacun des paramètres de l’équation (4.6), c’est-à-dire surσU,τUet U, avec un coefficient de variation de 3 %, ainsi que sur le préfacteur exponentiel

C0de l’équation (4.3) décrivant la constante de tempsτfac de la relaxation naturelle, avec un coefficient de variation de 5 %. La figure4.11illustre les conséquences de ces dispersions entre composants sur l’isoligne nulle de l’évolution de conductance (∆G = 0) dans le paysage présenté à la figure4.7b. Chaque ligne bleue correspond à l’une des 3×162 synapses utilisées lors d’une simulation à l’échelle du système, tandis que la courbe noire correspond à la situation sans variabilité. En présence de variabilité, nous observons un comportement sensiblement différent d’une synapse à l’autre. Nous pouvons notamment noter sur cette figure que l’ajout d’une variabilité de dynamique à priori contenue provoque un déplacement significatif de la pointe de l’isoligne nulle, celle-ci fluctuant approximativement d’un tiers de part et d’autre de sa valeur en l’absence de variabilité synaptique.