Réseaux de neurones temporels : dynamique et apprentissage
Hélène Paugam-Moisy
Professeur à l’Université Lyon 2 Institut des Sciences Cognitives
hpaugam@isc.cnrs.fr
Les réseaux de neurones naturels
Cerveau, neurones et intelligence
Le cerveau humain est constitué d’environ 1011 neurones ;
en moyenne, chaque neurone a de l’ordre de 104 connexions.
Chez les animaux, la place occupée par le cortex semble être
proportionnelle au développement des facultés intelligentes.
Neurones biologiques / naturels
Les neurones forment des réseaux de communication complexes, chaque neurone établissant de très nombreuses connexions avec d'autres.
vibrisses du rat : neurones sensitifs => thalamus
(White et Peters ) neurones thalamiques => cortex
Neurones biologiques / naturels
gallerie de photos...
Neurones biologiques / naturels
Première schématisation du neurone (Dieters, 1865)
Enregistrement d’un neurone vivant : micro-électrode de verre
Neuropuce (Infineon) : 16 384 capteurs au mm2 pour enregistrer tout signal électrique émis par un neurone vivant, ici celui d’une “limace de boue”
[Lymnaea stagnalis]
Neurones biologiques / naturels
Schématiquement, un neurone biologique est constitué d’un arbre dendritique, d’un soma et d’un axone.
soma axone
dendrites
Un neurone peut émettre des impulsions sur son axone.
Elles se propagent vers les dendrites des neurones auxquels il est connecté, qui les transmettent au corps cellulaire (ou soma), via des connexions pondérées par des synapses.
connexion synaptique
autre dendrite
Connexions synaptiques
Connexions synaptiques
Plasticité synaptique
Loi de renforcement de Hebb (1949) :
=> c’est le principal fondement des règles
d’apprentissage, dans les réseaux de neurones artificiels.
En résumé : si deux neurones sont souvent excités simultanément, alors ils augmentent la force (le poids) de leur interconnexion .
Postulat physiologique :
“quand un axone de la cellule A est assez proche pour exciter une cellule B et quand, de façon repétée et persistante, il participe à son activation, un certan processus de croissance ou un changement métabolique s’installe, dans une cellule ou dans les deux, tel que l’efficacité de A, en sa qualité de cellule qui active B, est augmentée”.
Les réseaux de neurones artificiels
Neurones artificiels
Le premier modèle mathématique de neurone est le neurone formel de McCulloch et Pitts (1943).
y = 1 si
Σ
wixi>θ= 0 sinon
Loi du “ tout ou rien ” : le neurone émet ou non une impulsion sur son axone, selon que la somme pondérée de ses entrées dendritiques dépasse ou non son seuil θ.
x1 xi
xn
.. .
. ..
Σ
w1 wi
wn
sommation, seuillage
θ
Réseaux de neurones artificiels
Un réseau de neurones artificiels est un ensemble de neurones formels, connectés entre eux selon une
certaine architecture / topologie.
Les activités se propagent de neurone en neurone selon une certaine dynamique.
Les poids des connexions sont modifiés / adaptés par une règle d’apprentissage, à partir d’exemples.
Réseaux de neurones artificiels
φ
RNA
X Y
vecteur d’entrée vecteur de sortie
On peut aussi voir un réseau de neurones artificiels comme un outil de modélisation de type “ boîte noire ” :
Le RNA réalise une association d’un espace d’entrée X vers un espace de sortie Y. La “ fonction ” φ est définie par les poids du réseau. Ceux-ci sont ajustés au problème par une règle d’apprentissage, à partir d’une base d’exemples (xk,tk )
[ apprentissage supervisé, si tk est connu ]
Connexions synaptiques
Les poids synaptiques (artificiels) sont des nombres réels.
On associe habituellement les poids positifs à des connexions excitatrices et les poids négatifs à des connexions inhibitrices
mais...
les règles d’apprentissage des modèles connexionnistes classiques peuvent modifier le signe d’un poids synaptique
donné, ce qui n’est guère réaliste, sur le plan biologique.
Motivation initiale
La motivation initiale n’était pas non plus très biologique : l’idée sous-jacente à la définition du neurone formel était de chercher à montrer que la pensée intelligente résultait
du fonctionnement des neurones du cerveau...
mais, à l’époque, on pensait que : intelligence raisonnement
raisonnement logique
logique neurones
Synthèse des fonctions booléennes
Ainsi, les premiers travaux de McCulloch et Pitts ont été de réaliser la synthèse des fonctions booléennes élémentaires
à partir de réseaux de neurones formels.
Parallèlement, les mathématiciens tentaient de démontrer que tout raisonnement pouvait se formaliser par des
combinaisons complexes de règles logiques.
donc, dans l’esprit des travaux de Turing : grand reséau
de neurones raisonnement complexe, intelligent
émergence
Modèles connexionnistes “classiques”
1940
1950 1960
1970
1980 1990 2000 20...
Neurone formel de McCulloch & Pitts
Adaline de Widrow Perceptron de Rosenblatt
Réseau de Hopfield
Réseaux RBF Moody & Darken
Cartes auto-organisatrices de Kohonen Réseaux MLP Rumelhart et al.
Support Vector Machines Vapnik
Loi de renforcement de Hebb
}
notions fondatricesExemple : un réseau MLP
X Y
entrées sorties
désirées sorties
calculées
tmk t1k ym
y1
xn x1
Généralisation, calcul du réseau :
• présenter les xi aux neurones d’entrée
• calculer les activités, de couche en couche, jusqu’aux sorties yj
Apprentissage, par rétro-propagation [ backprop ] :
xnk x1k
y1k ymk
erreur
neurone sigmoïde Nj : yj = σ ( Σwijxi - θj )
• initialiser les poids wij aléatoirement, sur chaque couche
• présenter les xik aux neurones d’entrée
• calculer les activités, de couche en couche, jusqu’aux sorties yjk
• mesurer l’erreur entre sorties calculées yjk et sorties désirées tjk A k
Modèles connexionnistes “classiques”
Les réseaux de neurones artificiels sont devenus des outils de modélisation et de calcul destinés aux ingénieurs :
• Reconnaissance des formes, classification, clustering
• Prédiction, prévision de séries temporelles
• Contrôle, identification de systèmes
• Compression de données
• Bioinformatique
• Robotique
Des exemples :
repérer l’approche d’une tempête identifier de multiples espèces de fleurs reconnaître une voix dans un téléphone mobile distinguer les raisins utilisés pour faire un bon vin diagnostiquer les conditions d’une conduite dangereuse reconnaître le visage de quelqu’un qu’on n’a pas vu récemment
Modèles connexionnistes “classiques”
Ces RNA sont, d’ailleurs, des outils très performants :
• Calculabilité : plus puissants qu’une machine de Turing
• Complexité : NP-complétude du “ loading problem ”
• Capacité : MLP et RBF sont approximateurs universels
• Théorie statistique de l’apprentissage, PAC-learning mais...
les méthodes mises en oeuvre pour les améliorer sont de plus en plus souvent des méthodes déjà connues...
et surtout...
on s’est beaucoup éloigné de l’inspiration biologique !
Les neurones impulsionnels ou
“ spiking neurons ”
Les neurones “classiques”
neurone à seuil
(fx de Heaviside) neurone linéaire
(fx identité) neurone sigmoïde
(exp ; argth)
y = f ( Σ w
ix
i- θ )
i=1
n calculs basés sur
le produit scalaire
calculs basés sur la distanceDans certains modèles (cartes de Kohonen, réseaux RBF)
y = g ( || x - w ||
2 :)
f = H f = I f = σ
Que représente “ x
i” ?
Les algorithmes des réseaux de neurones classiques sont itératifs. A chaque pas de temps, chaque neurone reçoit n valeurs d’entrée
x
i et les traîte selon sa propre formule de calcul et en fonction des valeurs de ses poids synaptiques.x
i représente le taux moyen de décharge provenant du neurone présynaptique NiCette moyenne (fréquence) résulte de plusieurs émissions d’impulsions pendant un intervalle de temps donné, mais on ne connaît pas ces impulsions de manière précise.
cependant...
Neurone impulsionnel
Les neurobiologistes ont montré que les neurones encodent l’information dans les instants d’émission des impulsions.
impulsion = potentiel d’action = spike
spiking neuron
Pour une modélisation plus réaliste, il faut prendre en compte les aspects temporels et utiliser de nouveaux
modèles de neurones : des “ neurones impulsionnels ”.
Dynamique neuronale
neurones
pré-synaptiques neurone
post-synaptique
Nj N2
N1
uj (t)
t1(1) t1(2)
t2(1) t2(2)
tj (f)
t [ms]
t1(1) t2(1) t1(2) t2(2)
u [mV]
V
tj (f)
chaque spike pré-synaptique engendre un EPSP (en rouge) ; ceux-ci s’ajoutent (en bleu) ; quand uj (t) atteint le seuil
V
le neurone post-synaptique Nj émet à son tour un spike.
EPSP = potentiel post-synaptique excitateur
urepos
Le modèle de Hodgkin-Huxley
Le modèle de neurone de Hodgkin-Huxley (1952) tient compte avec précision des canaux ioniques et du processus
électro-chimique, au niveau des connexions synaptiques :
I (t)
C R K Na
courant d’entrée
u potentiel de membrane
Σ
Ik = gNam3h(u-ENa) + gKn4(u-EK) + (u-E1 L)R_
k
du dt__
C = -
Σ
Ik (t) + I (t)k
... où les variables m, n et h sont elles-mêmes régies par des équations différentielles, en fonction du temps.
sodium potassium
Le modèle de Hodgkin-Huxley
le modèle de Hodgkin-Huxley est beaucoup trop complexe pour modéliser des réseaux de neurones temporels !
mais...
Ce modèle est capable de rendre compte de la dynamique d’émission d’un spike et de se comporter en neurone à seuil
réponse du neurone à une impulsion, i.e.
un courant d’entrée de courte durée I(t) envoyé à t < 0
t [ms]
Δu(t) [mV]
0 5 10 15 20
Le modèle LIF : “Leaky Integrate and Fire”
Le modèle “Leaky Integrate and Fire” est une simplification du modèle de Hodgkin-Huxley :
C R
I (t) courant d’entrée
u potentiel de membrane 1
R_ du
dt__
C = - u (t) + I (t) V
Un spike est émis à chaque fois que le potentiel de membrane croît jusqu’à dépasser le seuil
V
du neurone.instant d’émission du spike :
t(f) tel que u(t(f)) =
V
avec u’(t(f)) > 0Le modèle SRM : “Spike Response Model”
Le “Spike Response Model” SRM de Gerstner (1995) est une généralisation du LIF, qui intègre le passé du neurone Nj
instant d’émission du prochain spike :
somme des PSP seuil, émission
EPSP = PSP excitateur poids wij positif IPSP = PSP inhibiteur poids wij négatif
courant extérieur
t(f) tel que u(t(f)) =
seuil
avec u’(t(f)) > 0uj (t) =
Σ
ηj (t-tj(f)) +Σ Σ
wijεij (t-ti(f)) +∫
κ(t-tj,s)I(t-s)dsspikes de Ni Ni pré- synap tiques
∞ ^
spikes 0 de Nj
Le modèle SRM : “Spike Response Model”
Exemple de formule mathématique pour le seuil :
ηj (s) = -
V
exp (- ) s-δabsH
(s-δabs) – KH
(s)H
(s-δabs) _____τExemple de formule pour les réponses aux PSP : εij (s) =
[
exp(- ) – exp(- ) τs-Δij] H
(s-Δij)s
s-Δij ____
τm ____
variations autour du seuil
V
et modélisation d’une période réfractaire δabsoù Δij est le délai de propagation le long de l’axone qui va du neurone Ni vers le neurone Nj
Le modèle SRM
0On peut simplifier le modèle SRM,
tout en conservant l’essentiel de ses propriétés
=> on obtient le modèle phénoménologique SRM0 uj (t) = Ni pré-
Σ
wijε(t-ti-Δij)synap tiques
^
cette formule dérive d’une intégration de la précédente, sur un court intervalle de temps (1ms), en ne mémorisant
que l’instant du dernier spike émis par Nj et en faisant l’hypothèse que chaque neurone présynaptique Ni émet au plus une fois à l’instant t^i dans l’intervalle de temps.
Le modèle SRM
0Exemple de formule pour les réponses aux PSP : ε(s) =
exp ( ) 1 - s
____ τ τs
__
où τ est une constante de temps caractéristique du
potentiel de membrane (augmentation puis décroissance) instant d’émission d’un spike, par le neurone Nj :
tj(f) t tel que uj(t) = θ(t-t^i) avec u’j(t) > 0 ce qui donne une fonction non-linéaire de la variable
d’état (potentiel de membrane) u (t) du neurone N
EPSP
IPSP
Les réseaux de neurones temporels
dynamique, puissance de calcul
Les réseaux de neurones temporels
Comme pour les neurones classiques, on peut connecter entre eux des neurones temporels selon diverses topologies, simuler leur fonctionnement en réponse à des entrées venant
d’un environnement extérieur et récupérer des sorties.
SNN = Spiking Neuron Networks
cependant :
vecteur numérique spikestraduction Une solution, le codage temporel :
dans un intervalle de temps fixé, plus le spike est
précoce, plus il correspond à une valeur numérique élevée
Dynamique des RNA “classiques”
topologie en couches =
>
dynamique feedforwardym y1
xn x1
topologie bouclée =
>
dynamique récurrenteyn y1
x1 xn
La dynamique dépend directement de la topologie...
Dynamique des RN temporels
La topologie est sous-jacente à la dynamique, mais...
toutes les connexions ne sont pas actives à chaque instant des patterns d’activité émergent ;
ils se modifient au cours du temps
= > un moyen plus riche de coder l’information
Assemblée de neurones :
ensemble de neurones qui se synchronisent, en réponse à un stimulus extérieur
Assemblées de neurones
Certains neurones accroissent leur activité, d’autres cessent momentanément d’émettre.
un stimulus est appliqué en entrée, entre 1000 et 2000 ms
[ Meunier ]
Implémentation des RN temporels
Toutes les connexions ne sont pas actives à chaque instant il devient maladroit de programmer une boucle de calcul systématique des états de tous les neurones et de toutes les synapses à chaque itération.
L’échelle de temps est très différente (~ temps-réel ) il convient d’implémenter ces réseaux par programmation événementielle
EDS = Event-Driven Simulation
Nouvelle motivation
On a beaucoup progressé sur la compréhension du fonctionnement du cerveau, et l’idée que l’on se fait de l’intelligence a beaucoup évolué en quelques décennies.
maintenant, on pense plutôt que : intelligence mémorisation
mémorisation associations
associations neurones
La synchronisation des assemblées de neurones est une piste extrémement prometteuse...
Puissance de calcul
Des résultats théoriques* (Maass, 1997) ont montré que les spiking neurons sont plus puissants que les
neurones classiques, même avec des modèles simples
fonctions de réponse aux PSP
modélisation du seuil
t
εij(t-s)
s+Δij s
u
t
εij(t-s)
s+Δij s
u
type A
type B
t’ t
∞
θj(t-t’)
1 spiking neuron de type B O(n) neurones sigmoïdes O(n log n) neurones à seuil
*
Puissance de calcul
Réseaux de neurones de 3
èmeg é n é ration :
Réseaux de neurones de 2
èmeg é n é ration :
Réseaux de neurones de 1
èreg é n é ration :
spiking neurons
intégration d’informations en continu
neurones sigmoïdes, neurones distance entrées et sorties réelles
neurones à seuil, à saturation entrées et sorties booléennes
1995
1985
1945
Apprentissage et plasticité
Apprentissage dans les SNN
Les réseaux de neurones temporels, ou SNN (réseaux de spiking neurons) modélisent beaucoup mieux que leurs ancêtres la dynamique des interactions entre neurones.
mais :
comment réalise-t-on l’apprentissage des poids dans les réseaux de neurones temporels ?
devrait-on aussi apprendre les délais ?
de nombreux problèmes ouverts
Apprentissage dans les SNN
Plusieurs chercheurs ont démontré
[ Maass, 1997 ; Bohte, 2002 ; Ruf & Schmitt, 2000 ] que l’on pouvait émuler les principaux modèles classiques
(réseau de Hopfield, réseau MLP, cartes de Kohonen) avec des réseaux de neurones impulsionnels
mais :
la simple reproduction des modèles de 2nde génération ne permet pas d’exploiter la pleine puissance de ces
modèles de 3ème génération que sont les SNN.
on pourrait aussi chercher une inspiration biologique ?
Plasticité synaptique
pré post wij
pré post wij
Les neurobiologistes ont observé des
potentiations synaptiques quand un neurone pré-synaptique émet juste avant un neurone post-synaptique
et des
dépressions synaptiques quand un neurone pré-synaptique émet juste après un neurone post-synaptique
Ce phénomène de plasticité synaptique est connu sous le nom de
STDP = Spike-Time-Dependent Plasticity
Mécanismes STDP
poids excitateurs, w > 0
poids
inhibiteurs, w < 0
modification des poids en fonction de
Δt = tpost - tpré
Difficultés, avec la STDP
Les poids synaptiques sont constamment modifiés
=> inconvénients de l’apprentissage “on-line” : manque de stabilité
oubli du passé lointain
On retrouve le classique dilemme plasticité / stabilité mis en évidence par Grossberg [ fin des années 80 ]
il faudrait combiner la STDP avec une autre méthode d’apprentissage
Algorithmes évolutionnistes
Une autre piste consiste à utiliser des
algorithmes génétiques pour optimiser les valeurs des poids synaptiques en adaptant le réseau à son milieu.
génération 1
génération N génération 2
et ainsi de suite ...
sélection croisement
mutation
Les individus sont des
réseaux de neurones temporels
Algorithmes évolutionnistes et STDP
SNN plongé dans un zoo virtuel
les poids ne cessent d’evoluer
Conclusion
Les réseaux de neurones temporels sont :
• des modèles proches du biologique
• des outils de calcul très puissants
mais...