Vous êtes sur la page 1sur 8

1

Rseaux de neurones
Rsum
Dfinition et caractristiques des rseaux de neurones ou perceptrons multicouches spcifiques pour la rgression et la discrimination ou classification supervise. Structure, fonction de transfert, estimation du gradient par rtro-propagation et algorithmes dapprentissage des poids en contrlant le sur-ajustement par rgularisation.
Retour au plan du cours

1
1.1

Introduction
Historique

Rseaux de neurones

exemple, des rsultats dexamens, danalyses de sang, de salive pour des


applications biomdicales de choix dun antibiotique,
un moteur dinfrence charg dappliquer les rgles expertes sur la base
de faits afin den dduire de nouveaux faits jusqu la ralisation dun
objectif comme llaboration du traitement dun infection bactrienne.
Face aux difficults rencontres lors de la modlisation des connaissances dun
expert humain, au volume considrable des bases de connaissance qui en dcoulaient et au caractre exponentiel de la complexit des algorithmes dinfrence mis en jeu, cette approche sest teinte avec les annes 80. En effet, il a
t montr que les systmes bass sur le calcul des prdicats du premier ordre
conduisaient des problmes N P complets.
Lessor technologique et quelques avances thoriques :
estimation du gradient par rtro-propagation de lerreur (Hopkins, 1982),
analogie de la phase dapprentissage avec les modles markoviens de systmes de particules de la mcanique statistique (verres de spin) par (Hopfield, 1982),
au dbut des annes 80 ont permis de relancer lapproche connexioniste. Celleci a connu au dbut des annes 90 un dveloppement considrable si lon
considre le nombre de publications et de congrs qui lui ont t consacrs
mais aussi les domaines dapplications trs divers o elle apparat. Sur de nombreux objectifs, justement ceux propres au data mining, les rseaux neuronaux
ne rentrent pas ncessairement en concurrence avec des mthodes statistiques
bientt centenaires mais apportent un point de vue complmentaire quil est
important de considrer.

Nous nous intressons ici une branche de lInformatique fondamentale


qui, sous lappellation dIntelligence Artificielle, a pour objectif de simuler
des comportements du cerveau humain. Les premires tentatives de modlisation du cerveau sont anciennes et prcdent mme lre informatique. Cest en
1943 que Mc Culloch (neurophysiologiste) et Pitts (logicien) ont propos les
premires notions de neurone formel. Ce concept fut ensuite mis en rseau avec
une couche dentre et une sortie par Rosenblatt en 1959 pour simuler le fonctionnement rtinien et tacher de reconnatre des formes. Cest lorigine du perceptron. Cette approche dite connexioniste a atteint ses limites technologiques,
Finalement, la motivation initiale de simulation du cortex crbral a t racompte tenu de la puissance de calcul de lpoque, mais aussi thoriques au pidement abandonn alors que les mthodes qui en dcoulaient ont trouv leur
dbut des annes 70.
propre intrt de dveloppement mthodologique et leurs champs dapplicaLapproche connexioniste connaissance rpartie a alors t supplante par tions.
lapproche symbolique ou squentielle qui promouvait les systmes experts
1.2 Rseaux de neurones
connaissance localise. Lobjectif tait alors dautomatiser le principe de lexpertise humaine en associant trois concepts :
Un rseau neuronal est lassociation, en un graphe plus ou moins complexe,
une base de connaissance dans laquelle taient regroupes toutes les dobjets lmentaires, les neurones formels. Les principaux rseaux se disconnaissances dexperts humains sous forme de propositions logiques l- tinguent par lorganisation du graphe (en couches, complets. . . ), cest--dire
mentaires ou plus labores en utilisant des quantificateurs (logique du leur architecture, son niveau de complexit (le nombre de neurones, prsence
premier ordre).
ou non de boucles de rtroaction dans le rseau), par le type des neurones (leurs
une base de faits contenant les observations du cas traiter comme, par

Rseaux de neurones

La fonction dactivation opre une transformation dune combinaison affine


des signaux dentre, 0 tant appel le biais du neurone. Cette combinaison
affine est dtermine par un vecteur de poids [0 , . . . , p ] associ chaque
neurone et dont les valeurs sont estimes dans la phase dapprentissage. Ils
constituent la mmoire ou connaissance rpartie du rseau.

x1
Q
Q
x2 P Q
s
PPQ
q
P
xj
..
3
.


xp 

Les diffrents types de neurones se distinguent par la nature f de leur fonction dactivation. Les principaux types sont :
-y
| f
linaire f est la fonction identit,
sigmode f (x) = 1/(1 + ex ),
seuil f (x) = 1[0,+[ (x),
p
radiale f (x) = 1/2 exp(x2 /2),
stochastiques f (x) = 1 avec la probabilit 1/(1 + ex/H ), 0 sinon (H
intervient comme une temprature dans un algorithme de recuit simul),
F IGURE 1 Reprsentation dun neurone formel.
...
Les modles linaires et sigmodaux sont bien adapts aux algorithmes dapprentissage impliquant (cf. ci-dessous) une rtro-propagation du gradient car
leur fonction dactivation est diffrentiable ; ce sont les plus utiliss. Le mofonctions de transition ou dactivation) et enfin par lobjectif vis : apprentis- dle seuil est sans doute plus conforme la ralit biologique mais pose
des problmes dapprentissage. Enfin le modle stochastique est utilis pour
sage supervis ou non, optimisation, systmes dynamiques.
des problmes doptimisation globale de fonctions perturbes ou encore pour
les analogies avec les systmes de particules. On ne le rencontre pas en data
1.3 Neurone formel
mining.
De faon trs rductrice, un neurone biologique est une cellule qui se caractrise par
2 Perceptron multicouche
des synapses, les points de connexion avec les autres neurones, fibres nerveuses ou musculaires ;
Nous ne nous intresserons dans ce cours qu une structure lmentaire
des dentrites, les entres du neurones ;
de rseau, celle dite statique ne prsentant pas de boucle de rtroaction et
laxone, la sortie du neurone vers dautres neurones ou fibres muscudans un but dapprentissage supervis. Tant les systmes dynamiques, avec
laires ;
boucle de rtroaction, que les rseaux dit cartes de Kohonen ou cartes auto le noyau qui active la sortie en fonction des stimulations en entre.
organisatrices ne sont pas abords. Ces derniers sont en fait des algorithmes de
Par analogie, le neurone formel est un modle qui se caractrise par un tat classification non-supervise.
interne s S, des signaux dentre x1 , . . . , xp et une fonction dactivation

2.1

s = h(x1 , . . . , xp ) = f 0 +

p
X
j=1

j xj = f (0 + 0 x).

Architecture

Le perceptron multicouche (PMC) est un rseau compos de couches successives. Une couche est un ensemble de neurones nayant pas de connexion

Rseaux de neurones

entre eux. Une couche dentre lit les signaux entrant, un neurone par entre
xj , une couche en sortie fournit la rponse du systme. Selon les auteurs, la
couche dentre qui nintroduit aucune modification nest pas comptabilise.
Une ou plusieurs couches caches participent au transfert. Un neurone dune
couche cache est connect en entre chacun des neurones de la couche prcdente et en sortie chaque neurone de la couche suivante.

2.2
x1

x2

..
.

xj

..
.

xp

HH
LJ
LJ HHH
j |f
H
LJ
*

@


L J 


@
L J


 L J
@
H

J HH

@
L
J
J LH J
@
H

^
J
R
@
j
- |f
J L H
* |f

J 



J L

..
L


HH J

L
.
H
HJ L
J^

HH
JL
j
* |f






Fonction de transfert

Par souci de cohrence, les mmes notations ont t conserves travers les diffrents chapitres. Ainsi, les entres dun rseau sont encore notes X1 , . . . , Xp comme les variables explicatives dun modle tandis que les
poids des entres sont des paramtres , estimer lors de la procdure
dapprentissage et que la sortie est la variable Y expliquer ou cible du modle.
-y

Un perceptron multicouche ralise donc une transformation des variables


dentre :
Y = (X1 , . . . , Xp ; )
o est le vecteur contenant chacun des paramtres jk` de la jme entre
du kme neurone de la `me couche ; la couche dentre (` = 0) nest pas
paramtre, elle ne fait que distribuer les entres sur tous les neurones de la
couche suivante.

Un thorme dit dapproximation universelle montre que cette structure


lmentaire une seule couche cache est bien suffisante pour prendre en
compte les problmes classiques de modlisation ou apprentissage statistique.
En effet, toute fonction rgulire peut tre approche uniformment avec une
prcision arbitraire et dans un domaine fini de lespace de ses variables, par un
rseau de neurones comportant une couche de neurones cachs en nombre fini
F IGURE 2 Exemple de perceptron multicouche lmentaire avec une couche possdant tous la mme fonction dactivation et un neurone de sortie linaire.
cache et une couche de sortie.
De faon usuelle et en rgression (Y quantitative), la dernire couche est
constitue dun seul neurone muni de la fonction dactivation identit tandis
que les autres neurones (couche cache) sont munis de la fonction sigmode.
En classification binaire, le neurone de sortie est muni galement de la fonction sigmode tandis que dans le cas dune discrimination m classes (Y qualitative), ce sont m neurones avec fonction sigmode, un par classe, qui sont
considrs en sortie.
-

Rseaux de neurones

Ainsi, en rgression avec un perceptron une couche cache de q neurones quations dites de rtro-propagation :
et un neurone de sortie, cette fonction scrit :
ski = f 0 (0k xi )k i
y = (x; , )
avec

2.3

zk

=
=

0 + 0 z
0

f (k0 + k x); k = 1, . . . , q.

Apprentissage

Supposons que lon dispose dune base dapprentissage de taille n dobservations (x1i , . . . , xpi ; yi ) des variables explicatives X 1 , . . . , X p et de la variable
prvoir Y . Considrons le cas le plus simple de la rgression avec un rseau
constitu dun neurone de sortie linaire et dune couche q neurones dont
les paramtres sont optimiss par moindres carrs. Ceci se gnralise toute
fonction perte drivable et donc la discrimination m classes.

dont les termes sont value sen deux passes. Une passe avant, avec les valeurs courantes des poids, lapplication des diffrentes entres xi au rseau
b i ). La passe retour permet enpermet de dterminer les valeurs ajustes (x
suite de dterminer les i qui sont rtro-propags afin de calculer les ski et
ainsi obtenir les valuations des gradients.
2.3.2

Algorithmes doptimisation

Sachant valuer les gradients, diffrents algorithmes, plus ou moins sophistiqus, sont implments. Le plus lmentaire est une utilisation itrative du
gradient : en tout point de lespace des paramtres, le vecteur gradient de Q
pointe dans la direction de lerreur croissante. Pour faire dcrotre Q il suffit
Lapprentissage est lestimation des paramtres j=0,p;k=1,q et k=0,q par donc de se dplacer en sens contraire. Il sagit dun algorithme itratif modiminimisation de la fonction perte quadratique (ou dun fonction dentropie en fiant les poids de chaque neurone selon :
classification) :
Q(, ) =

n
X
i=1

Qi =

n
X

[yi (x; , )] .

i=1

Diffrents algorithmes doptimisation sont proposs, ils sont gnralement bass sur une valuation du gradient par rtro-propagation.
2.3.1

Rtro-propagation de lerreur

(r+1)

(r+1)

kp

(r)

= k
(r)

= kp

n
X
Qi
(r)

i=1
n
X

Qi

i=1

kp

(r)

Il sagit donc dvaluer la drive de la fonction cut en une observation


:
Rtro propagation lmentaire du graet par rapport aux diffrents paramtres. Soit zki = f (k0 + k 0 xi ) et A LGORITHME 1
z i = {z1i , . . . , zqi }. Les drives partielles de la fonction perte quadratique dient
scrivent :
Initialisation
Les poids bjk` par tirage alatoire selon une loi uniforme sur [0, 1].
Qi
= 2(yi (xi ))( 0 z i )zki = i zki
Normaliser dans [0, 1] les donnes dapprentissage.
k
while Q > errmax ou niter<itermax do
Qi
= 2(yi (xi ))( 0 z i )k f 0 (0k xi )xip = ski xip .
Ranger la base dapprentissage dans un nouvel ordre alatoire.
kj
for chaque lment i = 1, . . . , n de la base do
Les termes i et ski sont respectivement les termes derreur du modle couCalculer (i) = yi (x1i , . . . , xpi ; (b)(i1)) en propageant les entres
rant la sortie et sur chaque neurone cach. Ces termes derreur vrifient les
vers lavant.

Lerreur est rtro-propage dans les diffrentes couches afin daffecter chaque entre une responsabilit dans lerreur globale.
Mise jour de chaque poids bjk` (i) = bjk` (i i) + bjk` (i)
end for
end while
Le coefficient de proportionnalit est appel le taux dapprentissage. Il
peut tre fixe, dterminer par lutilisateur, ou encore varier en cours dexcution selon certaines heuristiques. Il parat en effet intuitivement raisonnable
que, grand au dbut pour aller plus vite, ce taux dcroisse pour aboutir un
rglage plus fin au fur et mesure que le systme sapproche dune solution.

Rseaux de neurones

1. les variables dentre et la variable de sortie ; leur faire subir comme pour
toutes mthodes statistiques, dventuelles transformations.
2. Larchitecture du rseau : le nombre de couches caches (en gnral
une ou deux) qui correspond une aptitude traiter des problmes de
non-linarit, le nombre de neurones par couche cache. Ces deux choix
conditionnent directement le nombre de paramtres (de poids) estimer
et donc la complexit du modle. Ils participent la recherche dun bon
compromis biais/variance cest--dire lquilibre entre qualit dapprentissage et qualit de prvision.
3. Trois autres paramtres interviennent galement sur ce compromis : le
nombre maximum ditrations, lerreur maximum tolre et un terme
ventuel de rgularisation (decay). En renforant ces critres on amliore
la qualit de lapprentissage ce qui peut se faire au dtriment de celle de
la prvision.

Bien dautres mthodes doptimisation ont t adaptes lapprentissage


dun rseau : mthodes du gradient avec second ordre utilisant une approximation itrative de la matrice hessienne (algorithme BFGS, de LevenbergMarquardt) ou encore une valuation implicite de cette matrice par la mthode
4. Le taux dapprentissage ainsi quune ventuelle stratgie dvolution de
dite du gradient conjugu. La littrature sur le sujet propose quantits de recelui-ci.
cettes destines amliorer la vitesse de convergence de lalgorithme ou bien
lui viter de rester coll une solution locale dfavorable. Dautres heuris- En pratique, tous ces paramtres ne peuvent tre rgls simultanment par
tiques proposent dajouter un terme dinertie afin dviter des oscillations de lutilisateur. Celui-ci est confront des choix concernant principalement le
lalgorithme.
contrle du sur-apprentissage : limiter le nombre de neurones ou la dure dapDautres algorithmes encore sont des versions adaptatives. Lorsque de nou- prentissage ou encore augmenter le coefficient de pnalisation de la norme des
velles observations sont proposes une une au rseau. Dans ce dernier type paramtres. Ceci ncessite de dterminer un mode destimation de lerreur :
dalgorithme, des proprits de dynamique markovienne (processus ergodique chantillon validation ou test, validation croise ou bootstrap. Ces choix sont
convergeant vers la mesure stationnaire) impliquent une convergence presque souvent pris par dfaut dans la plupart des logiciels commerciaux. Il est imsre : la probabilit datteindre une prcision fixe a priori tend vers 1 lorsque portant den connatre les implications.
la taille de lchantillon dapprentissage tend vers linfini.
Dure de lapprentissage
On pourra se reporter labondante littrature sur le sujet (Haykin, 1994)[1]
La stratgie la plus simple (SAS Enterprise Miner) consiste considr un
pour obtenir des prcisions sur les algorithme dapprentissage et leurs nombreuses variantes. Il est important de rappeler la liste des choix qui sont laisss chantillon indpendant de validation et arrter lapprentissage lorsque ler lutilisateur. En effet, mme si les logiciels proposent des valeurs par dfaut, reur sur cet chantillon de validation commence se dgrader tandis que celle
sur lchantillon dapprentissage ne peut que continuer dcrotre.
il est frquent que cet algorithme connaisse quelques soucis de convergence.

2.4

Contrle de la complexit

Choix des paramtres


Lutilisateur doit donc dterminer

Nombre de neurones
Le nombre de couches reste restreint car toute fonction continue dun compact de RP dans Rq peut tre approche avec une prcision arbitraire par un
rseau une couche cache en adaptant le nombre de neurones. Le contrle

de la complexit du modle ou plus gnralement dun sur-apprentissage peut


tre dtermin en optimisant le nombre de neurones par minimisation dune
estimation de lerreur de prvision par exemple par validation croise.

Rseaux de neurones

Exemples

Les rseaux de neurones tant des botes noires, les rsultats fournis ne sont
gure explicites et ne conduisent donc pas des interprtations peu informaRgularisation
tives du modle. Seule une tude des erreurs de prvisions et, dans le cas dune
Une option importante car efficace pour viter le sur-apprentissage consiste rgression, une tude des rsidus, permet de se faire une ide de la qualit du
introduire une terme de pnalisation ou rgularisation, comme en rgression modle.
ridge, dans le critre optimiser. Celui-ci devient alors : Q() + kk2 .
3.1 Cancer du sein
Le paramtre (decay) doit tre rgl par lutilisateur ; plus il est imporLa prvision de lchantillon test par un rseau de neurones conduit la
tant et moins les paramtres ou poids peuvent prendre des valeurs chaotimatrice
de confusion ci-dessous et donc une erreur estime de 3%.
ques contribuant ainsi limiter les risques de sur-apprentissage. Une stratgie
simple et sans doute efficace, surtout si la taille de lchantillon ne permet pas
benign malignant
de prendre en compte une partie validation, consiste introduire un nombre
FALSE
83
1
plutt grand de neurones puis optimiser le seul paramtre de rgularisation
TRUE
3
50
(decay) par validation croise.

2.5

Remarques

3.2

Concentration dozone

La comparaison des rsidus (figure 3 montre que le problme de nonLes champs dapplication des PMC sont trs nombreux : discrimination, linarit qui apparaissait sur les modles simples (MOCAGE, rgression liprvision dune srie temporelle, reconnaissance de forme. . . Ils sont en gn- naire) est bien rsolu et que ces rsidus sont plutt moins tendus, mais le
ral bien explicits dans les documentations des logiciels spcialiss.
phnomne dhtroscdasticit est toujours prsent quelque soit le nombre de
Les critiques principales nonces lencontre du PMC concernent les dif- neurones utiliss. Il a t choisi relativement important (10) et conduit donc
ficults lis lapprentissage (temps de calcul, taille de lchantillon, localit un bon ajustement (R2 = 0, 77) mais devra tre rduit pour optimiser la
de loptimum obtenu) ainsi que son statut de bote noir. En effet, contraire- prvision.
ment un modle de discrimination ou un arbre, il est a priori impossible de
Loptimisation des paramtres dun rseau de neurones est instable comme
connatre linfluence effective dune entre (une variable) sur le systme ds pour les proches voisins car chaque excution de lestimation de lerreur par
quune couche cache intervient. Nanmoins, des techniques de recherche de validation croise fournit des rsultats diffrents. Elle est en plus trs comsensibilit du systme chacune des entres permettent de prciser les ides et, plique par le nombre de paramtres optimiser : nombre de neurones sur la
ventuellement de simplifier le systme en supprimant certaines des entres.
couche (size), pnalisation (decay), nombre ditrations. Une fonction de la
En revanche, ils possdent dindniables qualits lorsque labsence de linarit et/ou le nombre de variables explicatives rendent les modles statistiques
traditionnelles inutilisables. Leur flexibilit allie une procdure dapprentissage intgrant la pondration (le choix) des variables comme de leurs interactions peuvent les rendre trs efficaces.

librairie e1071 permet de faire varier la fois la taille et la pnalisation et


fournit des graphiques lgants (figure 4) mais les excutions sont trs longues
et les rsultats pas toujours pertinents. Le plus efficace semble tre de fixer
assez grands la taille (nombre de neurones) et le nombre ditrations pour se
focaliser sur le seul rglage de la pnalisation.
Comme pour les arbres de dcision, les rseaux de neurones ne proposent
pas de modles trs efficaces sur cet exemple. Les taux derreur de prvision

Rseaux de neurones

50

100

200

300

50

Valeurs predites

100

200

300

0.8
0.6
0.4
0.2

_ logit
_ nnetr
_ nnetq

0.0

True positive rate

100 50

Rsidus

50

250
150
0 50

Valeurs observees

100

1.0

0.0

Valeurs predites

0.2

0.4

0.6

0.8

1.0

False positive rate

F IGURE 3 Ozone : Valeurs observes et rsidus de lchantillon test en fonction des valeurs prdites par un rseau de 10 neurones

Performance of nnet
3.0

680
675

decay

2.5

670
2.0

F IGURE 5 Ozone : courbes ROC pour la rgression logistique et les rseaux


de neurones.
du dpassement du seuil sont de 14,4% partir du modle quantitatif et de
15,6% avec une prvision directement qualitative. Les courbes ROC estimes
sur lchantillon test permettent de comparer les mthodes. Dans ce cas et
pour lchantillon test concern, la mthode la plus efficace (figure 5) pour
prvoir le dpassement du pic dozone est un rseau de neurone modlisant la
concentration plutt que la prvision directe du dpassement (logit ou rseau
qualitatif).

665
660

1.5

655
1.0
2.0

2.5

3.0

3.5

4.0

size

F IGURE 4 Ozone : optimisation des paramtres (pnalisation et nombre de


neurones) par validation croise.

3.3

Donnes bancaires

Une fonction de la librairie e1071, pratique mais trs chronophage, propose une automatisation de loptimisation des paramtres (decay, nombre de
neurones). Elle produit une carte de type contour permettant dvaluer " lil"
les valeurs optimales. La prvision de lchantillon test par ce rseau de neurones conduit la matrice de confusion ci-dessous et donc une erreur estime
de 21,5% :
pred.vistest FALSE TRUE
FALSE
110
16

TRUE

27

47

Rfrences
[1] T.J. Haykin, Neural network, a comprehensive foundation, Prentice-Hall,
1994.

Rseaux de neurones