Réseaux de neurones et système visuel : Des neurosciences au neuromorphique

Grâce aux avancés de la technologie micro/nano-électronique, notamment dans le domaine de la miniaturisation des composants, l’industrie tend à incorporer un nombre important de capteurs dans les objets de la vie quotidienne comme nos voitures et nos téléphones (internet des objets). Les capteurs photographiques, les capteurs olfactifs ou les capteurs acoustiques sont des exemples de capteurs de données naturelles, c’està-dire de données de notre environnement naturel issues de capteurs. Ces capteurs, composés principalement de transistors MOS, suivent la loi de Moore ce qui permet d’atteindre de plus grandes densités d’intégration . Les capteurs photographiques embarqués dans nos téléphones possèdent des résolutions pouvant atteindre 41 Mégapixels. De plus, certaines applications (notamment de sécurité) exigent des fréquences d’acquisition d’images supérieures à 120 images par seconde. De grandes résolutions à de hautes fréquences génèrent de grandes quantités de données. Bien qu’il ne soit généralement pas nécessaire d’effectuer une analyse automatique de ces acquisitions pour des applications de la vie quotidienne, il en est différemment pour des applications de sécurité. La détection de piétons, la reconnaissance d’individus ou la perception d’un environnement pour une application robotique exigent l’analyse en temps réel et en local de la totalité des informations acquises par ces capteurs. Or, les architectures et algorithmes de traitement actuels capables de traiter ces données (CPU-GPU) ne sont pas adaptés au monde de l’embarqué où superficie et consommation d’énergie sont des facteurs primordiaux.

Dans la recherche d’architecture novatrice capable de traiter ces données, un organe biologique fascine : le cerveau. En effet, la nature a créé et fait évoluer cet organe entièrement dédié au traitement de données naturelles. Notre cerveau est capable d’analyser des informations provenant de millions de récepteurs sensoriels (ex : photorécepteurs, environ 125 millions de cellules photosensibles par œil). Le cerveau traite ces informations localement, en parallèle, avec un temps de réponse minimum et ne dissipe qu’une faible puissance (<20W). La première génération de réseaux de neurones artificiels (exemples : perceptrons, MLP (MultiLayer Perceptron), réseau de Hopfield et machine de Boltzman (Anderson and Rosenfeld (2000))) modélise l’absence ou la présence d’une impulsion et est basée sur des neurones binaires à seuil (Siu et al. (1995)). La seconde génération n’est plus binaire, elle modélise la fréquence des impulsions en utilisant une représentation multi-valuée et est basée sur des neurones à sigmoïde (Bishop (1995)) . Ces générations ont montré qu’elles étaient très bien adaptées aux traitements de données naturelles massives. Pourtant elles restent éloignées de la biologie et des récentes découvertes en neuroscience, notamment dans le codage de l’information. En effet, bien que la fréquence des impulsions joue un rôle important dans les aires sensoriel primaires, des travaux ont montré que le cerveau peut réaliser des taches complexes en environ 150 ms (Thorpe et al. (1996)) avec un chemin comprenant seulement 10 couches de traitements. Or, les fréquences impulsionnelles enregistrées sur ces couches sont inferieures à 100 Hz, ce qui est contradictoire avec un codage purement fréquentiel si l’on considère un chemin visuel de 10 couches parcouru en 150 ms. En effet, des travaux ont montré que certain neurones utilisent plutôt le temps précis des impulsions pour coder l’information (Rieke et al. (1999)), ce qui a donné lieu à la troisième génération de réseaux de neurones artificiels.

Les Réseaux de Neurones Impulsionnels (RNI) ou Spiking Neural Networks (SNN) représentent la troisième génération de réseaux de neurones artificiels. Cette génération se base sur des modèles de neurones impulsionnels. Ces neurones émettent des potentiels d’action (ou impulsions électriques) vers d’autres neurones lorsque leur seuil d’activation est atteint. Ces réseaux utilisent donc des impulsions électriques pour transporter l’information et les récents progrès en neurosciences suggèrent que l’information est encodée dans les délais entre les impulsions, c’est un codage relatif (Rieke et al. (1999)). Ce codage plus riche de l’information a permis de mettre en valeur la plasticité synaptique connue sous le nom de Spike Timing-Dependant-Plasticity (STDP). Cette règle d’apprentissage permet la modification de l’efficacité de la connexion entre deux neurones en fonction de leurs activités grâce notamment à deux mécanismes, la potentialisation à long terme (LTP) et la dépression à long terme (LTD). Ce mécanisme d’apprentissage a démontré son efficacité à analyser les données naturelles et son adaptation aux variations de l’environnement (Song et al. (2000); Indiveri (2002); Arthur and Boahen (2005); Liu (2003); Bichler et al. (2012a)). Chaque neurone est en effet capable de traiter les potentiels d’action et d’appliquer la règle d’apprentissage STDP de façon autonome créant ainsi un vaste champ d’unités de calcul pouvant s’exécuter de façon asynchrone et parallèle. Les réseaux de neurones impulsionnels ont montré des performances supérieures aux réseaux de première et seconde générations Maass (1997) mais restent privés d’architectures embarquables dédiées spécifiquement à leur nature parallèle et asynchrone malgré quelques efforts (Indiveri et al. (2006); Schemmel et al. (2010)).

Réseaux de neurones et système visuel : Des neurosciences au neuromorphique

Dans un premier temps, nous allons décrire le fonctionnement du neurone biologique et l’un de ses modèles fonctionnels, le modèle « LIF ». Ensuite, nous étudierons comment notre système de vision convertit la lumière en influx nerveux et présenter un exemple de rétine artificielle. Puis, nous allons comprendre comment les neurones s’organisent dans le cortex visuel pour recréer des informations complexes (formes, visages) et présenter deux modèles de cortex visuels. Nous allons ensuite comprendre les mécanismes liés à l’apprentissage et leurs implémentations. Enfin nous allons décrire un exemple de système de vision neuromorphique complet, le système CAVIAR.

Les neurones impulsionnels

Le neurone biologique

La structure de base du système nerveux central est le neurone. Il est présent chez l’individu adulte au nombre moyen de 100 milliards (10¹¹). Son rôle est de générer des impulsions électriques en réponse à une activité chimique et de les transporter vers d’autres neurones, de manière rapide, parfois sur de longues distances. Un neurone est constitué d’un corps cellulaire, appelé soma, et de deux types de prolongement : en entrée, les dendrites et en sortie, un axone. Les dendrites, de l’ordre de 10³ par neurone, transportent les potentiels d’actions provenant d’autres neurones vers le soma. Un unique axone, dont la terminaison se ramifie (arborisation terminale), transporte le potentiel d’action du soma vers d’autres neurones. L’axone d’un neurone A est connecté à la dendrite d’un neurone B par une synapse. Chaque neurone peut posséder entre 1 et 100 000 synapses pour un nombre total de synapses pour un individu adulte d’environ 100 à 500 trillions (10¹⁴) Purves (2008). Le signal électrique de référence du neurone est la différence de potentiel entre l’intérieur de la cellule neuronale et son extérieur. En repos, le potentiel électrique intracellulaire est généralement -70 mV comparé au potentiel extracellulaire (communément défini à 0V). Cette tension électrique, ou potentiel membranaire, est maintenu grâce à des canaux ioniques présents dans la membrane. À la réception d’un potentiel d’action pré-synaptique (impulsion du neurone précédant une de ses synapses, un neurone d’entrée), le potentiel membranaire entre en phase d’hypopolarisation et se voit augmenter (moins négatif). Si ce potentiel membranaire atteint un certain seuil (≈ −55mV ), une forte dépolarisation s’effectue, un potentiel d’action est alors généré. Ces impulsions électriques (potentiel d’action) émises par les neurones ont une amplitude d’environ 100 mV sur une durée de l’ordre de la milliseconde. Cette phase de dépolarisation est suivie d’une phase d’hyperpolarisation, le potentiel membranaire devient très négatif (≈ −80mV ). Durant cette période, même avec de fortes activités en entrée, le neurone est quasiment dans l’incapacité de générer un second potentiel avant un certain temps (≈ 0.1ms). Cette période est appelée période réfractaire. Elle permet notamment de limiter le nombre d’activations du neurone lors de la présence d’un motif en entrée et donc de neutraliser une information qui serait redondante.

L’arrivée de ce potentiel d’action à la terminaison de l’axone, au niveau de la synapse, produit un flux d’ions Ca2+, et déclenche une libération de neurotransmetteurs. Ces neurotransmetteurs se fixent à des récepteurs de l’autre côté de la jonction synaptique (dendrite du neurone post-synaptique) et ouvrent des canaux conducteurs d’ions . Ces courants d’ions peuvent alors avoir un effet excitateur (dépolarisation) ou inhibiteur (hyperpolarisation) sur le neurone postsynaptique (Dayan and Abbott (2005)).

Le neurone LIF

Durant ma thèse, nous nous sommes exclusivement consacrés à la troisième et dernière génération de réseaux de neurone artificiel, les réseaux impulsionnels. Comparés aux deux générations précédentes basées sur des portes à seuil ou à sigmoïde (McCulloch and Pitts (1943),Rosenblatt (1988)), ces réseaux, tirésdirectement des découvertesen neuroscience, modélisent précisément lesneurones et leurs interactions synaptiques. Ils utilisent des impulsionsasynchrones pour communiquer et peuvent donc tirer avantage d’une nouvelle dimension, le temps entre les impulsions. Ces réseaux sont composés deneurones impulsionnels qui peuvent être modélisés selon plusieurs degrés decomplexité. Dans sa forme la plus complexe, le modèle Hodgkin-Huxley(Hodgkin andHuxley (1952)), les canaux ioniques sont modélisés et notamment les canauxdes ionsPotassium (K) et Sodium (Na)  ). où Iest le courant membranaire, Eest le potentiel membranaire, CM est la capacité membranaire, RK et RNa représentent la résistance du Potassium et du sodium, EK et ENa les potentiels de repos des ions Potassium et calcium, et Rl et El la résistance et le potentiel de repos de la fuite. Des modèles simplifiés en sont dérivés, par exemple le modèle FitzHugh-Nagumo (Fitzhugh (1961); Nagumo et al. (1962); Linares Barranco et al. (1991)).

Comme les neurones biologiques, les neurones LIF possèdent une période réfractaire et d’inhibition latérale. La période réfractaire, due à unehyperpolarisation après un potentiel d’actions, empêche un neurone de s’activer plusieurs fois de suite dans unepériode de temps très court (de l’ordre de la milliseconde) et permetune remise à zéro de l’intégration du neurone. La période d’inhibition latérale permet à un neurone, lors de son activation, de désactiver les neuronesprésents sur la même couche que luimême, en forçant une remise à zérode leur intégration et en les empêchant d’intégrerde nouveau potentield’actions. En biologie, ce mécanisme est effectué grâce à des connexions synaptiques inhibitrices. Il permet à un neurone de se spécialiser et ainsi éviter que plusieurs neurones apprennent et répondent à un même stimulus d’entrées. sont activés par le flux AER provenant de la camera DVS128. En effet, un neurone d’entrée correspond à un évènement (ON ou OFF) d’un pixel de la caméra. Quand un pixel émet un évènement, il émet son adresse (x,y) ainsi que le type d’évènement et active son neurone d’entrée correspondant. Sachant que la résolution de la caméra est de 128 × 128, ces réseaux possèdent 128 × 128 × 2 neurones d’entrées,soit 32 768.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction
1 Réseaux de neurones et système visuel : Des neurosciences au neuromorphique
1.1 Introduction
1.2 Les neurones impulsionnels
1.2.1 Le neurone biologique
1.2.2 Le neurone LIF
1.3 Perception de l’information
1.3.1 La rétine biologique
1.3.2 Les Rétines artificielles
1.4 Le cortex visuel
1.4.1 Organisation du cortex
1.4.2 Modèle de cortex, le modèle HMAX
1.4.3 Les réseaux convolutionnels
1.5 Méthode d’apprentissage
1.5.1 STDP biologique
1.5.2 Apprentissage non-supervisé avec STDP
1.5.3 STDP simplifiée
1.6 Systèmes neuromorphiques dédiés à la vision
1.6.1 Première génération et approche classique
1.6.2 Réseaux impulsionnels
1.7 Discussion et perspectives
2 Optimisation d’un réseau de neurones impulsionnels
2.1 Introduction
2.2 Application Détection de véhicule
2.3 Simulateur XNET
2.4 Impact de la résolution des poids synaptiques
2.5 Impact d’une décroissance linéaire du potentiel membranaire
2.6 Impact du remplacement des fenêtres temporelles par une FIFO
2.7 Résultat comprenant l’ensemble des modifications
2.8 Mises en place des optimisations
2.9 Discussion et perspectives
3 Synapses et Nanotechnologies : Mémoires émergentes
3.1 Introduction
3.2 Les dispositifs memristifs
3.2.1 Introduction
3.2.2 Les familles de dispositifs memristifs
3.3 Le dispositif memristif : la synapse idéale ?
3.3.1 Période de rétention
3.3.2 Résolution du poids synaptique
3.3.3 Cycle de programmations
3.3.4 Densité d’intégration
3.3.5 Méthode de programmation
3.4 Discussion et perspectives
4 Mémoire synaptique à base de dispositifs memristifs
4.1 Introduction
4.2 Modélisation VHDL-AMS d’une cellule CBRAM
4.2.1 Modèle CBRAM
4.2.2 Mémoire synaptique à base de dispositifs memristifs CBRAM
4.3 Structure de CBRAM en crosspoint
4.3.1 Crossbar
4.3.2 Matrice connectée par les anodes
4.3.3 Matrice connectée par les cathodes
4.3.4 Matrice – Surcoût associé au transistor de sélection dans une matrice
4.3.5 Conclusions des études réalisées
4.4 Modélisation d’un réseau de neurones impulsionnels et simulation VHDLAMS
4.4.1 Réseau de neurones impulsionnels en VHDL-AMS
4.4.2 Simulation du réseau
4.5 Discussion et perspectives
5 Co-intégration CMOS/CBRAM dédiée au Neuromorphique
5.1 Introduction
5.2 Choix des structures et des entrées/sorties
5.2.1 Modes de programmation et de lecture
5.2.2 Choix des entrées/sorties
5.3 Description de l’architecture
5.3.1 Architecture des circuits d’interface
5.3.2 Architecture haut niveau
5.3.3 Architecture du crossbar
5.3.4 Architecture de la matrice
5.3.5 Caractéristique du layout du circuit
5.4 Environnement de test
5.4.1 Circuit Imprimé
5.4.2 FPGA
5.5 Phases de tests
5.5.1 Test du circuit sous Eldo
5.5.2 Validation du circuit imprimé et du FPGA
5.5.3 Test du circuit
5.6 Discussion et perspectives
Conclusion

Lire le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *