3. 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.
4. 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
6. 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]
7. 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
10. 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”.
12. 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
θ
13. 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.
14. 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 ]
15. 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.
16. 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
17. 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
18. 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 fondatrices
19. Exemple : un réseau MLP
X Y
entrées sorties
désirées
sorties
calculées
tm
k
t1
k
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 ] :
xn
k
x1
k
y1
k
ym
k
erreur
neurone sigmoïde Nj : yj = σ ( Σwijxi - θj )
• initialiser les poids wij aléatoirement, sur chaque couche
• présenter les xi
k aux neurones d’entrée
• calculer les activités, de couche en couche, jusqu’aux sorties yj
k
• mesurer l’erreur entre sorties calculées yj
k et sorties désirées tj
k
• en sens inverse, calculer les gradients et modifier les poids wij
A
k
20. 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
21. 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 !
23. Les neurones “classiques”
neurone à seuil
(fx de Heaviside)
neurone linéaire
(fx identité)
neurone sigmoïde
(exp ; argth)
y = f ( Σ wixi - θ )
i=1
n
calculs basés sur
le produit scalaire
calculs basés sur la distance y = g (|| x - w ||2)
Dans certains modèles (cartes de Kohonen, réseaux RBF) :
f = H f = σ
f = I
24. Que représente “ xi ” ?
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 xi et les traîte selon sa propre formule de
calcul et en fonction des valeurs de ses poids synaptiques.
xi représente le taux moyen de décharge
provenant du neurone présynaptique Ni
Cette 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...
25. 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 ”.
26. 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
27. 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 Na
K
R
courant d’entrée
u potentiel de membrane
Σ Ik = gNam3h(u-ENa) + gKn4(u-EK) + (u-EL)
1
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
28. 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 20
15
29. 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)) > 0
30. Le 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)) > 0
uj (t) = Σ ηj (t-tj
(f)) + Σ Σ wijεij (t-ti
(f)) + ∫κ(t-tj,s)I(t-s)ds
spikes
de Ni
Ni pré-
synap
tiques
^
∞
0
spikes
de Nj
31. Le modèle SRM : “Spike Response Model”
Exemple de formule mathématique pour le seuil :
ηj (s) = - V exp (- ) H (s-δabs) – K H (s) H (s-δabs)
s-δabs
τ
_____
Exemple de formule pour les réponses aux PSP :
εij (s) = [exp(- ) – exp(- )] H (s-Δij)
s-Δij
τs
____
s-Δij
τm
____
variations autour du seuil V et modélisation d’une
période réfractaire δabs
où Δij est le délai de propagation le long de l’axone
qui va du neurone Ni vers le neurone Nj
32. Le modèle SRM0
On 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) = Σ wijε(t-ti-Δij)
Ni pré-
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 ti dans l’intervalle de temps.
^
33. Le modèle SRM0
Exemple 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-ti) avec u’j(t) > 0
^
ce qui donne une fonction non-linéaire de la variable
d’état (potentiel de membrane) uj(t) du neurone Nj
EPSP
IPSP
34. Les réseaux de neurones temporels
dynamique, puissance de calcul
35. 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 spikes
traduction
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
36. Dynamique des RNA “classiques”
topologie en couches => dynamique feedforward
ym
y1
xn
x1
topologie bouclée => dynamique récurrente
yn
y1
x1 xn
La dynamique dépend directement de la topologie...
37. 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
38. 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 ]
39. 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
40. 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...
41. 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
*
42. Puissance de calcul
Réseaux de neurones de 3ème génération :
Réseaux de neurones de 2ème génération :
Réseaux de neurones de 1ère gé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
44. 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
45. 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 ?
46. 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
48. 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
49. 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
52. Les réseaux de neurones temporels sont :
• des modèles proches du biologique
• des outils de calcul très puissants
mais...
on maîtrise encore mal leur fonctionnement,
en particulier au niveau de l’apprentissage