Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de...

64
1 Les réseaux de neurones : pourquoi et pour quoi faire ? Lors de l’émergence d’une nouvelle technique, l’ingénieur se demande naturellement en quoi elle peut lui être utile. Si elle est dotée d’un nom plus métaphorique que scientifique – ce qui est évidemment le cas pour les réseaux de neurones –, la réponse à cette question doit être particulièrement précise et motivée. C’est la raison pour laquelle ce chapitre est consacré à un exposé des arguments théoriques et pratiques qui justi- fient l’utilisation des réseaux de neurones, suivi de la présentation d’applications exemplaires qui, bien qu’elles soient en apparence très diverses, reposent toutes sur les mêmes principes. La mise en oeuvre des réseaux de neurones est généralement simple ; la tentation peut être grande d’appliquer cette technique d’une manière irréfléchie ou inadaptée, ce qui ne peut conduire qu’à des déceptions. Voilà pourquoi on ne cherchera pas à expliquer en détail, dans ce chapitre, comment on met en oeuvre les réseaux de neurones, mais plutôt pourquoi ils peuvent être mis en oeuvre de préférence à d’autres outils, et dans quel but. Nous commencerons par introduire les définitions essentielles : nous expliquerons ce qu’est un neurone (formel), ce qu’est un réseau de neurones, ce qu’est l’apprentissage des réseaux de neurones (nous préci- serons notamment les différences entre l’apprentissage supervisé et l’apprentissage non supervisé), et nous introduirons la distinction fondamentale entre réseaux de neurones non bouclés et réseaux de neurones bouclés (ou « récurrents »). Nous pourrons alors introduire la propriété fondamentale des réseaux de neurones à apprentissage supervisé : l’approximation non linéaire parcimonieuse. Nous montrerons que cette propriété fait des réseaux de neurones d’excellents outils de modélisation non linéaire par apprentissage. La notion d’apprentissage apparaîtra alors de manière très naturelle, et nous insisterons sur le fait que ce terme doit être utilisé avec précaution, car l’apprentissage des réseaux de neurones n’a rien à voir avec l’apprentis- sage au sens de la psychologie ou de l’intelligence artificielle : la mise en oeuvre des réseaux de neurones se révélera, en grande partie, comme constituant une extension non linéaire de méthodes statistiques bien connues, ce qui suffit à justifier la très grande étendue de leur champ d’application. Nous introduirons ensuite les principes de mise en oeuvre des réseaux de neurones à apprentissage : nous ferons la liste des conditions qui doivent être replies pour que la réussite d’une application soit garantie. Nous insisterons particulièrement sur l’utilisation des réseaux de neurones à apprentissage supervisé pour la classification, qui présente des particularités importantes. Nous présenterons, d’une manière générale, le problème de la classification (ou discrimination), sous son aspect probabiliste (« bayésien ») ; nous soulignerons le fait que les réseaux de neurones ne doivent pas être utilisés pour résoudre n’importe quel problème de classification, et nous préciserons le domaine d’excellence des réseaux classifieurs. Nous proposerons une méthodologie générale de conception d’un classifieur neuronal. Nous terminerons ce chapitre par la présentation de diverses applications qui sont destinées à montrer la variété des domaines où les réseaux de neurones sont susceptibles d’apporter des solutions efficaces et élégantes : reconnaissance de formes, contrôle non destructif, filtrage d’informations textuelles, bio-

Transcript of Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de...

Page 1: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

1

Les réseaux de neurones :

pourquoi et pour quoi faire ?

Lors de l’émergence d’une nouvelle technique, l’ingénieur se demande naturellement en quoi elle peut luiêtre utile. Si elle est dotée d’un nom plus métaphorique que scientifique – ce qui est évidemment le cas pourles réseaux de neurones –, la réponse à cette question doit être particulièrement précise et motivée. C’est laraison pour laquelle ce chapitre est consacré à un exposé des arguments théoriques et pratiques qui justi-fient l’utilisation des réseaux de neurones, suivi de la présentation d’applications exemplaires qui, bienqu’elles soient en apparence très diverses, reposent toutes sur les mêmes principes. La mise en œuvre desréseaux de neurones est généralement simple ; la tentation peut être grande d’appliquer cette techniqued’une manière irréfléchie ou inadaptée, ce qui ne peut conduire qu’à des déceptions. Voilà pourquoi on necherchera pas à expliquer en détail, dans ce chapitre,

comment

on met en œuvre les réseaux de neurones,mais plutôt

pourquoi

ils peuvent être mis en œuvre de préférence à d’autres outils, et

dans quel but.

Nous commencerons par introduire les définitions essentielles : nous expliquerons ce qu’est un neurone(formel), ce qu’est un réseau de neurones, ce qu’est l’apprentissage des réseaux de neurones (nous préci-serons notamment les différences entre l’apprentissage supervisé et l’apprentissage non supervisé), etnous introduirons la distinction fondamentale entre réseaux de neurones non bouclés et réseaux deneurones bouclés (ou «

récurrents

»).

Nous pourrons alors introduire la propriété fondamentale des réseaux de neurones à apprentissagesupervisé : l’approximation non linéaire parcimonieuse. Nous montrerons que cette propriété fait desréseaux de neurones d’excellents outils de

modélisation non linéaire par apprentissage

. La notion

d’apprentissage

apparaîtra alors de manière très naturelle, et nous insisterons sur le fait que ce terme doitêtre utilisé avec précaution, car l’apprentissage des réseaux de neurones n’a rien à voir avec l’apprentis-sage au sens de la psychologie ou de l’intelligence artificielle : la mise en œuvre des réseaux de neuronesse révélera, en grande partie, comme constituant une extension

non linéaire

de méthodes

statistiques

bienconnues, ce qui suffit à justifier la très grande étendue de leur champ d’application.

Nous introduirons ensuite les principes de mise en œuvre des réseaux de neurones à apprentissage : nousferons la liste des conditions qui doivent être replies pour que la réussite d’une application soit garantie.

Nous insisterons particulièrement sur l’utilisation des réseaux de neurones à apprentissage supervisé pourla classification, qui présente des particularités importantes. Nous présenterons, d’une manière générale,le problème de la classification (ou discrimination), sous son aspect probabiliste («

bayésien

») ; noussoulignerons le fait que les réseaux de neurones ne doivent pas être utilisés pour résoudre n’importe quelproblème de classification, et nous préciserons le domaine d’excellence des réseaux classifieurs. Nousproposerons une méthodologie générale de conception d’un classifieur neuronal.

Nous terminerons ce chapitre par la présentation de diverses applications qui sont destinées à montrer lavariété des domaines où les réseaux de neurones sont susceptibles d’apporter des solutions efficaces etélégantes : reconnaissance de formes, contrôle non destructif, filtrage d’informations textuelles, bio-

Page 2: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones

2

ingénierie, formulation de matériaux nouveaux, modélisation de procédés industriels, contrôle de l’envi-ronnement, robotique, etc. D’autres applications (interprétation de spectres, classification d’images satel-litaires, classification de signaux de sonar, commande de processus) seront mentionnées ou décrites endétail dans les chapitres suivants.

Les réseaux de neurones : définitions et propriétés

Suivant en cela l’usage, nous utiliserons fréquemment, par abus de langage, les termes de «

neuronelinéaire

» pour désigner une fonction paramétrée linéaire ou affine (qui n’est donc pas bornée).

Les variables sur lesquelles opère le neurone sont habituellement désignéessous le terme d’entrées du neurone, et la valeur de la fonction sous celui desortie ; il est commode de représenter graphiquement un neurone commeindiqué sur la figure 1-1. Cette représentation est le reflet de l’inspirationbiologique qui a été à l’origine de la première vague d’intérêt pour lesneurones formels, dans les années 1940 à 1970 [McC

ULLOCH

et al.

1943],[M

INSKY

et al.

1969].

Figure 1-1. Un neurone réalise une fonction non linéaire bornée y = f (x

1

, x

2

,... x

n

; w

1

, w

2

, ... w

p

) où les {x

i

} sont les variables et les {w

j

} sont des paramètres.

La fonction

f

peut être paramétrée de manière quelconque. Deux types de paramétrages sont fréquemmentutilisés :• Les paramètres sont attachés aux entrées du neurone : la sortie du neurone est une fonction non linéaire

d’une combinaison des entrées {

x

i

} pondérées par les paramètres {

w

i

}, qui sont alors souvent désignéssous le nom de «

poids

» ou, en raison de l’inspiration biologique des réseaux de neurones, «

poidssynaptiques

». Conformément à l’usage (également inspiré par la biologie), cette combinaison linéairesera appelée «

potentiel

» dans tout cet ouvrage. Le potentiel

v

le plus fréquemment utilisé est la sommepondérée, à laquelle s’ajoute un terme constant ou «

biais

» :

La fonction

f

est appelée

fonction d’activation

. Pour des raisons que nous exposerons plus bas, il estrecommandé d’utiliser pour

f

une fonction « sigmoïde » (c’est-à-dire une fonction en forme de «

s

»)symétrique par rapport à l’origine, telle que la tangente hyperbolique ou la fonction Arctangente. Ainsi,dans la très grande majorité des applications qui seront décrites dans ce chapitre, la sortie d’un neuronea pour équation :

• Les paramètres sont attachés à la non-linéarité du neurone : ils interviennent directement dans la fonc-tion

f

; cette dernière peut être une

fonction radiale

ou RBF (en anglais

Radial Basis Function

), ouencore une ondelette ; les premières tirent leur origine de la théorie de l’approximation [P

OWELL

1987],les secondes de la théorie du signal [M

ALLAT

1989].

Définition

Un neurone est une fonction algébrique non linéaire, paramétrée, à valeurs bornées.

y

x1 x2 xn

f

v = w0 + wi xi∑i = 1

n – 1

y = th w0 + wi xi∑i = 1

n – 1

Page 3: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

C

HAPITRE

1

3

Par exemple, la sortie d’un neurone RBF à non-linéarité gaussienne a pour équation :

où les paramètres

w

i

,

i

= 1 à

n

sont les coordonnées du centre de la gaussienne, et

w

n

+ 1

est son écart-type.

Dans les compléments théoriques et algorithmiques, en fin de chapitre, nous présentons d’autres exemplesde neurones.

La différence pratique essentielle entre les deux types de neurones que nous venons d’introduire est lasuivante : les neurones tels que les RBF ou les ondelettes ont des non-linéarités

locales

, qui tendent verszéro dans toutes les directions de l’espace des entrées ; leur zone d’influence est donc limitée dansl’espace, ce qui n’est pas le cas des neurones à potentiel à fonction d’activation sigmoïde.

Les réseaux de neurones

Comme nous venons de le voir, un neurone réalise simplement une fonction non linéaire, paramétrée, deses variables d’entrée. L’intérêt des neurones réside dans les propriétés qui résultent de leur association enréseaux, c’est-à-dire de la

composition

des fonctions non linéaires réalisées par chacun des neurones.

On distingue deux types de réseaux de neurones : les réseaux non bouclés et les réseaux bouclés.

Les réseaux de neurones non bouclés

Forme générale

Un réseau de neurones non bouclé est donc représenté graphiquement par un ensemble de neurones«

connectés

» entre eux, l’information circulant des entrées vers les sorties sans «

retour en arrière

» :

sil’on représente le réseau comme un graphe dont les nœuds sont les neurones et les arêtes les«

connexions

» entre ceux-ci, le graphe d’un réseau non bouclé est

acyclique

: si l’on se déplace dans leréseau, à partir d’un neurone quelconque, en suivant les connexions, on ne peut pas revenir au neurone dedépart. La représentation de la topologie d’un réseau par un graphe est très utile, notamment pour lesréseaux bouclés, comme nous le verrons dans le chapitre 2. Les neurones qui effectuent le dernier calculde la composition de fonctions sont les

neurones de sortie

; ceux qui effectuent des calculs intermédiairessont les

neurones cachés

(voir figure 1-2)

.

Remarque

Le terme de

«

connexions

»

doit être pris dans un sens métaphorique : dans la très grande majorité des applications, les opérations effec-tuées par un réseau de neurones sont programmées (n’importe quel langage de programmation convient), et exécutées par un ordinateurconventionnel. Le réseau de neurones n’est donc pas, en général, un objet physique tel qu’un circuit électronique, et les

«

connexions

»

n’ont pas de réalité matérielle ; néanmoins, le terme de connexion, issu des origines biologiques des réseaux de neurones, est passé dansl’usage, car il est commode quoique trompeur. Il a même donné naissance au terme de

connexionnisme

.

Définition

Un réseau de neurones non bouclé réalise une (ou plusieurs) fonctions

algébriques

de ses entrées, parcomposition des fonctions réalisées par chacun des neurones.

y = exp –

xi – wi2∑

i = 1

n

2 wn+12

Page 4: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones

4

Réseaux à couches

La seule contrainte sur le graphe des connexionsd’un réseau de neurones non bouclé est qu’il necontienne pas de cycle. On peut donc imaginerune grande variété de topologies pour ces réseaux.Néanmoins, pour des raisons que nous développe-rons plus bas, la très grande majorité des applica-tions des réseaux de neurones mettent en jeu des«

réseaux à couches

», dont un exemple est repré-senté sur la figure 1-2.

Forme générale

Ce réseau réalise

N

o

fonctions algébriques desvariables d’entrées du réseau ; chacune dessorties est une fonction, réalisée par le neuronede sortie correspondant, des fonctions nonlinéaires réalisées par les neurones cachés.

Il convient d’insister sur le fait que le temps ne joue aucun rôle fonctionnel dans un réseau de neuronesnon bouclé : si les entrées sont constantes, les sorties le sont également. Le temps nécessaire pour le calculde la fonction réalisée par chaque neurone est négligeable et, fonctionnellement, on peut considérer cecalcul comme instantané. Pour cette raison, les réseaux non bouclés sont souvent appelés «

réseauxstatiques

», par opposition aux réseaux bouclés ou «

dynamiques

» que nous introduirons plus bas.

Terminologie

Les réseaux de neurones non bouclés à couches, dont les neurones cachés ont une fonction d’activation sigmoïde, sont souvent appelés

perceptrons multicouche

(ou MLP pour

Multi-Layer Perceptron

).

À proscrire

On voit souvent des textes qui mentionnent, outre la couche cachée et la couche de sortie, une

«

couche d’entrée

»

, voire des

«

neurones d’entrée

»

. Cette expression est trompeuse, car les entrées (représentées par des carrés sur la figure 1-2) ne sont pas desneurones : elles ne réalisent aucun traitement de l’information, puisqu’elles ne font que transmettre les valeurs des variables.

Réseaux à une couche cachée de sigmoïdes et un neurone de sortie linéaire

Pour terminer cette présentation des réseaux de neurones non bouclés, considérons le cas, très importanten pratique, des réseaux à une couche cachée à fonction d’activation sigmoïde et un neurone de sortielinéaire (Figure 1-3).

Définition

Un réseau de neurones non bouclé à n entrées,

N

c

neurones cachés et

N

O

neurones de sortie réalise

NOfonctions non linéaires de ses n variables d’entrée par composition des Nc fonctions algébriques réali-sées par ses neurones cachés.

x 1 x 2 x 3 x n

n entrées

NO neurones de sortie

Nc neurones cachés

.....

....

.... Figure 1-2. Un réseau de neurones à n entrées, une couche de Nc neurones cachés, et No neurones de sortie

Page 5: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 15

Figure 1-3. Un réseau de neurones à n+1 entrées,une couche de Nc neurones cachés à fonction d’acti-vation sigmoïde et un neurone de sortie linéaire. Sasortie g(x, w) est une fonction algébrique nonlinéaire du vecteur des entrées x, de composantes 1,x1, x2, ..., xN, et du vecteur des paramètres w, dontles composantes sont les (n+1)Nc+Nc+1 paramè-tres du réseau.

La sortie de ce réseau a pour expression :

où x est le vecteur des entrées (de dimension n+1), et w est le vecteur des paramètres, de dimension(n + 1)Nc+(Nc+1). Les neurones cachés sont numérotés de 1 à Nc et le neurone de sortie est numérotéNc+1. Par convention, le paramètre wij est relatif à la connexion allant du neurone j (ou de l’entrée j) versle neurone i.

Qu’est-ce qu’un réseau de neurones à zéro neurones cachés ?Un réseau de neurones non bouclé sans neurone caché, avec un neurone de sortie linéaire, réalise simplement une fonction linéaire deses entrées. On peut donc considérer tout système linéaire comme un réseau de neurones. Cela ne présente cependant aucun intérêt, nithéorique ni pratique.

Les « termes directs »Si la relation que l’on cherche à réaliser entre les entrées et les sorties présente une importante composante linéaire, il peut être utiled’ajouter, à la structure de réseau à couches qui vient d’être décrite, des termes linéaires, parfois appelés « termes directs », qui se tradui-sent, dans la représentation graphique du réseau, par des connexions directes entre les entrées et le neurone de sortie (figure 1-4). Parexemple, pour un réseau dont les fonctions d’activation sont des sigmoïdes, l’expression de la sortie devient :

Très important

La sortie du réseau g(x, w) est une fonction linéaire des poids de la dernière couche de connexions (quirelient les Nc neurones cachés au neurone de sortie, numéroté Nc+1), et elle est une fonction non linéairedes paramètres de la première couche de connexions (qui relient les n+1 entrées du réseau aux Ncneurones cachés). Cette propriété a des conséquences importantes que nous examinerons plus bas.

Ce qu’il faut retenir

La sortie d’un réseau de neurones non bouclé est une fonction algébrique non linéaire de ses entrées etde ses paramètres

Nc neurones cachés àfonction d’activation

sigmoïde

n entrées variables+ un “biais”

....

....

x 0 = 1 x 1 x 2 x n

1

Nc

Un neurone caché linéaireN

c+1

g (x , w )

g x, w = wNc + 1, i th wij xj∑j=1

n

+ wj0∑i = 1

Nc

+ wNc + 1, 0

= wNc + 1, i th wij xj∑j=0

n

∑i = 1

Nc

+ wNc+ 1, 0

g x, w = wNc+1,i th wij xj∑j=0

n

∑i = 1

Nc

+ wNc + 1,j xj∑j = 0

n

Page 6: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones6

Figure 1-4. Représentation graphique d’un réseau de neuronesà couches comportant des termes directs. Sa sortie g(x, w) dépenddu vecteur des entrées x, de composantes 1, x1, x2, ..., xn, et du vecteurdes paramètres w, dont les composantes sont les paramètres du réseau.

Réseaux de RBF (fonctions radiales de base) ou d’ondelettes

Dans ce cas, comme nous l’avons indiqué plus haut, les para-mètres relatifs aux RBF ne sont pas attachés aux connexions,mais à la non-linéarité elle-même ; en revanche, le neurone desortie (linéaire) réalise une somme pondérée des sorties desneurones cachés. La sortie du réseau a donc pour expression(pour des fonctions radiales gaussiennes) :

où x est le vecteur des entrées du réseau (de dimension n), et w est le vecteur des paramètres du réseau (dedimension (n+2) Nc) ([BROOMHEAD et al. 1988], [MOODY et al. 1989]) ; les neurones cachés sont numé-rotés de 1 à Nc, et le neurone de sortie porte le numéro Nc+1.

Remarquons que deux sortes de paramètres interviennent ici : les poids de la dernière couche (qui relientles Nc fonctions radiales au neurone de sortie), et les paramètres des fonctions radiales (centres et écarts-types pour des fonctions radiales gaussiennes). Les connexions de la première couche ont toutes des poidségaux à 1. Dans ces réseaux, la sortie est une fonction linéaire des poids de la dernière couche deconnexions, et elle est une fonction non linéaire des paramètres des gaussiennes. Nous examinerons ulté-rieurement les conséquences de cette propriété.

Les réseaux d’ondelettes ont exactement la même structure, l’équation de la gaussienne étant remplacéepar celle d’une ondelette multidimensionnelle. Les paramètres attachés à la non-linéarité sont alors lescentres et les dilatations des ondelettes ([BENVENISTE et al. 1994], [OUSSAR et al. 2000]).

Les réseaux de neurones bouclés (ou récurrents)

■ Forme générale

Nous introduisons ici l’architecture la plus générale pour un réseau de neurones, les « réseaux bouclés »,dont le graphe des connexions est cyclique : lorsqu’on se déplace dans le réseau en suivant le sens desconnexions, il est possible de trouver au moins un chemin qui revient à son point de départ (un tel cheminest désigné sous le terme de « cycle »). La sortie d’un neurone du réseau peut donc être fonction d’elle-même ; cela n’est évidemment concevable que si la notion de temps est explicitement prise en considéra-tion.

Ainsi, à chaque connexion d’un réseau de neurones bouclé (ou à chaque arête de son graphe) est attaché,outre un poids comme pour les réseaux non bouclés, un retard, multiple entier (éventuellement nul) del’unité de temps choisie. Une grandeur, à un instant donné, ne pouvant pas être fonction de sa proprevaleur au même instant, tout cycle du graphe du réseau doit avoir un retard non nul.

Termesdirects

....

....

x 0 = 1 x 1 x 2 x n

1 N c

N c +1

g (x , w )

g x, w = wNc + 1, i exp -

xj – wij2∑

j = 1

n

2 wi2∑

i=1

Nc

Page 7: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 17

La figure 1-5 représente un exemple de réseau deneurones bouclé. Les chiffres dans les carrés indiquentle retard attaché à chaque connexion, exprimé enmultiple de l’unité de temps (ou période d’échantillon-nage) T. Ce réseau contient un cycle, qui part duneurone 3 et revient à celui-ci en passant par le neurone4 ; la connexion de 4 vers 3 ayant un retard de 1 unité detemps, ce réseau est causal.

ExplicationsÀ l’instant kT : le neurone 3 reçoit en entrée les quantités u1(kT),u2[(k–1)T], y4[(k–1)T] (où k est un entier positif et y4(kT) est la sortie duneurone 4 à l’instant kT), et il calcule sa sortie y3(kT) ; le neurone 4reçoit u2(kT) et y3(kT), et il calcule sa sortie y4(kT) ; le neurone 5 reçoity3(kT), u1(kT) et y4[(k–1)T], et il calcule sa sortie, qui est la sortie duréseau de neurones, g(kT).

■ Forme canonique des réseaux de neurones bouclés

Dans la mesure où les réseaux de neurones bouclés réalisent des équations aux différences non linéaires,il est utile d’examiner les liens entre ces modèles non linéaires et les modèles linéaires dynamiques habi-tuels, utilisés notamment en automatique des systèmes linéaires.

La description la plus générale d’un système linéaire est la description d’état :

x(k+1) = A x(k) + B u(k)

y(k) = C x(k) + D u(k)

où x(k) est le vecteur des variables d’état à l’instant (discret) kT, u(k) est le vecteur des entrées, y(k) est levecteur des sorties, et A, B, C, D sont des matrices. Rappelons que les variables d’état sont un ensemblede variables, en nombre minimal, telles que l’on peut calculer leurs valeurs à l’instant k+1 si l’on connaîtleurs valeurs initiales et si l’on connaît les valeurs des entrées à tout instant compris entre 0 et k. Lenombre de variables d’état est appelé ordre du système.

De manière analogue, on définit la forme canonique d’un système non linéaire à temps discret par leséquations suivantes :

x(k) = ϕ [x(k – 1), u(k – 1)]

y(k) = ψ [x(k)]

Définition

Un réseau de neurones bouclé à temps discret réalise une (ou plusieurs) équations aux différences nonlinéaires, par composition des fonctions réalisées par chacun des neurones et des retards associés àchacune des connexions.

Propriété

Tout cycle du graphe des connexions d’un réseau de neurones bouclé doit comprendre au moins uneconnexion de retard non nul.

3 4

5

u1 (kT ) u2 (kT )

g (kT )

1

0 0

00

0

1

1

Figure 1-5. Un réseau de neurones bouclé à deux entrées. Les chiffres dans les carrés indiquent le retard attaché à chaque connexion, multiple de l’unité de temps (ou période d’échantillonnage) T. Le réseau contient un cycle, qui part du neurone 3, va au neurone 4, et revient au neurone 3.

Page 8: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones8

où ϕ et ψ sont des fonctions non linéaires (desréseaux de neurones par exemple), et x est levecteur des variables d’état. Là encore, les varia-bles d’état sont un ensemble de variables, ennombre minimal, qui permet de décrire complète-ment le système à l’instant k si l’on connaît leursvaleurs initiales et si l’on connaît les valeurs desentrées à tout instant compris entre 0 et k–1. Onmontrera dans le chapitre 2 que tout réseau deneurones peut être mis sous une forme cano-nique, représentée sur la figure 1-6, où lesymbole q-1 représente un retard d’une unité detemps. Ce symbole, habituel en automatique, serautilisé systématiquement dans toute la suite del’ouvrage, notamment dans les chapitres 2 et 4.

Figure 1-6. Forme canonique d’un réseau de neurones bouclé.Le symbole q-1 représente un retard d’une unité de temps.

Par exemple, le réseau de neurones représentésur la figure 1-5 peut être mis sous la formecanonique indiquée sur la figure 1-7. Ce réseauprésente une seule variable d’état (il est donc du1er ordre), qui est la sortie du neurone 3. Dans cetexemple, ce neurone est un neurone caché, mais,comme nous le verrons, un neurone d’état peutaussi être un neurone de sortie.

Figure 1-7. Forme canonique (à droite) du réseau repré-senté sur la figure 1-5 (à gauche). Ce réseau possède une variable d’état x(kT)( la sortie du neurone 3) : c’est un réseau du 1er ordre. La partie grisée de la forme cano-nique est un réseau de neurones non bouclé.

ExplicationsÀ l’instant kT : le neurone 4 reçoit u2[(k–1)T] et x[(k–1)T] = y3[(k–1)T]) : il calcule donc la quantité y4[(k–1)T] ; comme dans la forme noncanonique, le neurone 3 reçoit en entrée les quantités u1(kT), u2[(k–1)T], y4[(k–1)T] : il calcule donc la quantité y3(kT) ; le neurone 5 reçoity3(kT), u1(kT) et y4[(k–1)T] : il calcule donc sa sortie, qui est la sortie du réseau de neurones, g(kT). Les deux réseaux sont ainsi bien équi-valents fonctionnellement.

Les réseaux bouclés (et leur forme canonique) seront étudiés en détail dans les chapitres 2, 4 et 8.

Propriété

Tout réseau de neurones bouclé, aussi complexe soit-il, peut être mis sous une forme canonique,comportant un réseau de neurones non bouclé dont certaines sorties (les variables d’état) sont rame-nées aux entrées par des bouclages de retard unité [NERRAND et al. 1993].

Entrées externesà l'instant k – 1

Sortiesà l'instant k

g (k )

u (k - 1)

Variables d'étatà l'instant k – 1

Variables d'étatà l'instant k

Retards unitaires

x (k )

x (k - 1)

q -1 q -1

Réseau de neurones non bouclé

3 4

5

u1(kT ) u2(kT )

g (kT )

1

0 0

00

0

1

1

u1(kT ) u2[(k -1)T ]x [(k -1)T ]

x (kT )g (kT )

q -13

4

5

Page 9: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 19

Résumé

Nous avons introduit, dans cette section, les définitions essentielles relatives aux réseaux de neurones quisont le sujet de cet ouvrage. Nous avons notamment distingué :• les réseaux de neurones non bouclés, statiques, qui réalisent des fonctions non linéaires,• les réseaux de neurones bouclés, dynamiques, qui réalisent des équations aux différences non linéaires.

Nous avons vu également que tout réseau de neurones bouclé peut être mis sous une forme canonique,comprenant un réseau de neurones non bouclé dont les sorties d’état sont ramenées à ses entrées avec unretard unité.

L’élément de base est donc le réseau de neurones non bouclé ; voilà pourquoi l’étude de ce dernier estfondamentale. Avant d’en indiquer les propriétés et les applications, nous allons introduire la notiond’apprentissage.

L’apprentissage des réseaux de neurones

Dans le cadre de cette définition, on peut distinguer deux types d’apprentissages : l’apprentissage« supervisé » et l’apprentissage « non supervisé ».

L’aprentissage supervisé

Nous avons vu, dans le paragraphe précédent, qu’un réseau non bouclé réalise une relation algébriqueentre ses entrées et ses sorties. On peut donc affecter à un tel réseau la tâche qui consiste à réaliser unefonction algébrique non linéaire ; celle-ci peut être :• connue analytiquement : le réseau réalise alors une tâche d’approximation de fonction,• inconnue analytiquement, mais pour laquelle on dispose de valeurs, en nombre fini, qui sont entachées

de bruit si ces valeurs résultent de mesures effectuées sur un processus physique, chimique, écono-mique, biologique, etc. : le réseau réalise alors une tâche de modélisation statique ou une régression.

C’est essentiellement pour ce dernier type d’applications que sont mis en œuvre les réseaux de neuronesà apprentissage supervisé.

On connaît donc, en tous points ou seulement en certains points, les valeurs que doit avoir la sortie duréseau en fonction des entrées correspondantes : c’est en ce sens que l’apprentissage est « supervisé »,métaphore qui signifie qu’un « professeur » peut fournir au réseau des « exemples » de ce que celui-cidoit faire. L’essentiel du chapitre 2 de cet ouvrage est consacré à expliquer comment cette métaphore setraduit mathématiquement, et les algorithmes qui en résultent. Les chapitres 3, 4, 5, et 6, de cet ouvragesont consacrés à la mise en œuvre et aux applications des réseaux à apprentissage supervisé pour destâches de modélisation statique et dynamique, et de classification (discrimination) automatique.

L’apprentissage non supervisé

Un réseau de neurones non bouclé peut également être utilisé dans un but de visualisation ou d’analyse dedonnées : on dispose d’un ensemble de données, représentées par des vecteurs de grande dimension, etl’on cherche à les regrouper, selon des critères de ressemblance qui sont inconnus a priori. Ce type de

Définition

On appelle « apprentissage » des réseaux de neurones la procédure qui consiste à estimer les para-mètres des neurones du réseau, afin que celui-ci remplisse au mieux la tâche qui lui est affectée.

Page 10: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones10

tâches est connu en statistique sous le nom de méthodes « d’agrégation » (en anglais clustering). On peututiliser les réseaux de neurones non bouclés pour réaliser une tâche assez voisine : à partir de données,décrites par des vecteurs de grande dimension, trouver une représentation de ces données dans un espacede dimension beaucoup plus faible (typiquement de dimension 2) tout en conservant les « proximités » ou« ressemblances » entre ces données. Il n’y a donc pas là de « professeur », puisque c’est au réseau dedécouvrir les ressemblances entre les éléments de la base de données, et de les traduire par une proximitédans la « carte » de dimension 2 qu’il doit produire. Les réseaux à apprentissage non supervisé les plusétudiés et utilisés sont les « cartes auto-organisatrices » ou « cartes de Kohonen ». Le chapitre 7 de cetouvrage est entièrement consacré aux cartes auto-organisatrices et à leurs applications.

Propriété fondamentale des réseaux de neurones non bouclés à apprentissage supervisé : l’approximation parcimonieuse

Les réseaux de neurones à apprentissage supervisé sont des approximateurs universels

Cette propriété, qui n’est qu’un théorème d’existence et ne donne pas de méthode pour trouver les para-mètres du réseau, n’est pas spécifique aux réseaux de neurones. C’est la propriété suivante qui leur estparticulière et fait tout leur intérêt.

Certains réseaux de neurones sont des approximateurs parcimonieux

Dans la pratique, le nombre de fonctions nécessaires pour réaliser une approximation est un critère impor-tant dans le choix d’un approximateur de préférence à un autre. Nous montrerons dans le paragraphesuivant que le concepteur de modèle doit toujours faire en sorte que le nombre de paramètres ajustablessoit le plus faible possible : on dit que l’on cherche l’approximation la plus parcimonieuse.

Propriété

Toute fonction bornée suffisamment régulière peut être approchée uniformément, avec une précisionarbitraire, dans un domaine fini de l’espace de ses variables, par un réseau de neurones comportant unecouche de neurones cachés en nombre fini, possédant tous la même fonction d’activation, et unneurone de sortie linéaire [HORNIK et al. 1989], [HORNIK et al. 1990], [HORNIK 1991].

Propriété fondamentale

On montre [BARRON 1993] que, si l’approximation dépend des paramètres ajustables de manière nonlinéaire, elle est plus parcimonieuse que si elle dépend linéairement des paramètres.

Plus précisément, on montre que le nombre de paramètres, pour une précision donnée, croît exponen-tiellement avec le nombre de variables dans le cas des approximateurs linéaires par rapport à leursparamètres, alors qu’il croît linéairement avec ce nombre pour les approximateurs non linéaires parrapport à leurs paramètres. La parcimonie est donc d’autant plus importante que le nombre d’entréesdu modèle est grand : pour un modèle à 1 ou 2 entrées, on peut utiliser indifféremment un modèlelinéaire par rapport à ses paramètres (polynôme par exemple) ou un modèle non linéaire par rapport àses paramètres (réseau de neurones par exemple).

Page 11: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 111

Or, nous avons vu que la sortie des réseaux de neurones à fonction d’activation sigmoïde n’est pas linéairepar rapport aux poids du réseau, alors que la sortie des réseaux de RBF à centres et écarts-types fixés (oud’ondelettes à centres et dilatations fixés) est linéaire par rapport aux poids. De même, une approximationpar polynôme est linéaire par rapport aux coefficients des monômes. Ainsi, l’utilisation de neuronescachés à fonction d’activation sigmoïde permet une approximation plus parcimonieuse qu'une approxi-mation polynomiale, ou qu'une approximation par fonctions radiales à centres et écarts-types fixes, ouencore qu’une approximation par ondelettes à centres et dilatations fixés. Si, en revanche, on considèreque les centres et écarts-types des RBF gaussiennes (ou les centres et les dilatations des ondelettes) sontdes paramètres ajustables au même titre que les poids des connexions, il n’y a pas, à l’heure actuelle,d’avantage mathématiquement démontré à utiliser un type de neurones plutôt qu’un autre. En revanche,des arguments pratiques décisifs peuvent justifier une préférence : connaissances a priori sur le type denon-linéarité souhaitable, caractère localisé ou non de la fonction, rapidité de calcul, facilité d’initialisa-tion de l’apprentissage (voir chapitre 2, paragraphe « Initialisation des paramètres »), facilité de réalisa-tion en circuit spécialisé, etc.

Expliquons qualitativement l’origine de la parcimonie. Considérons un modèle linéaire par rapport à sesparamètres, un modèle polynomial par exemple :

g(x) = 4 + 2x + 4x2 – 0,5x3.

Le résultat g(x) du modèle est une combinaison linéaire des fonctions y = 1, y = x, y = x2, y = x3, avec lespoids w0 = 4, w1 = 2, w2 = 4, w3 = –0,5. Ces fonctions ont une forme qui est fixée une fois pour toutes.

Considérons à présent le modèle neuronal représenté sur la figure 1-8, dont l’équation est :

g(x) = 0,5 – 2 th(10x + 5) + 3 th(x + 0,25) – 2 th(3x – 0,25).

Le résultat de ce modèle est aussi une combinaison linéaire de fonctions (y= 1, y = th(10x + 5), y = th(x + 0,25), y = th(3x – 0,25)), mais la forme de cesfonctions dépend des valeurs des poids des connexions entre les entrées etles neurones cachés. Ainsi, au lieu de combiner des fonctions de formesfixes, on combine des fonctions dont la forme elle-même est ajustée par desparamètres. On comprend facilement que ces degrés de liberté supplémen-taires permettent de réaliser une fonction donnée avec un plus petit nombrede fonctions élémentaires, ce qui est précisément la définition de la parci-monie.

Figure 1-8. Un réseau de neurones non bouclé à une variable (donc deux entrées) et trois neurones cachés. Les nombres indiquent les valeurs des paramètres.

Un exemple élémentaire

Considérons la parabole d’équation

y = 16,71 x2 – 0,075.

Nous en prenons 20 échantillons régulièrement espacés, que nous utilisons pour effectuer un apprentis-sage supervisé d’un réseau à 2 neurones cachés (à fonction d’activation Arctg) représenté sur la figure 1-9(a).Un apprentissage à l’aide de l’algorithme de Levenberg-Marquardt (voir chapitre 2) fournit, en quelquesdizaines d’itérations, les paramètres indiqués sur la figure 1-9(a). La figure 1-9(b) représente les points del’ensemble d’apprentissage et la sortie du réseau, qui passe par ces points avec une excellente précision.La figure 1-9(c) représente les sorties des neurones cachés, dont la combinaison linéaire avec le biaisconstitue la sortie du réseau. La figure 1-9(d) montre les points d’un ensemble de test et la sortie duréseau : lorsque l’on s’éloigne du domaine d’apprentissage [–0,12, +0,12], la précision de l’approxima-

x 1

g

-2 3 -2 0,5

10 5 1 0,25 3 -0,250,25

Page 12: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones12

tion se dégrade, ce qui est normal. On notera la symétrie dans les valeurs des poids, qui reflète la symétriedu problème (simulation réalisée à l’aide du logiciel NeuroOne™ de NETRAL S.A.).

RemarqueBien entendu, approcher une parabole à une variable par un réseau de neurones ne présente aucun intérêt pratique, puisque la parabolea deux paramètres alors que le réseau de neurones en a sept ! La seule justification de cet exemple est que, étant mono-dimensionnel, ilpermet d’utiliser des représentations graphiques simples.

À quoi servent les réseaux de neurones non bouclés à apprentissage supervisé ? Modélisation statique et discrimination (classification)Les propriétés mathématiques décrites dans la section précédente sont fondamentales : elles donnent unebase solide aux applications des réseaux de neurones à apprentissage supervisé. Néanmoins, dans lapratique, il est rare que l’on cherche à réaliser une approximation uniforme d’une fonction connue.

Le plus souvent, le problème qui se pose à l’ingénieur est le suivant : il dispose d’un ensemble devariables mesurées {xk, k = 1 à N} et d’un ensemble de mesures {yp(xk), k = 1 à N} d’une grandeur zp rela-tive à un processus de nature quelconque (physique, chimique, économique, financier...). Il suppose qu’ilexiste une relation entre le vecteur des variables {x} et la grandeur zp, et il cherche à déterminer une formemathématique de cette relation, valable dans le domaine où les mesures ont été effectuées, sachant que (1)les mesures sont en nombre fini, et que (2) ces mesures sont certainement entachées de bruit. De plustoutes les variables qui déterminent zp ne sont pas forcément mesurées. En d’autres termes, l’ingénieur

0.05 0.1 0.15-0.15 -0.1 -0.05 0-0.1

-1 -0.5 0 0.5 1-8

-6

-4

-2

0

2

4

6

-1 -0.5 0 0.5 1-2

0

2

4

6

8

10

12

14

16

18

x

1 3 0 24

5 6

y Poids

0� -1,02

1� 2,73

2� 1,02

3� 2,73

4� 7,23

5� 4,58

6� - 4,57-0.05

0

0.05

0.1

0.15

(a)(b)

(c) (d)

1

Figure 1-9. Interpo-lation d’une para-bole par un réseau de neurones à 2 neurones cachés ; (a) réseau ; (b) points d’appren-tissage (croix) et sortie du réseau après apprentissage ; (c) sorties des deux neurones cachés (sigmoïdes) après apprentissage ; (d) points de test (croix) et sortie du réseau après apprentissage : l’approximation se dégrade en dehors de la zone d’apprentissage.

Page 13: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 113

cherche à établir un modèle du processus qu’il étudie, à partir des mesures dont il dispose, et d’ellesseules : on dit qu’il effectue une modélisation « boîte noire » . On notera que, dans le jargon des réseauxde neurones, les données à partir desquelles on cherche à construire le modèle s’appellent des exemples.Nous étudierons plus bas la modélisation « boîte noire » du comportement d’un processus (l’actionneurhydraulique d’un bras de robot) : l’ensemble de variables {x} est constitué d’une seule variable (l’angled’ouverture de la vanne d’admission d’huile) et la grandeur zp est la pression d’huile dans l’actionneur.Nous verrons également un exemple de prédiction de propriétés chimiques de molécules : on cherche unerelation déterministe entre une propriété des molécules (par exemple leurs points d’ébullition) et des« descripteurs » de ces molécules (masse molaire, nombre d’atomes, « volume », moment dipolaire,etc.) ; on peut ainsi prédire le point d’ébullition de molécules dont la synthèse n’a pas été effectuée. Lelecteur rencontrera dans cet ouvrage de nombreux cas de ce genre.

Les termes de « boîte noire » que nous venons d’introduire s’opposent aux termes de « modèle deconnaissance » ou « modèle de comportement interne », qui désignent un modèle mathématique établi àpartir d’une analyse physique (ou chimique, physico-chimique, économique, etc.) du processus que l’onétudie ; ce modèle peut contenir un nombre limité de paramètres ajustables, qui possèdent une significa-tion physique. Nous verrons plus bas que les réseaux de neurones peuvent être utilisés pour l’élaborationde modèles « boîtes grises », intermédiaires entre les modèles « boîtes noires » et les modèles de connais-sance.

En quoi la propriété d’approximation parcimonieuse des réseaux de neurones peut-elle être utile pourrésoudre le problème de la modélisation « boîte noire » ? Nous ne répondrons ici que très brièvement àcette question. Nous présenterons une réponse très détaillée dans le chapitre 2, qui présente une méthodo-logie de conception et de réalisation de modèles neuronaux, et dans le chapitre 3, qui propose, en complé-ment méthodologique, des techniques très utiles de réduction de la dimension des entrées des modèlesd’une part, et d’évaluation des performances et construction de modèles neuronaux d’autre part.

Modélisation statique

Considérons, pour simplifier, le cas d’un modèle à une seule variable x. Supposons que l’on puisse, pourchaque valeur de x, effectuer une infinité de mesures et en calculer la moyenne ; celle-ci n’est autre que lagrandeur zp recherchée ; elle est appelée « espérance mathématique » de yp pour la valeur x de la variable.Cette espérance mathématique est évidemment une fonction de x, appelée « fonction de régression » ; ornous savons que toute fonction (suffisamment régulière) peut être approchée par un réseau de neurones ;par conséquent, l’ingénieur peut espérer résoudre son problème de modélisation « boîte noire » en esti-mant les paramètres d’un réseau de neurones qui réalise une approximation de la fonction de régression,laquelle, rappelons-le, est inconnue.

Cette approximation ne sera pas une approximation uniforme telle que nous l’avons définie et illustréedans le paragraphe précédent. Pour des raisons qui seront expliquées en détail dans le chapitre 2, l’ingé-nieur cherchera plutôt une approximation au sens des moindres carrés, c’est-à-dire qu’il cherchera unefonction paramétrée g(x, w), réalisée, par exemple, à l’aide d’un réseau de neurones, pour laquelle la fonc-tion de coût des moindres carrés

est « minimum ». Rappelons que, dans cette relation, {xk, k = 1 à N} est un ensemble de mesures desvariables d’entrée, et yp(xk) est la valeur mesurée de la grandeur à modéliser, lorsque le vecteur d’entréevaut xk. L’apprentissage d’un réseau ayant un nombre donné de neurones cachés consiste donc, dans cecas, en une procédure de minimisation qui permet de trouver un vecteur de poids w0 satisfaisant.

J w =12

yp xk – g xk, w 2∑k = 1

N

Page 14: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones14

Cette procédure pose aussitôt deux questions, qui sont centrales dans la pratique des réseaux de neurones :

• comment, dans une famille de réseaux de neurones donnée, trouver celui qui minimise la fonction decoût des moindres carrés ?

• une fois que celui-ci a été trouvé, comment juger s’il est « satisfaisant » ?

Le lecteur trouvera dans cet ouvrage, notamment dans son chapitre 2, une méthodologie raisonnée qui luipermettra de résoudre ces problèmes.

Dans cette tâche, nous serons aidés par le fait que les deux questions que nous venons de mentionner nesont guère spécifiques aux réseaux de neurones : elles se posent depuis très longtemps, en des termespratiquement identiques, à tous ceux (ingénieurs, économistes, financiers, biologistes, et, bien entendu,statisticiens) qui cherchent, à partir de données, à extraire une information pertinente ([SEBER et al. 1989],[ANTONIADIS et al. 1992], [DRAPER et al. 1998]). En fait, le cheminement que nous venons de réaliser,depuis l’approximation de fonction jusqu’à l’estimation des paramètres d’une régression, est celui de toutstatisticien à la recherche d’un modèle : nous pourrons tirer largement profit de résultats établis, notam-ment dans le cadre de la régression linéaire, par ces derniers.

Résumons, à l’aide d’un exemple, les étapes que nous venons de décrire :

• lorsqu’on désire établir un modèle mathématique d’une dépendance entre des variables, on cherche àestimer la fonction de régression, c’est-à-dire la fonction que l’on obtiendrait si l’on pouvait faire, enchaque point, un nombre infini de mesures et en calculer la moyenne ; cette fonction de régression nepeut donc jamais être déterminée exactement ; la figure 1-10 représente un signal yp(x) que l’on voudraitmodéliser, c’est-à-dire pour lequel on voudrait obtenir la meilleure approximation possible de la fonc-tion de régression inconnue ;

Figure 1-10. Un signal que l’on voudrait modéliser

• on effectue un nombre fini de mesures, comme illustré sur la figure 1-11 ;

• un réseau de neurones tel que la fonction de coût des moindres carrés, c’est-à-dire la somme des carrésdes différences entre les valeurs calculées par le réseau et les valeurs mesurées (en nombre fini), soitaussi petite que possible, permet de trouver une approximation de la fonction de régression, commeindiqué sur la figure 1-12.

+ 1,20

+ 0,90

+ 0,60

+ 0,30

+ 0,00

- 0,30

+ 0,00 + 1,75 + 3,50 + 5,25 + 7,00 + 8,75 + 10,50 + 12,25 + 14,00

Page 15: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 115

Figure 1-11. La situation réelle dans laquelle se trouve l’ingénieur : il ne dispose que d’un nombre fini de mesures. Noter que, dans cet exemple, les points de mesure sont régulièrement espacés, mais cela n’est pas obligatoire.

Figure 1-12. Une approximation de la fonction de régression, réalisée par un réseau de neurones, à partir des points expéri-mentaux de la figure 1-11.

Ainsi, un réseau de neurones peut, à partir d’exemples, prévoir la valeur que peut prendre une grandeurqui dépend de plusieurs variables, pour des valeurs de ces variables qui ne font pas partie de la based’exemples utilisée pour calculer les coefficients du réseau. Dans le cas représenté sur la figure 1-12, leréseau permet de trouver des valeurs du signal pour des points qui se trouvent entre les points de mesure.Cette propriété est appelée « inférence statistique » par les statisticiens, et, dans le domaine des réseauxde neurones, sous le terme de « généralisation ». Il faut bien comprendre que cette généralisation est néan-moins limitée : elle ne peut pas s’étendre au-delà des limites de la région de l’espace des entrées danslaquelle se trouvent les exemples qui servent à l’apprentissage, comme illustré sur la figure 1-9. Leproblème de la qualité de la généralisation est largement abordé dans les chapitres de cet ouvrage.

+ 1,20

+ 0,90

+ 0,60

+ 0,30

+ 0,00

- 0,30

+ 0,00 + 1,75 + 3,50 + 5,25 + 7,00 + 8,75 + 10,50 + 12,25 + 14,00

+ 1,20

+ 0,90

+ 0,60

+ 0,30

+ 0,00

- 0,30

+ 0,00 + 1,75 + 3,50 + 5,25 + 7,00 + 8,75 + 10,50 + 12,25 + 14,00

Page 16: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones16

En quoi la parcimonie est-elle avantageuse ?

Dans ce contexte, en quoi la parcimonie des réseaux de neurones, sur laquelle nous avons insisté dans lasection précédente, est-elle un avantage ? Nous avons déjà mentionné le fait que la grande majorité desapplications des réseaux de neurones à apprentissage supervisé concerne la modélisation de processus :on ajuste les paramètres du réseau, au cours de l’apprentissage à partir d’exemples, pour que celui-cireproduise la relation non linéaire qui existe entre les entrées et les sorties. Or il est clair intuitivement quele nombre d’exemples nécessaires pour ajuster les paramètres de manière significative doit être granddevant le nombre de ces paramètres : on ne peut pas ajuster l’équation d’une droite avec un seul point, oul’équation d’un plan avec deux points. Les réseaux parcimonieux en paramètres sont donc égalementparcimonieux en nombre d’exemples ; or ceux-ci, très souvent, coûtent cher (notamment si ce sont desrésultats d’expériences sur un processus industriel), et leur collecte peut être longue (par exemple, si l’onveut modéliser un processus économique à partir d’indices publiés une fois par mois par l’INSEE).

L’avantage pratique des réseaux de neurones par rapport aux techniques classiques de modélisation nonlinéaire réside donc dans leur capacité à réaliser des modèles de précision équivalente avec moins dedonnées expérimentales (ou dans leur capacité à constituer des modèles plus précis à partir du mêmenombre d’exemples). De manière générale, les réseaux de neurones permettent de tirer le meilleur partides données numériques disponibles, pour construire des modèles à plusieurs entrées.

La figure 1-42 montre un exemple de parcimonie dans une application réelle : la prédiction d’un para-mètre thermodynamique d’un verre.

Classification (discrimination)

Classer un ensemble d’objets, c’est attribuer à chacun une classe (ou « catégorie ») parmi plusieursclasses définies à l’avance. Cette tâche est appelée « classification » ou « discrimination ». Un algorithmequi réalise automatiquement une classification est appelé classifieur.

Les statisticiens appellent aussi « classification » la tâche qui consiste à regrouper des données qui seressemblent dans des classes qui ne sont pas définies à l’avance, et nous avons vu que les réseaux deneurones à apprentissage non supervisé peuvent réaliser ce genre de tâches ; il y a donc une certaineconfusion dans les termes. Nous nous efforcerons toujours de préciser ce dont il s’agit, lorsque le contextene rend pas la distinction évidente. Dans tout ce paragraphe, nous nous plaçons dans le cas où les classessont connues à l’avance.

Les applications des classifieurs sont très nombreuses : dans le domaine de la reconnaissance des formes(chiffres et caractères manuscrits ou imprimés, images, parole, signaux temporels...), mais égalementdans bien d’autres domaines (économie, finance, sociologie, traitement du langage...). De manière géné-rale, nous désignerons sous le terme de « forme » n’importe quel objet décrit par un ensemble de nombres(« descripteurs ») : ainsi, une image pourra être décrite par l’ensemble des valeurs d’intensité de ses pixels(contraction de « picture elements » ou éléments d’image), un signal temporel par ses valeurs successivesau cours d’une période de temps définie, une entreprise par l’ensemble des éléments de son bilan, un textepar l’ensemble des mots importants qu’il contient, etc. Schématiquement, la question à laquelle un clas-sifieur doit apporter un élément de réponse est du type : le caractère inconnu est-il un a, un b, un c, etc. ?le signal observé est-il normal ou anormal ? l’entreprise examinée constitue-t-elle un excellent, très bon,bon, médiocre, mauvais, très mauvais, support d’investissement ? la dépêche d’agence reçue est-elle rela-tive à une prise de participation entre entreprises ? y aura-t-il demain une alerte à la pollution par l’ozone ?

Il faut noter que le classifieur n’est pas nécessairement conçu pour donner une réponse complète : il peutapporter seulement un élément de réponse. Il faut bien, en effet, distinguer l’aide à la décision et la déci-sion elle-même : un classifieur peut apporter une information qui aidera un être humain, ou un système

Page 17: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 117

automatique, à prendre une décision concernant l’appartenance de l’objet inconnu à telle ou telle classe.Historiquement, les premiers réseaux de neurones utilisés pour la classification étaient conçus pourfournir une décision. Grâce aux progrès accomplis dans la compréhension des propriétés fondamentalesdes réseaux de neurones, on sait à présent qu’ils peuvent donner une information beaucoup plus riche etfine qu’une simple décision binaire : ils peuvent estimer la probabilité d’appartenance de l’objet inconnuà chacune des classes, ce qui leur permet notamment de s’intégrer dans des systèmes de reconnaissancecomplexes qui utilisent plusieurs systèmes de classification différents, chacun d’eux fournissant une esti-mation de la probabilité d’appartenance de l’objet inconnu à chacune des classes. La décision finale estprise au vu de ces estimations, et en fonction, par exemple, des « spécialités » de chacun des classifieurs.

De même, dans le domaine de la « fouille de données » (data mining), une problématique de plus en plusfréquente est celle du « filtrage d’information » : trouver automatiquement, dans un corpus de données,les textes qui sont pertinents pour un thème donné, et présenter ces textes par ordre de probabilité de perti-nence décroissante, afin que l’utilisateur puisse faire un choix rapide parmi les documents qui lui sontprésentés. Là encore, il est indispensable que le classifieur ne se contente pas de donner une réponsebinaire (document pertinent ou non), mais bien qu’il détermine une probabilité d’appartenance à uneclasse. Les réseaux de neurones non bouclés sont bien adaptés à ce type de tâche, dont l’importance estde plus en plus évidente.

La section du présent chapitre intitulée « Réseaux de neurones à apprentissage supervisé etdiscrimination », et le chapitre 6 en entier, sont consacrés à la discrimination.

À quoi servent les réseaux de neurones à apprentissage non supervisé ? Analyse et visualisation de donnéesLes moyens modernes de traitement et de stockage de l’information permettent de disposer de trèsgrandes quantités d’informations, qu’elles soient numériques (traitements numériques intensifs de résul-tats expérimentaux) ou linguistiques (corpus de textes). Retrouver des informations dont on sait qu’ellesdoivent être présentes dans les données, mais dont on ne sait pas bien comment les extraire, devient unepréoccupation de plus en plus importante. Les progrès du graphisme des ordinateurs permet des représen-tations des données de plus en plus claires et conviviales, mais l’opérateur est incapable de visualiser clai-rement des données de haute dimensionnalité. Il est donc très important de disposer de techniques dereprésentations des données à basse dimension (typiquement 2) qui permettent de retrouver l’information« prégnante » dans les données. Les réseaux de neurones à apprentissage non supervisé offrent unensemble de techniques puissantes dans ce domaine, notamment les cartes auto-organisatrices.

Le chapitre 7 de cet ouvrage, entièrement consacré à l’apprentissage non supervisé, décrit en détail debelles applications, notamment en télédétection.

À quoi servent les réseaux de neurones bouclés à apprentissage supervisé ? Modélisation dynamique « boîte noire » et « semi-physique » ; commande de processusNous avons vu, dans le paragraphe consacré aux réseaux de neurones bouclés, que tout réseau de neuronesnon bouclé peut être mis sous une forme canonique, qui comprend un réseau de neurones non bouclés etdes bouclages (ou récurrences) externes à celui-ci. Les propriétés des réseaux de neurones bouclés àapprentissage supervisé sont donc directement liées à celles des réseaux non bouclés : de même que l’onmet en œuvre les réseaux de neurones non bouclés pour modéliser, de manière statique, des processus nonlinéaires qui peuvent être utilement décrits par des équations algébriques, de même il est intéressant demettre en œuvre des réseaux de neurones bouclés pour modéliser, de manière dynamique, des processus

Page 18: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones18

qui peuvent être utilement décrits par des équations récurrentes (ou équations aux différences). Une partiedu chapitre 2, et tout le chapitre 4, sont consacrés à la modélisation dynamique de processus.

Plusieurs motivations peuvent pousser l’ingénieur à concevoir un modèle dynamique :• utiliser le modèle comme « simulateur » pour prévoir l’évolution d’un processus dont la modélisation

de connaissance est trop complexe, ou dont il est possible d’écrire un modèle qui contient des équationstrop incertaines ou dont les paramètres sont trop mal connus ;

• utiliser le modèle comme simulateur d’un processus dont la modélisation de connaissance est possible,mais conduit à des équations différentielles, ou aux dérivées partielles, dont la résolution numérique estlourde et ne peut répondre à des contraintes de fonctionnement en temps réel : on peut alors créer unensemble d’apprentissage à partir du code de résolution des équations, et concevoir un réseau deneurones qui fournit de très bonnes solutions dans des temps de calcul beaucoup plus courts ; l’archi-tecture de ce réseau peut avantageusement être inspirée des équations différentielles du modèle deconnaissance : on conçoit alors un « modèle semi-physique » ou modèle « boîte grise » ;

• utiliser le modèle comme prédicteur à très court terme (une période d’échantillonnage) afin de l’intégrerà un système de commande.

La modélisation semi-physique

Il est très fréquent, notamment dans l’industrie manufacturière, que l’on dispose d’un modèle de connais-sance d’un procédé, mais que celui-ci ne soit pas satisfaisant ; il peut y avoir à cela plusieurs raisons :• le modèle peut être insuffisamment précis pour l’objectif que l’on s’est fixé : par exemple, si l’on désire

détecter une anomalie de fonctionnement en analysant la différence entre l’état du processus prévu parle modèle du fonctionnement normal et l’état réellement mesuré, il faut que le modèle de fonctionne-ment normal soit précis ;

• le modèle peut être précis, mais être trop complexe pour pouvoir être intégré numériquement en tempsréel (pour une application de surveillance ou de commande, par exemple).

Si l’on dispose de mesures, on peut alors légitimement décider d’avoir recours à un modèle « boîtenoire », non linéaire si nécessaire ; mais il serait néanmoins maladroit d’abandonner complètement toutesles connaissances accumulées lors de la conception du modèle, pour construire un autre modèle fondéuniquement sur les mesures. La modélisation semi-physique permet de réconcilier ces deux points de vue,en utilisant toutes les connaissances avérées dont on peut disposer sur le processus (sous réserve qu’ellessoient sous la forme d’équations algébriques ou différentielles) pour structurer le réseau et définir sonarchitecture. Nous présenterons plus bas un exemple d’application industrielle de la modélisation semi-physique ; la méthodologie de conception d’un tel modèle est décrite dans le chapitre 2.

La commande de processus

Commander un système, c’est lui imposer une dynamique de réponse à une sollicitation. S’il s’agit d’unasservissement, il faut imposer au système de rester dans un état déterminé quelles que soient les pertur-bations, mesurables ou non, auxquelles il est soumis : pour un système de commande de vitesse d’unevoiture (cruise control), il faut agir automatiquement sur l’accélérateur afin que la voiture conserve unevitesse constante égale à la vitesse de consigne, indépendamment de perturbations telles que bourrasquesde vent, changements de la pente de la route, etc. S’il s’agit d’un système de poursuite, il faut imposer ausystème de suivre une trajectoire de consigne : par exemple, dans un fermenteur, agir sur le système dechauffage pour que la température suive un profil temporel déterminé à l’avance, indépendamment de latempérature du four, de la température des ingrédients que l’on ajoute durant la fermentation, des réac-tions exo- ou endothermiques qui peuvent se produire, etc. Pour réaliser ces tâches, il faut généralementdisposer d’un modèle, qui, si les non-linéarités sont importantes, peut être un réseau de neurones. Lechapitre 5 est entièrement consacré à la commande de processus non linéaires.

Page 19: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 119

À quoi servent les réseaux de neurones bouclés sans apprentissage ? L’optimisation combinatoireLes utilisations des réseaux de neurones bouclés présentées dans la section précédente mettent à profit ladynamique forcée des modèles neuronaux, puisqu’il s’agit de modéliser la réponse d’un processus auxsignaux de commande qu’il reçoit. Il existe une autre classe d’applications des réseaux de neuronesbouclés, dans lesquels c’est au contraire la dynamique propre des modèles qui est mise à profit.

Il existe en effet des réseaux de neurones bouclés, constitués de neurones dont la fonction d’activation estun échelon (neurones de McCulloch et Pitts), dont la dynamique est caractérisée par l’existence de pointsfixes : si un tel réseau est placé dans un état initial, et qu’on le laisse évoluer spontanément, il aboutit, aubout d’un temps fini, dans un état stable (qui dépend de l’état de départ). Cet état (c’est-à-dire le vecteurdes sorties des neurones) étant binaire, il peut être considéré comme le code binaire d’une information.De plus, on montre qu’il existe une fonction de l’état, dite fonction d’énergie, ou fonction de Liapounov,qui décroît toujours pendant l’évolution libre du réseau ; les états stables de celui-ci sont donc des minimade cette fonction d’énergie.

On peut inverser le problème : supposons que l’on se pose un problème d’optimisation combinatoire,c’est-à-dire que l’on cherche le minimum (ou un « bon » minimum) d’une fonction, dite « fonction decoût », de variables binaires. S’il existe un réseau de neurones bouclé dont la fonction d’énergie estisomorphe de la fonction de coût que l’on cherche à minimiser, alors les points fixes de la dynamique dece réseau constituent des solutions au problème d’optimisation combinatoire que l’on cherche à résoudre.Si l’on peut construire un tel réseau, il peut alors trouver de lui-même, à partir d’un état initial quelconque,une solution au problème d’optimisation.

La mise en œuvre de cette idée nécessite donc• de trouver un réseau de neurones dont la fonction d’énergie soit isomorphe de la fonction de coût du

problème d’optimisation,• de déterminer les paramètres de ce réseau,• de maîtriser la dynamique de celui-ci pour qu’il trouve un « bon » minimum de la fonction de coût,

éventuellement en faisant appel à des techniques inspirées de la méthode du recuit simulé.

La mise en œuvre de cette technique puissante, et ses applications, font l’objet du chapitre 8 de cetouvrage.

Quand et comment mettre en œuvre des réseaux de neurones à apprentissage supervisé ?

Après avoir présenté les justifications théoriques de l’utilisation de réseaux de neurones, nous allons iciaborder les problèmes pratiques liés à leur mise en œuvre : nous rappellerons d’abord quand utiliser – etquand ne pas utiliser – les réseaux de neurones ; nous expliquerons brièvement ensuite comment il faut lesmettre en œuvre. Toutes les questions qui sont abordées ici sont approfondies dans les chapitres suivants.

Quand utiliser les réseaux de neurones ?Nous avons expliqué précédemment le fondement théorique de l’utilisation des réseaux de neurones àapprentissage supervisé : la propriété d’approcher, de manière parcimonieuse, toute fonction de régres-sion non linéaire suffisamment régulière.

Page 20: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones20

Il peut donc être avantageux de mettre en œuvre des réseaux de neurones pour toute application nécessi-tant de trouver, par des méthodes statistiques, une relation non linéaire entre des données numériques.

Sous quelles conditions peut-on utiliser une telle approche ?• Une première condition, nécessaire mais non suffisante : puisque les réseaux de neurones entrent dans

le cadre des méthodes statistiques, il faut disposer d’échantillons de taille suffisamment grande, et bienreprésentatifs.

• Une fois que ces données ont été recueillies, il faut s’assurer de l’intérêt réel d’un modèle non linéairepour l’application considérée : en effet, la mise en œuvre d’un modèle linéaire (ou affine) est toujoursplus simple, et moins coûteuse en temps de calcul, que celle d’un réseau de neurones. Par conséquent,en l’absence de toute connaissance a priori sur l’intérêt d’un modèle non linéaire, l’ingénieur doitd’abord utiliser les méthodes simples et éprouvées d’élaboration d’un modèle linéaire ; s’il s’avère quela précision du modèle est insuffisante bien que tous les facteurs pertinents soient présents dans lesentrées du modèle, alors le concepteur de modèle doit envisager la mise en œuvre de modèles nonlinéaires tels que les réseaux de neurones.

• Si les données sont disponibles, et si l’on s’est assuré qu’un modèle non linéaire est utile, il faut s’inter-roger sur l’opportunité d’utiliser un réseau de neurones de préférence à une autre famille de fonctionsnon linéaire, les polynômes par exemple. C’est ici qu’intervient la notion de parcimonie : comme nousl’avons vu plus haut, pour une précision donnée, le nombre de poids de la première couche deconnexions varie linéairement avec le nombre de variables, alors qu’il varie exponentiellement dans lecas, par exemple, d’une approximation polynomiale (il existe néanmoins des méthodes de sélection desmonômes qui permettent, dans une certaine mesure, d’éviter cette explosion combinatoire).Par conséquent, les réseaux de neurones, notamment à fonction d’activation sigmoïde, sont d’autantplus avantageux que le nombre de variables est « grand » ; dans la majorité des cas, « grand » signifie,en pratique et de manière empirique, supérieur ou égal à 3.

En résumé : si l’on dispose de données numériques suffisamment nombreuses et représentatives, il estgénéralement avantageux d’utiliser des réseaux de neurones dans toute application mettant en jeu l’esti-mation d’une fonction de régression non linéaire possédant au moins trois variables. Si le nombre devariables est supérieur ou égal à 3, il est généralement avantageux d’utiliser des réseaux de neurones àfonction d’activation sigmoïde ; dans le cas contraire, des réseaux de neurones utilisant des RBF à centreset écarts-types fixés, ou des ondelettes à centres et dilatations fixés, ou encore des polynômes, peuvent êtreaussi précises, et plus simples à mettre en œuvre.

Bien entendu, si les données ne sont pas numériques (mais linguistiques par exemple), les réseaux deneurones ne peuvent les traiter directement. Il faut avoir recours à des pré-traitements permettant de« quantifier » ces données (par exemple à l’aide de techniques issues de la théorie des ensembles flous).

Comment mettre en œuvre ces réseaux de neurones ?Les réseaux de neurones réalisent des fonctions non linéaires paramétrées ; ils peuvent approcher toutefonction de régression si l’on trouve un réseau de neurones qui rend minimum la fonction de coût desmoindres carrés (somme des carrés des différences entre les valeurs calculées par le réseau de neurones etles valeurs mesurées). La mise en œuvre d’un réseau de neurones nécessite donc• de déterminer les entrées pertinentes, c’est-à-dire les grandeurs qui ont une influence significative sur le

phénomène que l’on cherche à modéliser,• de collecter les données nécessaires à l’apprentissage et à l’évaluation des performances du réseau de

neurones,• de trouver le nombre de neurones cachés nécessaires pour obtenir une approximation satisfaisante,

Page 21: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 121

• d’estimer les valeurs des paramètres correspondant à un minimum de la fonction de coût, c’est-à-dired’effectuer un apprentissage,

• d’évaluer les performances du réseau de neurones à l’issue de l’apprentissage.

En fonction des résultats obtenus, il peut être nécessaire d’effectuer plusieurs itérations de tout ou partiede cette procédure.

Nous allons aborder successivement ces différents points.

Les entrées pertinentes

Le problème de la détermination des entrées pertinentes se pose de manière très différente selon les appli-cations envisagées.

Si le processus que l’on veut modéliser est un processus industriel conçu par des ingénieurs, le problèmeest important mais pas crucial, car, en général, on connaît bien les grandeurs qui interviennent et lesrelations causales entre celles-ci. Ainsi, dans un procédé de soudage par points, on fait fondre localementles deux tôles à souder en faisant passer un courant électrique très important (quelques kiloampères)pendant quelques millisecondes, entre deux électrodes qui exercent une pression mécanique sur les tôles(figure 1-13). La qualité de la soudure, qui est caractérisée par le diamètre de la zone fondue, dépendévidemment de l’intensité du courant, de la durée pendant laquelle il est appliqué, de l’effort exercé parles électrodes pendant le passage du courant et pendant la phase de solidification, de l’état de surface desélectrodes, de la nature des tôles, et de quelques autres facteurs qui ont été très largement étudiés en raisonde l’importance industrielle du procédé. On connaît donc la nature des entrées désirables pour un modèle ;il peut être néanmoins utile de faire un choix parmi ces grandeurs, en ne prenant en considération, enentrée du modèle, que celles qui agissent de manière très significative sur le processus (c’est-à-dire cellesdont l’effet est plus important que l’incertitude de la mesure).

En revanche, si le processus à modéliser est un processusnaturel complexe (écologique par exemple), ou unprocessus économique, social ou financier, la détermina-tion des entrées pertinentes peut être beaucoup plus déli-cate. Ainsi, si l’on veut prédire une propriété chimiqued’une molécule (cet exemple est décrit en détail plusbas), le choix des descripteurs pertinents n’est pasévident ; de même, pour déterminer la solvabilité d’unorganisme, ou la qualité d’une entreprise, il est trèsimportant de choisir des ratios appropriés pour décrire lasituation comptable, fiscale, commerciale, etc.

Ce problème (et, plus généralement, le problème de lasélection de modèle) n’est pas spécifique aux réseaux deneurones : il se pose pour toutes les techniques de modé-lisation, qu’elles soient linéaires ou non. Nous verrons,

dans le chapitre 2, qu’il est possible d’étendre aux réseaux de neurones des méthodes de sélection connuesdans le domaine de la modélisation linéaire.

La collecte des données

Nous avons vu que, pour pouvoir effectuer l’apprentissage, il faut disposer de données. Celles-ci doiventêtre en nombre suffisant, et être suffisamment représentatives des données qui seront présentées aumodèle lors de son utilisation. Lorsque la grandeur que l’on veut modéliser dépend de nombreux facteurs,

Transformateur

Figure 1-13. Schéma d’un processus industriel : le soudage par points

Page 22: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones22

c’est-à-dire lorsque le modèle possède de nombreuses entrées, il n’est pas possible de réaliser un« pavage » régulier dans tout le domaine de variation des entrées : il faut donc trouver une méthodepermettant de réaliser uniquement des expériences qui apportent une information significative pourl’apprentissage du modèle : il faut réaliser un « plan d’expériences ». Pour les modèles linéaires, l’élabo-ration des plans d’expériences est bien maîtrisée ; ce n’est pas le cas pour les modèles non linéaires. Nousprésenterons dans le chapitre 2, section « Élaboration de plans d’expériences », quelques éléments quipermettent de construire itérativement un plan d’expériences pour un modèle neuronal.

Le nombre de neurones cachés

L’écart entre l’approximation réalisée par un réseau de neurones et la fonction à approcher est inverse-ment proportionnel au nombre de neurones cachés [BARRON 1993] ; malheureusement, ce résultat,comme d’autres considérations théoriques telles que la dimension de Vapnik-Cervonenkis [VAPNIK 1995](introduite dans le chapitre 6) n’est pas constructif, en ce sens qu’il ne peut que donner des estimations,ou des bornes larges, du nombre de neurones cachés nécessaires. Il n’existe pas, à l’heure actuelle, derésultat théorique permettant de prévoir le nombre de neurones cachés nécessaires pour obtenir uneperformance spécifiée du modèle, compte tenu des données disponibles. Il faut donc nécessairementmettre en œuvre une procédure numérique de conception de modèle. Nous allons tout d’abord définir leproblème de la conception d’un modèle statique non linéaire « boîte noire » , et notamment (mais pasexclusivement), d’un réseau de neurones non bouclé.

■ La nécessité de la parcimonie

L’idée la plus naturelle consisterait à choisir le nombre de neurones cachés le plus grand possible, puisquec’est ce qui assure la plus grande précision à l’approximation uniforme d’une fonction. Ce serait oublierque le problème réel que l’on se pose n’est pas un problème d’approximation uniforme, mais un problèmed’ajustement d’une fonction à un nombre fini de points ; il faut donc, non seulement que la fonctionréalisée par le réseau de neurones passe « le plus près possible », au sens des moindres carrés, des pointsutilisés pour l’apprentissage (l’ensemble de ces points est appelé « ensemble d’apprentissage »), maiségalement qu’il soit capable de généraliser de manière satisfaisante. Si le réseau de neurones possède unnombre de paramètres excessif, en raison d’un nombre excessif de neurones cachés, sa sortie peut passeravec une très grande précision par tous les points d’apprentissage, mais fournir des résultats dépourvus designification entre ces points ; s’il possède un nombre de paramètres trop restreint, le modèle n’est passuffisamment riche pour rendre compte de la complexité de la fonction de régression inconnue. Cedilemme (appelé « dilemme biais-variance ») est le problème essentiel que doit affronter le concepteur demodèles : il résulte du fait que la modélisation « boîte noire » entre dans la catégorie des problèmes dits« mal posés », en ce sens qu’ils ne peuvent pas être résolus complètement en fonction des données donton dispose.

La figure 1-14 présente le résultat de l’apprentissage, à partir des mêmes points de mesure, de deuxréseaux à une couche cachée de neurones à fonction d’activation sigmoïde : à l’évidence, le réseau le plusparcimonieux en neurones cachés est celui qui présente les meilleures capacités de généralisation, tandisque le réseau qui a trop de paramètres conduit au phénomène classique de « surajustement » (en anglaisoverfitting). En pratique, on s’efforcera toujours de faire en sorte que le nombre de paramètres ajustablessoit petit devant le nombre d’exemples : la parcimonie intrinsèque aux réseaux de neurones à fonctiond’activation sigmoïde permet de réaliser cette condition plus facilement que si l’on utilise une méthode derégression multilinéaire par exemple.

Si, au vu des résultats portés sur la figure 1-14, le choix entre les deux réseaux est évident, il n’en va pasde même lorsque le modèle possède plusieurs entrées, car il n’est alors pas possible de représenter graphi-quement le résultat de manière aussi simple. Il faut donc trouver un critère global de jugement des perfor-

Page 23: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 123

mances du réseau. Pour ce faire, il convient de constituer, outre l’ensemble d’apprentissage utilisé pour lecalcul des poids du réseau, un ensemble de test, constitué de données différentes de celles de l’ensembled’apprentissage, à partir duquel on estime les performances du réseau après un apprentissage. L’indice deperformance le plus fréquemment utilisé est l’erreur quadratique moyenne commise sur l’ensemble detest (ou ensemble d’estimation des performances), désignée par EQMT :

où NT est le nombre d’éléments de l’ensemble de test, et où, pour simplifier les notations, nous désignonspar yk les sorties mesurées du processus à modéliser (nous nous plaçons ici, pour simplifier, dans le cas –très fréquent – d’un réseau de neurones à une sortie ; si le réseau a plusieurs sorties, l’EQMP est la sommedes écarts quadratiques moyens relatifs à chacune des sorties) : yk = yp(xk).

Cette grandeur doit être comparée à l’erreur quadratique moyenne commise sur l’ensemble d’apprentis-sage (EQMA) :

où NA est le nombre d’exemples de l’ensemble d’apprentissage.

En effet, on voit sur l’exemple présenté sur la figure 1-14, que l’EQMA du second réseau est certainementinférieure à celle du premier, mais que son EQMP est certainement supérieure à celle du premier. Estimer

EQMT =1NT

yk – g xk, w 2∑k = 1

NT

EQMA =1NA

yk – g xk, w 2∑k = 1

NA

,

+ 1,20

+ 0,90

+ 0,60

+ 0,30

+ 0,00

- 0,30

+ 0,00 + 1,75 + 3,50 + 5,25 + 7,00 + 8,75 + 10,50 + 12,25 + 14,00

+ 1,20

+ 0,90

+ 0,60

+ 0,30

+ 0,00

- 0,30

+ 0,00 + 1,75 + 3,50 + 5,25 + 7,00 + 8,75 + 10,50 + 12,25 + 14,00

8 neurones cachés(25 poids)

4 neurones cachés(13 poids)

Figure 1-14. Toutes choses égales par ailleurs, le réseau de neurones le plus parcimonieux possède les meilleures propriétés de généralisation.

Page 24: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones24

les performances d’un modèle sur la base de sa seule EQMA serait donc erroné et conduirait systémati-quement à concevoir des modèles possédant trop de paramètres, donc souffrant de surajustement.

Remarquons que si la modélisation était parfaite, c’est-à-dire si la sortie du modèle g(x, w) était identiqueà la fonction de régression, et si le nombre d’éléments des ensembles d’apprentissage et de test était trèsgrand, l’EQMA et l’EQMP seraient égales, et de l’ordre de grandeur de l’écart-type du bruit de mesure.L’objectif de la modélisation peut donc s’exprimer de la manière suivante : trouver le modèle (parexemple le réseau de neurones non bouclé) le plus parcimonieux possible, tel que l’erreur quadratiquemoyenne sur l’ensemble d'apprentissage et l’erreur quadratique moyenne sur l’ensemble de test soient dumême ordre de grandeur, et aussi petites que possible, c’est-à-dire de l’ordre de grandeur de l’écart-typedu bruit.

■ Comment faire en pratique ?

L’objectif de cet ouvrage est de présenter des méthodologies pratiques, mais bien fondées théoriquement,pour concevoir des modèles, que ce soit par apprentissage supervisé ou non supervisé. Pour l’apprentis-sage supervisé, le lecteur trouvera une méthodologie complète dans le chapitre 2 (et des complémentsdans le chapitre 3), et, pour l’apprentissage non supervisé, dans le chapitre 7.

L’apprentissage des réseaux de neurones non bouclés : un problème d’optimisation

Une fois que le nombre de neurones cachés est défini, on doit procéder à l’apprentissage, c’est-à-dire àl’estimation des paramètres du réseau de neurones qui, avec le nombre de neurones cachés dont il dispose,permet d’obtenir une erreur quadratique minimum sur les points de l’ensemble d’apprentissage.L’apprentissage est donc un problème numérique d’optimisation.

Considérons, pour simplifier, un réseau de neurones à une sortie g(x, w). On dispose d’un ensemble d’appren-tissage comprenant N exemples. Nous avons défini plus haut la fonction de coût des moindres carrés :

où xk désigne le vecteur des valeurs des variables pour l’exemple k, yp(xk) la valeur de la mesure corres-pondante, w désigne le vecteur des poids du réseau de neurones, et g(xk, w) est la valeur calculée par leréseau de neurones muni des poids w pour le vecteur xk de variables. La fonction de coût est donc unefonction de tous les paramètres ajustables w de tous les neurones et de toutes les connexions du réseau.L’apprentissage consiste donc à trouver l’ensemble des paramètres w qui rendent J(w) « minimum ».• Si l’on met en œuvre des réseaux dont la sortie est linéaire par rapport aux paramètres (par exemple des

fonctions radiales gaussiennes dont les centres et écarts-types sont fixés) la fonction de coût J estquadratique par rapport aux paramètres : on peut alors utiliser les techniques, simples et bien connues,des moindres carrés ordinaires. Leur simplicité et leur rapidité de calcul se paient néanmoins de deuxmanières : d’une part, la qualité du résultat dépend essentiellement du choix des centres et des écarts-types des fonctions non linéaires mises en œuvre ; ce choix est loin d’être simple. D’autre part, cesréseaux n’ont pas la propriété de parcimonie.

• Si, en revanche, on met en œuvre des réseaux de neurones dont la sortie n’est pas linéaire par rapportaux paramètres, tels que des perceptrons multicouche ou les RBF à centres et écarts-types variables, ondoit résoudre un problème d’optimisation non linéaire multivariable. Les méthodes utilisées à cet effetseront exposées en détail dans le chapitre 2. Il s’agit de techniques itératives, qui, à partir d’un réseaumuni de poids dont les valeurs sont aléatoires, modifient ces paramètres jusqu’à ce qu’un minimum dela fonction de coût soit atteint, ou qu’un critère d’arrêt soit satisfait.

J w =12

yp xk – g xk, w 2∑k = 1

N

Page 25: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 125

Ces techniques sont toutes des méthodes de gradient : elles sont fondées sur le calcul, à chaque itération,du gradient de la fonction de coût par rapport aux paramètres, gradient qui est ensuite utilisé pour calculerune modification de ceux-ci. Le calcul du gradient peut être effectué de diverses manières ; il en est une,appelée rétropropagation (voir chapitre 2), qui est généralement plus économe que les autres en termesde nombres d’opérations arithmétiques à effectuer pour évaluer le gradient. Contrairement à une idée troprépandue, la rétropropagation n’est pas un algorithme d’apprentissage : c’est simplement une techniqued’évaluation du gradient de la fonction de coût, qui est fréquemment, mais pas obligatoirement, utiliséeau sein d’algorithmes d’apprentissage. Il faut noter que, contrairement à bien des affirmations, ce n’est pasl’invention de la rétropropagation qui a permis l’apprentissage des réseaux de neurones à couches ; eneffet, les spécialistes de traitement du signal connaissaient, bien avant la rétropropagation, des méthodesd’évaluation du gradient d’une fonction de coût quadratique, méthodes qui auraient pu être mises enœuvre pour effectuer l’apprentissage de réseaux [MARCOS et al. 1992].

(a) (b)

(c) (d)

0

- 2

- 1,5

- 1

- 0,5

- 0

0,5

1

1,5

2

- 2

- 1,5

- 1

- 0,5

- 0

0,5

1

1,5

2

3020100 40 50 3020100 40 50

(a)

- 2

- 1,5

- 1

- 0,5

- 0

0,5

1

1,5

2

3020100 40 50

(c)

- 2

- 1,5

- 1

- 0,5

- 0

0,5

1

1,5

2

3020100 40 50

(d)

(b)

0

Figure 1-15. Apprentissage d’un réseau de neurones à une variable et 3 neurones cachés. Le trait continu repré-sente la sortie du réseau de neurones. Initialement, la sortie du réseau est pratique-ment nulle. Elle évolue au cours de l’apprentis-sage : (a) état initial ; (b) après une itération ; (c) après 6 itérations ; (d) après 13 itérations (reproduit avec l’autorisation de NETRAL S.A.).

Page 26: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones26

Ces algorithmes d’apprentissage ont fait d’énorme progrès au cours des dernières années. Alors que, audébut des années 1990, les publications faisaient état de dizaines ou de centaines de milliers d’itérations,représentant des journées de calcul sur des ordinateurs puissants, les nombres d’itérations typiques àl’heure actuelle sont de l’ordre de quelques dizaines à quelques centaines. La figure 1-15 montre le dérou-lement de l’apprentissage d’un modèle à une variable. Les croix représentent les mesures de l’ensembled’apprentissage. Initialement, on donne aux poids du réseau des valeurs « petites » (nous expliqueronsprécisément ce que cela signifie dans le chapitre 2, paragraphe « Initialisation des paramètres »), si bienque la sortie du réseau est quasi nulle. Le résultat obtenu au bout de 13 itérations est satisfaisant« visuellement » ; quantitativement, l’EQMA et l’EQMP (cette dernière étant mesurée sur un ensemblede points non représentés sur la figure) sont du même ordre de grandeur, et de l’ordre de l’écart-type dubruit, de sorte que le modèle est satisfaisant.

ConclusionDans ce paragraphe, nous avons expliqué quand et comment utiliser les réseaux de neurones. Rappelonsque l’utilisation des réseaux de neurones peut être avantageuse chaque fois que l’on cherche à établir unerelation non linéaire entre des données numériques. Les réseaux de neurones entrent donc dans le cadredes méthodes statistiques, notamment de la régression non linéaire. Nous avons présenté une vue généralede la mise en œuvre de ces méthodes, en insistant sur les conditions qui doivent être remplies pour qu’unréseau de neurones donne des résultats satisfaisants. Les techniques d’apprentissage proprement dites,dont l’efficacité conditionne en grande partie les performances des réseaux, seront abordées en détail dansle chapitre 2.

Réseaux de neurones à apprentissage supervisé et discrimination (classification)Le lecteur qui n’aurait abordé les réseaux de neurones que par l’intermédiaire de revues ou d’ouvrages devulgarisation pourrait avoir l’impression qu’ils sont avant tout des outils de classification pour la recon-naissance des formes, et s’étonner de l’importance que nous donnons ici à la régression non linéaire. Eneffet, les premières applications industrielles des réseaux de neurones étaient relatives à la reconnaissancede formes ou de signaux. Nous allons donc consacrer le paragraphe suivant à une présentation de ce qu’estun problème de classification ; nous montrerons que tout problème de classification peut se ramener à unproblème très voisin de celui de la régression non linéaire : c’est ce qui justifie l’utilisation de réseaux deneurones comme classifieurs. L’objectif de cette section est seulement de présenter le problème de la clas-sification et le lien avec les notions développées dans les paragraphes précédents. Le lecteur trouvera uneprésentation beaucoup plus détaillée dans le chapitre 6 de cet ouvrage.

Nous utiliserons ici indifféremment le terme de « classification » ou celui de « discrimination ».

Qu’est-ce qu’un problème de classification ?Comme nous l’avons indiqué plus haut, classer un ensemble d’objets, c’est attribuer à chacun une classe(ou « catégorie ») parmi plusieurs classes définies à l’avance. Un algorithme qui réalise automatiquementune classification est appelé classifieur.

Avant de considérer le cas des classifieurs neuronaux, il est important de bien comprendre les caractéristi-ques générales des problèmes de classification. Considérons pour cela un exemple : pour une application detri automatique, on désire discriminer, dans une image, des condensateurs et des circuits intégrés qui défilent

Page 27: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 127

devant une caméra, afin qu’un bras de robot puisse saisir un condensateur ou un circuit intégré pour le placerdans le réceptacle correspondant. En gros, les condensateurs apparaissent comme des rectangles plutôt petitset brillants, alors que les circuits intégrés sont des rectangles plutôt grands et sombres.

On peut donc considérer que l’aire A et la réflectivité R des rectanglesconstituent des facteurs discriminants pour le problème posé :chaque objet sera ainsi caractérisé par 2 descripteurs. Supposons quel’on ait prélevé des échantillons de circuits intégrés et de condensa-teurs, et que l’on en ait mesuré l’aire et la réflectivité : on peut repré-senter chaque échantillon par un point dans un espace à deux dimen-sions, comme indiqué sur la figure 1-16. Nous allons utiliser cetexemple pour introduire les idées de base de la classification.

Figure 1-16. Chaque échantillon est représenté par un point dans le plan réflectivité-aire. Les condensateurs sont repré-sentés par des ‘x’ et les circuits intégrés par des ‘+’.

Quand est-il opportun d’utiliser un classifieur statistique tel qu’un réseau de neurones ?Les ingrédients d’un problème de classification sont donc :• une population de N objets,• n variables descriptives (ou descripteurs) qui permettent de décrire les objets, l’ensemble des descrip-

teurs constituant la représentation des objets,• un ensemble de C classes dans lesquelles on cherche à ranger les individus (une des classes peut être une

classe de rejet à laquelle appartiennent tous les objets que l’on ne peut attribuer à aucune autre classe).

Résoudre un problème de classification, c’est donc trouver une application de l’ensemble des objets àclasser dans l’ensemble des classes. L’algorithme ou la procédure qui réalise cette application est appeléclassifieur.

Lorsque l’on se pose un problème de classification, il faut d’abord analyser le type de méthode qu’ilconvient de mettre en œuvre pour le résoudre. En effet, les réseaux de neurones et, plus généralement, lesclassifieurs statistiques, ne sont pas forcément adaptés au problème, et il y a bien d’autres méthodes declassification que les réseaux de neurones. Afin de délimiter le domaine d’utilisation des réseaux deneurones en classification, considérons quelques exemples plus ou moins académiques, qui illustrentplusieurs aspects de cette tâche. Pour chacun des exemples, nous nous poserons trois questions :• les connaissances a priori sur le problème permettent-elles de déterminer simplement des descripteurs

pertinents ?• ces descripteurs sont-ils mesurables (ou calculables à partir de mesures) ?• quel est le rôle de la classe de rejet ?

Les exemples suivants sont extraits de [STOPPIGLIA 1997].

Chacun a eu l’occasion d’utiliser un distributeur de tickets de métro, ou une barrière de péage de parking,qui reconnaît les pièces de monnaie utilisées en paiement, et rejette les pièces fausses ou étrangères.Considérons ce problème sous l’angle des trois questions ci-dessus :• il est facile de déterminer des descripteurs pertinents : le diamètre de la pièce, son poids, son épaisseur,

la composition de l’alliage, etc. ; ces descripteurs sont en petit nombre ; les nouvelles pièces de monnaiesont conçues de manière à faciliter la discrimination ;

• les descripteurs sont des grandeurs physiques mesurables ;• la classe de rejet peut être aussi grande que l’on veut : elle n’est limitée que par la patience des usagers

qui n’aiment pas voir leurs pièces rejetées sans raison ; ainsi, dans l’espace des descripteurs, les classes

+

x

Aire

Réf

lect

ivit é

Un condensateur

Un circuit intégré

Page 28: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones28

sont de petits « parallélépipèdes » délimités par les seuils de tolérance qui tiennent compte de la varia-bilité de la fabrication et des erreurs de mesure ; tout le reste de l’espace constitue la classe de rejet.

Dans ces conditions, il est facile de concevoir un automate qui met en œuvre des règles simples portantsur les descripteurs des pièces à classer. Ces règles résultent d’une analyse du problème, effectuée par lesconcepteurs de la machine, qui a conduit à un arbre de décision implanté dans l’automate. Dans un tel cas,l’utilisation d’une méthode statistique de classification supervisée telle que les réseaux de neurones n’estpas appropriée.

Considérons à présent l’évaluation du confort d’une voiture. Pour prévoir les réactions des clients poten-tiels à la mise sur le marché d’un nouveau modèle, les constructeurs automobiles ont recours à des« panels » d’individus, supposés représentatifs de la clientèle, qui doivent émettre un jugement sur leconfort. Mais qu’est-ce que le confort ? C’est une notion complexe dans laquelle interviennent la qualitéde la suspension, la conception des sièges, l’insonorisation du véhicule, la visibilité, etc. Exprimer unjugement (classer le confort du véhicule dans une des trois classes « bon », « moyen », « insuffisant ») estalors un processus impossible à formaliser, fondé sur des impressions plus que sur des mesures. Ceproblème a donc les caractéristiques suivantes :• les descripteurs ne sont pas forcément tous connus et exprimés clairement par les membres des panels ;

même si les descripteurs sont bien définis, les jugements sont très variables : deux personnes placéesdans les mêmes conditions peuvent émettre des jugements différents,

• les descripteurs ne sont pas forcément mesurables,• il n’y a pas de classe de rejet : un consommateur a forcément une opinion sur le confort de sa voiture.

Le fait que les descripteurs ne soient pas connus et pas nécessairement mesurables empêche (ou rend trèsdifficile) l’utilisation d’une méthode de classification statistique. Dans ce contexte, une méthode de clas-sification floue serait mieux adaptée.

La reconnaissance automatique des chiffres manuscrits, par exemple des codes postaux, a fait l’objet denombreuses études et réalisations. Considérons ce problème sous les mêmes angles que les deux exem-ples précédents :• contrairement au cas du tri des pièces de monnaie, la variabilité des styles d’écriture pose un problème

majeur pour le choix des descripteurs ; néanmoins, contrairement au cas de l’évaluation du confort, lespersonnes qui savent lire donnent généralement des réponses identiques pour une image de chiffredonnée (sauf si le chiffre est vraiment mal écrit) ;

• les descripteurs sont des nombres que l’on peut extraire de l’image : dans le cas d’une description de basniveau, c’est l’intensité des pixels ; dans le cas d’une description de haut niveau, c’est le nombre deboucles, de pointes, leur position, l’orientation et la position des segments, etc. ;

• la taille de la classe de rejet constitue un critère de performance : pour un taux d’erreur donné, le pour-centage de rejet doit être aussi faible que possible. En effet, toute enveloppe rejetée nécessite l’interven-tion d’un préposé, et il est plus coûteux d’envoyer une lettre dans une mauvaise direction que d’avoirrecours à une intervention humaine. Le cahier des charges est donc exprimé de la manière suivante :pour un taux d’erreur donné (par exemple 1 %), on veut un taux de rejet aussi faible que possible. Eneffet, il serait facile de concevoir un classifieur qui ne se trompe jamais : il suffirait qu’il ne prennejamais de décision. Compte tenu des données économiques du problème que nous considérons ici, unbon classifieur est un classifieur qui prend une décision le plus souvent possible, tout en ne se trompantpas plus d’une fois sur cent. Si les conditions économiques étaient inversées, c’est-à-dire si une erreurcoûtait moins cher que l’intervention d’un expert, le critère de qualité serait différent : on chercherait àobtenir le taux d’erreur le plus petit possible pour un taux de rejet donné (c’est le cas pour les diagnos-tics médicaux automatisés à l’échelle de toute une population, où l’intervention d’un médecin coûteplus cher qu’une erreur de diagnostic...).

Page 29: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 129

Dans ces conditions, la mise en œuvre d’une méthode statistique telle que les réseaux de neurone estopportune, sous réserve que l’on dispose d’une base de données suffisamment fournie. Le problèmecentral est celui du choix de la représentation des données. C’est d’ailleurs le cas dans la majorité desproblèmes de classification non académiques : la réflexion du concepteur, jointe aux techniques de pré-traitement des données décrites dans le chapitre 3, est, dans la majorité des cas, aussi importante quel’algorithme de classification lui-même.

Classification probabiliste et formule de BayesSupposons donc qu’une analyse préalable du problème ait conduit au choix de la mise en œuvre d’uneméthode statistique de classification, de préférence à un arbre de décision par exemple. Les méthodes declassification probabiliste reposent sur l’idée que l’on peut traiter les descripteurs et les classes commes’il s’agissait de variables aléatoires (le lecteur qui n’est pas familier avec la notion de variable aléatoiretrouvera les définitions utiles au début du chapitre 2). Ainsi, si l’on tire au hasard un objet parmi ceux quel’on veut reconnaître, la classe à laquelle il appartient est une réalisation d’une variable aléatoire dont lavaleur est le numéro de la classe (c’est donc une variable discrète). De même, les valeurs des descripteursd’un objet que l’on tire au hasard peuvent aussi être considérées comme les réalisations de variables aléa-toires (ce sont en général des variables continues). Dans l’exemple de la discrimination entre condensa-teurs et circuits intégrés (figure 1-16), on peut décider que la variable aléatoire « classe » vaut zéro pourun condensateur et 1 pour un circuit intégré. La réflectivité R et l’aire A peuvent être considérées commedes variables aléatoires continues.

Dans ce cadre, le problème de la classification s’exprime de façon très simple : étant donné un objetnouveau, dont la réflectivité vaut r et l’aire a (aux erreurs de mesure près), quelle est la probabilité pourque la variable aléatoire « classe » soit égale à zéro (c’est-à-dire pour que l’objet soit un condensateur) ?Cette probabilité est la probabilité a posteriori de la classe « condensateur » pour l’objet inconnu consi-déré, notée

Pr(classe = 0 {r , a}).

Considérons un échantillon de condensateurs et de circuits intégrés ; on connaît la classe, et la valeur desdescripteurs, de chaque élément de cet échantillon. On peut les utiliser pour estimer deux grandeurs trèsimportantes :• la probabilité a priori de chaque classe : un élément tiré au hasard dans l’échantillon a une certaine

probabilité d’appartenir à l’une ou l’autre classe ; on note Pr(Ci) la probabilité de tirer au hasard unéchantillon de la classe Ci ; elle est appelée probabilité a priori de la classe Ci. Si l’on suppose que toutobjet appartient nécessairement à l’une des classes (il n’y a pas de « non-formes »), on a évidemment

Cette information est pertinente pour la classification : en effet, supposons que l’on sache que la proba-bilité a priori de la classe « condensateur » est de 0,9, et donc la probabilité a priori de la classe « circuitintégré » est de 0,1 ; alors, un classifieur « stupide » qui déciderait toujours que l’objet est un conden-sateur, quelles que soient son aire et sa réflectivité, ne se tromperait, en moyenne, que dans 10 % descas.

• la densité de probabilité conditionnelle de chaque descripteur: si l’on tire au hasard un circuit intégré,quelle est la probabilité pour que son aire A ait pour valeur a ± δa, où δa est un petit intervalle ? Cetteprobabilité est évidemment proportionnelle à δa. De manière générale, on note p(a Ci) la densité deprobabilité de a conditionnelle à la classe Ci, ou vraisemblance de la classe Ci, étant donné le descripteura : par définition, la probabilité pour que le descripteur A ait pour valeur a ± δa sachant qu’il appartient à

Ci∑i

= 1.

Page 30: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones30

la classe Ci vaut p(a Ci) δa. Puisque l’objet dont on mesure le descripteur A appartient certainement à laclasse Ci, on a p(a Ci) da = 1.

La figure 1-17 représente une estimation de la densité deprobabilité p(a Classe = « circuit intégré ») en fonctionde a. Bien entendu, on pourrait de même tracer une esti-mation de la densité de probabilité conditionnelle de laréflectivité R, pour la classe « circuit intégré », en fonctionde r.

On peut donc disposer, à partir d’un échantillon des objetsà classer, d’estimations des probabilités a priori desclasses {Pr(Ci)}, et des densités de probabilité condition-nelles des descripteurs p(x Ci). Alors, la formule de Bayesfournit la solution du problème de classification, c’est-à-dire la probabilité a posteriori d’appartenance d’un objet àchaque classe, en fonction des estimations précédentes :

Bien entendu, cette estimation n’est correcte que si lesdescripteurs de l’objet inconnu obéissent aux mêmesdensités de probabilité conditionnelles que celles deséchantillons qui ont servi à les estimer. C’est en ce sensque l’échantillonnage doit être représentatif de l’ensembledes objets à classer.

Notons que :• si les probabilités a priori sont égales, les probabilités a posteriori sont indépendantes des probabilités

a priori, de sorte que la classification repose entièrement sur les vraisemblances des classes ;• si les vraisemblances des classes sont égales, c’est-à-dire si les descripteurs choisis ne sont absolument

pas discriminants, la classification est fondée entièrement sur les probabilités a priori.

Néanmoins, aussi élégante que soit la formulation « bayésienne » des problèmes de classification, elle seheurte à une difficulté pratique majeure : l’estimation des quantités qui apparaissent dans le membre dedroite. Une bonne estimation des probabilités a priori des classes Pr(Ci) peut généralement être obtenuefacilement, par simple dénombrement permettant d’estimer les fréquences d’apparition de chaque classedans l’échantillon. En revanche, l’estimation des densités de probabilité conditionnelles p(x Ci) se heurteau problème connu sous le nom de malédiction de la dimension. En effet, rappelons que, en général, laquantité x est un vecteur de descripteurs : sa dimension peut être grande. Or il est très difficile d’estimerles densités de probabilité dès que la dimension du problème devient importante : en effet, la taille del’échantillon nécessaire croît de façon exponentielle avec le nombre de descripteurs. Lorsque l’on utiliseune représentation des formes très primitive, le nombre de descripteurs peut être très grand : c’est le caspar exemple si une image est décrite par l’intensité de ses pixels, car la dimension du vecteur x est alorségale au nombre de pixels de l’image... Comme nous allons le voir, les réseaux de neurones offrent unealternative intéressante aux méthodes bayésiennes de classification, car elles permettent une estimationdirecte des probabilités a posteriori, sans passer par l’intermédiaire des probabilités a priori et des vrai-semblances.

+ +

+ + +

+ +

+

+ +

+

+ + +

Aire

Réf

lect

ivit é

+ + +

+ +

+ + + +

+ + + + + + + + + + +

clas

se =

circ

uit i

ntég

pa

Aire a

(a)

(b)

Figure 1-17. (a) Représentation d'un échantillon de la classe des circuits intégrés dans le plan réflectivité-aire. (b) Estimation de la densité de probabilité conditionnelle de l’aire de l’objet si celui-ci appartient à la classe des circuits intégrés.

Pr Ci x =p x Ci Pr Ci

p x Ci Pr Ci∑j

Page 31: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

C

HAPITRE

1

31

Considérons un exemple d’application de la formule de Bayes : supposons que la distribution des tailles desfemmes dans la population française suive une loi gaussienne de moyenne 1,65 m et d’écart-type 0,16 m :

et que celle des hommes soit une gaussienne de moyenne 1,75 m et d’écart-type 0,15 m :

Ces densités de probabilité sont représentées sur lafigure 1-18. Le recouvrement important de ces deuxgaussiennes montre que le descripteur choisi estpeu discriminant. S’il s’agissait d’un problème réel,ces courbes suggéreraient au concepteur de semettre à la recherche d’un autre descripteur (ou deplusieurs autres descripteurs).

Supposons également qu’il y ait autant d’hommes quede femmes dans la population considérée. Étant donnéun individu de cette population qui mesure 1,60 m,quelle est la probabilité pour que ce soit une femme ?La formule de Bayes fournit directement la réponse :

Bien entendu, Pr(

H

1,60) = 40 %.

Compte tenu de ces résultats, il est natureld’affecter l’individu en question à la classe

F

, qui ala plus grande probabilité : c’est une application dela

règle de décision de Bayes

,

que nous justifieronsplus bas. La frontière entre classes ainsi définie estreprésentée sur la figure 1-19.

Les probabilités

a priori

étant supposées égalespour les deux classes, la discrimination reposeentièrement sur les vraisemblances des classes.

Supposons à présent que l’individu observé soitchoisi au hasard dans les tribunes d’un stade fran-çais au cours d’un match de football. Alors les vrai-semblances des classes «

homme

» et «

femme

»,compte tenu de la taille, sont les mêmes que précé-demment, mais les probabilités

a priori

sont diffé-rentes, car il y a généralement plus d’hommes quede femmes parmi les spectateurs d’un match ;supposons que les proportions soient de 30 % defemmes et 70 % d’hommes. Alors les probabilités

aposteriori

, calculées par la formule de Bayes avec les nouvelles probabilités

a priori

, deviennentPr(

F

1,60) = 39 % et Pr(

H

1,60) = 61 %. Les résultats ont donc complètement changé : l’individu est à

p t F =1

0,16 2πexp –

12

t – 1,650,16

2

p t H =1

0,15 2πexp –

12

t – 1,750,15

2

.

1.5 1.6 1.7 1.8 1.9 2 2.10

0.5

1

1.5

2

2.5

Taille (en m)

Hommes

Femmes

Figure 1-18. Densités de probabilité des tailles pour les individus de la population considérée

Pr F 1,60 =0,5 p 1,60 F

0,5 p 1,60 F + 0,5 p 1,60 H≈ 60 %.

1.5 1.6 1.7 1.8 1.9 2 2.10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Taille (en m)

Hommes

Femmes

Seuil de classificationdonnée par la règle de Bayes

Figure 1-19. Probabilités a posteriori d’appartenance aux classes « homme » et « femme » en fonction de la taille, et frontière entre classes, lorsque l’individu est tiré de l’ensemble de la population française.

Page 32: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones

32

présent classé dans la classe des hommes si l’on utilise la même règle que précédemment (affecter l’objetà la classe la plus probable) ; le changement observé est important parce que les vraisemblances desclasses sont peu différentes (le descripteur «

taille

» est peu discriminant), si bien que la classification est

déterminée, en grande partie, par les probabilités

a priori

. Ce résultat est illustré sur la figure 1-20.

Cet exemple simple montre l’utilisation de laformule de Bayes pour estimer les probabilités

aposteriori

,

qui servent ensuite à prendre la décisiond’affectation à une classe, objectif final de toutsystème de classification.

Rappelons que, dans la pratique, et contrairement àce que nous venons de présenter, les vraisemblanceset les probabilités

a priori

ne sont pas connues

exac-tement

et exprimables

analytiquement

, mais fontl’objet d’une

estimation

à partir d’un ensembled’observations

O

,

de taille finie.

En toute rigueur, lavraisemblance devrait donc être notée

p

(

x

C

i

,

O

) etles probabilités

a posteriori

devraient être notéesPr(

C

i

x

,

O

) car leur estimation dépend de

O

. Nousn’utiliserons pas cette notation en raison de sa lour-deur, mais il faut toujours garder à l’esprit le fait que,dans la pratique, les densités de probabilité ou lesprobabilités que nous estimons sont toujours condi-tionnées par l’ensemble des observations utilisé pources estimations.

Règle de décision de Bayes

Pour affecter un objet à une classe, on minimise le risque d’erreur en prenant la décision d’affecter l’objetà la classe dont la probabilité a posteriori est la plus grande.

Pour justifier cette règle, considérons le cas d’un problème à deux classes

C

1

et

C

2

, et un descripteur. Il estévident que la probabilité d’erreur de classification est d’autant plus grande que le descripteur de l’objetconsidéré est plus proche de la frontière entre les classes. Mais, au cours de l’utilisation du classifieur,celui-ci est amené à traiter des objets décrits par toutes les valeurs possibles de

x

: nous cherchons donc àminimiser la probabilité d’erreur globale plutôt que la probabilité d’erreur locale : il faut donc trouver la

règle de décision qui rend minimale la quantité

E

désigne l’événement

«

erreur de classification

». La densité de probabilité

p

(

x

) étant positive, l’intégrale est minimale siPr(

E

x

) est minimale pour toute valeur du descripteur : on minimise donc l’erreur globale en minimisantl’erreur locale. Or Pr(

E

x

) n’est rien d’autre que la probabilité

a posteriori

de

C

1

si l’on prend la décisiond’affecter l’objet à

C

2

, et la probabilité

a posteriori

de

C

2

si l’on prend la décision d’affecter l’objet à

C

1

.On minimise donc Pr(

E

x) en prenant la décision d’affecter l’objet à la classe de plus grande probabilité.

Ce raisonnement se traduit géométriquement de la manière suivante (figure 1-21) : si l’on utilise la règlede Bayes, la probabilité d’erreur est représentée par l’aire grisée : tout autre choix de frontière a pourconséquence d’augmenter cette aire.

Le résultat s’étend aisément au cas où il y a plus de deux classes et où l’objet est décrit par un vecteur dedescripteurs.

1.5 1.6 1.7 1.8 1.9 2 2.10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Taille (en m)

Femmes

Hommes

Limite de classification donnée par la règle de Bayes

Figure 1-20. Probabilités a posteriori d’appartenance aux classes « homme » et « femme » en fonction de la taille, et frontière entre classes, lorsque l’individu est tiré de l’ensemble des spectateurs d’un match de football.

Pr (E) = Pr E x p(x) dx– ∞

+ ∞

Page 33: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 133

Naturellement, ce choix est satisfaisantsi les coûts des erreurs des deux classessont les mêmes ; néanmoins, il peut êtreplus grave, ou plus coûteux, decommettre une erreur de type « fauxpositif » (on considère que l’objet estdans la classe A alors qu’il est dans laclasse B) que de commettre une erreurde type « faux négatif » (on considèreque l’objet est dans la classe B alors qu’ilest dans A). Par exemple, en fouille dedonnées, une entreprise qui commercia-lise des filtres d’informations peutpréférer proposer à ses clients un filtrequi rejette des documents alors qu’ils

sont pertinents pour le sujet considéré, plutôt qu’un filtre qui laisse passer des documents non pertinents (eneffet, l’utilisateur s’aperçoit tout de suite que le filtre lui présente des documents non pertinents, alors qu’il nes’apercevra peut-être jamais que tel ou tel document pertinent lui a échappé...). Ce type de considération, dansla pratique, représente une part importante du travail de conception d’un système de classification réaliste, qu’ils’agisse de reconnaissance de formes, de fouilles de données, d’applications bancaires, etc. Voilà pourquoi il esttrès important d’estimer les probabilités avant de prendre la décision, et il faut éviter, sauf dans des cas trèssimples, de concevoir des classifieurs qui prennent directement une décision.

La combinaison de la formule de Bayes et de la règle de décision de Bayes constitue le classifieur deBayes, qui présente la meilleure performance possible si les probabilités a priori et les vraisemblancessont connues exactement. Comme, dans la pratique, il est rare que cette condition soit remplie, le classi-fieur de Bayes présente un intérêt plus théorique que pratique. Il peut néanmoins servir de référencelorsque l’on cherche à évaluer la qualité d’un classifieur : on peut appliquer celui-ci à un problème fictifpour lequel les probabilités a priori et les vraisemblances sont connues exactement, et comparer sesperformances à celle du classifieur de Bayes sur ce même problème. C’est ce que nous ferons dans la suitepour les classifieurs que nous présenterons ; nous introduisons ici le problème fictif qui nous servira àtester quelques classifieurs.

Ce problème porte sur des objetspouvant appartenir à deux classes,décrits par un descripteur ; leséléments de la classe A sont engendréspar une distribution qui est la sommede deux gaussiennes ; ceux de laclasse B sont engendrés par une distri-bution uniforme dans un intervalleborné (figure 1-22). On peut donccalculer analytiquement les probabi-lités a posteriori (figure 1-23), etdéterminer les limites de chaqueclasse (figure 1-24). Pour estimer letaux d’erreur, on réalise un grandnombre d’exemples de chaque classeet l’on compte la proportion de ces

Descripteur x

Erreur de classification

Autre frontièreFrontière deBayes

Pr(C1 x) p(x) = Pr(C1) p(x C1) Pr(C2 x) p(x) = Pr(C2) p(x C2)

– 5– 10– 15 0 + 5 + 10

Classe A Classe B

0

0,5

1

– 15 – 10 – 5 0 + 5

Figure 1-22. Densités de probabilité pour les classes A et B

Figure 1-23. Probabilité a posteriori de la classe A, calculée par la formulede Bayes

Figure 1-21. Interprétation géométrique de la règle de décision de Bayes ; la surface grisée représente la probabilité de commettre une erreur en choisissant la règle de décision de Bayes ; la surface hachurée correspond à l’augmentation de la probabilité d’erreur résultant d’un choix de frontière différent.

Page 34: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones34

réalisations qui se trouve « du mauvais côté »des limites déterminées par le classifieur deBayes ; dans cet exemple, on dispose de 600exemples pour chaque classe (figure 1-25), àpartir desquels, par simple dénombrement,

on estime le taux d’erreur à 30,1 %. Ainsi, on peut affirmer que, pour ce problème, aucun classifieur, aussi bienconçu soit-il, ne peut réaliser une performance meilleure que 69,9 % de classification correcte ; le meilleur clas-sifieur réel est celui qui s’approche le plus de cette limite théorique.

Classification et régressionAyant établi les bases probabilistes de la classification, nous allons montrer à présent en quoi les réseauxde neurones, dont nous avons vu qu’ils sont des outils de modélisation avantageux en raison de leur capa-cité à approcher toute fonction de régression non linéaire, peuvent être pertinents pour la classification.

Problème à deux classes

Considérons tout d’abord un problème à deux classes C1 et C2, auxquelles nous associons une variable aléa-toire Γ, fonction du vecteur de descripteurs x ; cette variable aléatoire vaut 1 lorsque l’objet à classer appar-tient à la classe A, et 0 dans le cas contraire. Nous allons démontrer le résultat suivant : la fonction de régres-sion de la variable aléatoire Γ est la probabilité a posteriori d’appartenance de l’objet à la classe A.

En effet, soit y(x) la fonction de régression recherchée, c’est-à-dire l’espérance mathématique de Γ étantdonné x : . Or

ce qui démontre le résultat.

Figure 1-26. Estimation de la probabilité a posteriori d’appartenance à la classe C1, et détermination du seuil de décision par la règle de Bayes

Or, comme cela a été vu plus haut, sil’on dispose d’échantillons d’unefonction, il est possible d’estimer larégression, par exemple à l’aide deréseaux de neurones. Il est doncpossible d’estimer, à l’aide desmêmes outils, les probabilités a poste-riori d’appartenance aux classes,comme illustré par la figure 1-26.

– 15 – 10 – 5 0 + 5

A B A B A

Figure 1-24. Classification réalisée par le classifieur de Bayes

+ 0,00

– 10,00– 15,00 – 5,00 + 0,00 + 5,00 + 10,00

Répartition des 1 200 exemples

600 exemples (B)

600 exemples (A)

Figure 1-25. Exemples utilisés pour l’estimation du taux d’erreur. En haut : classe A ; en bas : classe B.

y x = E Γ x

E Γ x = Pr Γ = 1 x × 1 + Pr Γ = 0 × 0 = Pr Γ = 1 x

0

Estimation de la probabilité a posteriori d’appartenance de la forme décrite par le descripteur de valeur x1 à la classe C1

0

x

1

x 1

Frontière entreles classes

0.5

0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Classe C1 Classe C2

Pr

(C1

| x)

Page 35: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 135

Comme les réseaux de neurones sont de bons candidats pour réaliser une approximation de toute fonction derégression, ils peuvent notamment réaliser une estimation des probabilités a posteriori : c’est ce qui justifiel’utilisation de réseaux de neurones pour la classification. On trouvera une exposition lucide et détaillée decette approche dans l’excellent ouvrage de Christopher Bishop [BISHOP 1995].

Problème à C classes

Lorsque le problème de classification est un problème à plus de deux classes, plusieurs approches sontpossibles :• résoudre globalement le problème en estimant simultanément, pour un objet donné, ses probabilités

d’appartenance a posteriori aux différentes classes,• diviser le problème en sous-problèmes à deux classes, concevoir un ensemble de « classifieurs deux à

deux », et combiner les résultats de ces derniers pour estimer les probabilités a posteriori globales.

Nous allons examiner successivement ces deux approches.

■ Approche globale

Cette approche est fréquemment mise en œuvre, bien qu’elle nesoit pas toujours la plus efficace pour des problèmes difficiles. Elleconsiste à utiliser un réseau de neurones à C sorties (figure 1-27),le résultat étant codé à l’aide d’un code 1-parmi-C : à l’événement« l’objet appartient à la classe Ci » est associé un vecteur de sortieg dont seule la composante i est égale à 1, les autres composantesétant égales à 0. De manière analogue au cas à deux classes, ondémontre facilement que l’espérance mathématique de chacunedes composantes est égale à la probabilité a posteriori de la classecorrespondante.

Figure 1-27. Perceptron multicouche à C sorties à fonction d’activation sigmoïde

TerminologieDans le jargon des réseaux de neurones, un codage « un-parmi-C » est appelé « codage grand-mère ». Cette appellation provient de laneurobiologie : une des théories de la représentation des informations dans les systèmes nerveux soutient que certains de nos neuronessont spécialisés dans la reconnaissance de formes usuelles, notamment du visage de notre grand-mère.

Il convient de noter plusieurs différences pratiques entre un perceptron multicouche pour la classificationet un perceptron multicouche pour la modélisation statique :• contrairement aux réseaux pour la modélisation, dont les neurones de sortie sont linéaires, les neurones

de sortie d’un réseau pour la classification ont une fonction d’activation sigmoïde : en effet, les sorties,étant des probabilités, doivent être comprises entre 0 et 1 (un changement de variable simple ramène lessorties à –1 et +1, comme il convient pour une non-linéarité en tangente hyperbolique) ; on trouveradans le chapitre 6 une justification théorique à l’utilisation de la tangente hyperbolique comme fonctiond’activation des neurones de sortie pour la classification ;

• pour la classification, il est plus naturel, pour estimer les probabilités, de minimiser la fonction de coûtd’entropie croisée plutôt que la fonction de coût des moindres carrés ([HOPFIELD 1987], [BAUM et al.1988], [HAMPSHIRE et al. 1990]) ; les algorithmes d’apprentissage qui seront présentés dans le chapitre2 s’appliquent sans difficulté pour cette fonction de coût :

x 1 x 2 x 3 x n

Descripteurs

.....

....

....

C neurones à fonction d’activation sigmoïde

J = – γik Log

gi xk

γik

+ 1 – γik Log

1 – gi xk

1 – γik∑

i = 1

C

∑k

Page 36: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones36

où γik est la valeur (0 ou 1) désirée pour la sortie i lorsque l’on présente à l’entrée l’exemple k, décrit par

le vecteur de descripteurs xk, et gi(xk) est la valeur de la sortie i du classifieur. On montre que cette fonc-tion est minimum lorsque tous les exemples sont correctement classés.

Bien entendu, il convientde vérifier que la sommedes sorties vaut 1 à la finde l’apprentissage. Laméthode Softmax permetde garantir que cettecondition est automatique-ment remplie [BRIDLE etal. 1990]. Cette difficulténe se présente évidemmentpas si l’on utilise unensemble de classifieurs« deux à deux », commenous le verrons dans lasection suivante.

Il va de soi que le problèmedu surapprentissage, quenous avons rencontré pourla régression, existe aussipour la discrimination : sile réseau a trop de paramè-tres, il s’ajuste trop fine-ment aux exemples del’ensemble d’apprentissageet donne de mauvais résul-tats en généralisation. Ilfaut donc mettre en œuvre,pour sélectionner lemeilleur modèle, les tech-niques de validation croiséeexposées dans le chapitre 2.Essentiellement, il faut

trouver un réseau dont les taux d’erreurs de classification sur l’ensemble d’apprentissage et sur unensemble de validation soient du même ordre de grandeur, et les plus petits possibles. La figure 1-28montre un exemple de surapprentissage dans l’estimation de la probabilité d’appartenance à la classe Apour l’exemple présenté sur la figure 1-23 ; on voit que le réseau à 4 neurones cachés est trop peucomplexe pour estimer correctement la probabilité, alors qu’un réseau à 6 neurones cachés s’ajuste sur lesfluctuations de la densité des points utilisés pour l’apprentissage. Pour le réseau à 5 neurones cachés, letaux de classification incorrecte, estimé sur un ensemble de validation de plusieurs milliers de points, estde 30,3 %, alors que, comme nous l’avons vu plus haut, le classifieur théorique de Bayes donne une erreur« minimum » de 30,1 %. On vérifie bien ici que les réseaux de neurones peuvent approcher les meilleuresperformances possibles.

– 10,00– 15,00 – 5,00 + 0,00 + 5,00 + 10,00

– 10,00– 15,00 – 5,00 + 0,00 + 5,00 + 10,00

+ 0,50

+ 1,00

+ 0,00

+ 0,50

+ 1,00

+ 0,00

+ 0,50

+ 1,00

+ 0,00

Classification : Théorique Estimée avec 4 neurones caches

Classification : Théorique Estimée avec 5 neurones caches

Classification : Théorique Estimée avec 6 neurones caches

(a)

(b)

(c)

– 10,00– 15,00 – 5,00 + 0,00 + 5,00 + 10,00

Figure 1-28. Estimation des probabilités d’appartenance à la classe A avec trois architectures : (a) 4 neurones cachés (complexité insuffisante), (b) 5 neurones cachés (performance très proche de la meilleure performance théorique, (c) 6 neurones cachés (surapprentissage manifeste).

Page 37: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 137

■ Classification « 2 à 2 »

Il est souvent beaucoup plus sûr, pour des problèmes difficiles, de décomposer une classification à Cclasses en C(C-1)/2 problèmes de classification à 2 classes, pour les raisons suivantes :• on peut bénéficier de nombreux résultats et algorithmes, notamment concernant la séparation linéaire

entre classes ; ces éléments sont largement développés dans le chapitre 6 ; nous les introduisons trèsbrièvement dans le paragraphe suivant, intitulé « séparabilité linéaire » ;

• on obtient des réseaux beaucoup plus petits, dont l’apprentissage est court et la manipulation simple ;chacun d’eux ayant une seule sortie, son interprétation comme une probabilité est immédiate ;

• les descripteurs pertinents pour séparer la classe A de la classe B ne sont pas nécessairement les mêmesque ceux qui sont utiles pour discriminer la classe A de la classe C ; notamment en reconnaissance deformes, le fait de ne pas utiliser tous les descripteurs, mais seulement ceux qui sont utiles, constitue unavantage considérable ; les techniques de sélection des entrées qui seront expliquées dans le chapitre 2sont directement utilisables.

Une fois que les C(C-1)/2 probabilités des classes deux à deux ont été estimées, éventuellement par desimples réseaux sans couche cachée, la probabilité pour qu’un objet décrit par le vecteur de descripteursx appartienne à la classe Ci est calculée par la relation [PRICE et al. 1994] :

où C est le nombre de classes et Prij est la probabilité d’appartenance de l’objet à la classe i ou à la classej, estimée par le réseau de neurones qui sépare la classe Ci de la classe Cj.

■ La séparabilité linéaire

Deux ensembles d’objets, décrits dans un espace de N descripteurs, appartenant à deux classes diffé-rentes, sont dits « linéairement séparables » s’ils se trouvent de part et d’autre d’un hyperplan dansl’espace des descripteurs.

Si des exemples sont linéairement séparables, un réseau de neurones à un seul neurone (également appelé« perceptron » peut les séparer. Rappelons en effet que la sortie d’un neurone possédant n entrées a pour

équation . Cette fonction varie entre –1 et +1 ; pour interpréter la sortie y comme une proba-

bilité P, il suffit donc de faire le changement de variable P = (y + 1)/2. Si l’on utilise la règle de décisionde Bayes, l’équation de la surface de séparation entre les classes est le lieu des points où P = 0,5, soity = 0. L’équation de la surface de séparation entre les classes déterminée par le neurone est donc :

On a donc v > 0 pour tous les exemples d’une des classes, et v < 0 pour tousles exemples de l’autre. Dans un espace à deux dimensions, cette surface estune droite ; dans un espace à trois dimensions, c’est un plan ; dans un espacede plus grande dimension, on l’appelle un « hyperplan ». La figure 1-29montre, dans l’exemple des condensateurs et des circuits intégrés, une surfacede séparation susceptible d’être définie par un réseau à un neurone.

Figure 1-29. Séparation linéaire par un réseau à 1 neurone. 10 % des exemples sont mal classés.

Pr Ci |x =1

1Prij

∑j=1, j ≠ i

C

– (C – 2)

y = th wi xi∑i = 1

n

v = wi xi∑i = 1

n

= 0.

Aire

x

++

+++

++

+

++

+

x

x

x

++ +

Réf

lect

ivit é

+++

++

+++

+++++

+

x

xxxxxx

xx

+ +

+ +

++++ +

++

+ +xx

xx

x

++x

Surface de séparation plausible

xx

++

Page 38: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones38

L’introduction de neurones cachés permet de définir des surfaces deséparation plus complexes, comme celle représentée sur la figure 1-30.

Figure 1-30. Séparation par un réseau ayant un petit nombre de neurones cachés. Trois exemples de chaque classe sont mal classés.

Bien entendu, si l’on ajoute suffisamment de neurones cachés, on peutréduire l’erreur sur l’ensemble d’apprentissage, au détriment de laqualité de la généralisation. La figure 1-31 présente un cas manifeste desurajustement.

Figure 1-31. Séparation par un réseau de neurones trop complexe. Tous les exemples sont bien classés, mais la capacité de généralisation est faible.

Lorsque l’on décompose le problème en sous-problèmes de séparationde classes deux à deux, il apparaît que la séparation linéaire entre deuxclasses présente très souvent une complexité suffisante ; il est mêmefréquent que, dans des problèmes multi-classe réputés « difficiles », les

exemples soient, en fait linéairement séparables si l’on considère les classes deux à deux. Or, dans ce derniercas, des algorithmes simples et élégants permettent de trouver une très bonne solution, comme expliqué endétail dans le chapitre 6 : la première étape, dans la conception d’un classifieur, est donc de chercher à savoirsi les classes sont séparables deux à deux. L’algorithme de Ho et Kashyap [HO et al. 1965], largement anté-rieur aux réseaux de neurones, fournit rapidement une réponse à cette question :• si les classes sont linéairement séparables, l’algorithme converge en un nombre fini d’itérations vers une

solution,• si les classes ne sont pas linéairement séparables, l’algorithme l’indique également après un nombre fini

d’itérations (voir les compléments théoriques et algorithmiques à la fin de ce chapitre).

Par exemple, pour la base de données de codes postaux fournie par le National Institute of Standards andTechnology, qui a servi de support à de très nombreux travaux, les classes de chiffres sont linéairementséparables deux à deux, même si l’on utilise une représentation par pixels [KNERR et al. 1992] ! De même,il existe une base de données, relative à des signaux sonar, qui a fait l’objet de très nombreuses études eta donné lieu à la conception de nombreux classifieurs fort compliqués ; en moins de dix minutes de calculsur PC, l’algorithme de Ho et Kashyap, implanté dans un programme Matlab non compilé, montre que lesexemples des deux classes sont linéairement séparables. Il est donc tout à fait inutile, pour cette applica-tion, de concevoir un classifieur plus complexe qu’un réseau à un neurone ; nous retrouverons cette appli-cation dans le chapitre 6.

Méthodologie de conception d’un classifieur

Ces considérations conduisent à définir la stratégie suivante pour la conception d’un classifieur qui utilisedes réseaux de neurones (il faut donc préalablement s’assurer que le problème posé relève bien d’un trai-tement statistique, comme nous l’avons discuté plus haut) :• élaborer une bonne représentation des objets à classer, notamment dans des applications de reconnais-

sance de formes (on utilisera avec profit, si nécessaire, les techniques décrites dans le chapitre 3) ; cetteétape est d’une extrême importance et conditionne toute la suite, car une représentation bien discrimi-nante peut rendre le problème de classification trivial ; ce point est illustré dans les applications décritesplus bas ;

x

++

+++

++

+

++

+

x

x

x

++ +

Réf

lect

ivit é

++

+

++

+++

+++++

+

x

xxxxxx

xx

+ +

+ +

++++ +

++

+ +xx

xx

x

++x

Surface de séparationplausible

x

x++

Aire

x

++

+++

++

+

++

+

x

x

x

++ +

Réf

lect

ivit é

++

+

++

+++

+++++

+

x

xxxxxx

xx

+ +

+ +

++++ +

++

+ +xx

xx

x

++x

Surface de séparationtrès peu plausible

x

x++

Aire

Page 39: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 139

• pour chaque paire de classes, effectuer la sélection des descripteurs selon les méthodes décrites dans lechapitre 2 ; en effet, il n’est pas du tout certain que les mêmes descripteurs soient utiles pour séparer lesclasses A et B et pour séparer les classes A et C ;

• pour chaque paire de classes, tester la séparabilité linéaire des classes deux à deux à l’aide de l’algo-rithme de Ho et Kashyap ;

• pour toutes les classes séparables deux à deux, mettre en œuvre les méthodes de séparation linéaire(décrites dans le chapitre 6), et obtenir une estimation des probabilités ;

• pour les classes non linéairement séparables, mettre en œuvre de petits perceptrons multicouche, ou desperceptrons sphériques décrits dans le chapitre 6, avec estimation des probabilités ; mettre en œuvre desméthodes de validation croisée ou de leave-one-out (voir chapitres 2 et 3) pour la sélection de modèles ;

• estimer la probabilité d’appartenance à chaque classe à partir des probabilités déterminées à l’étapeprécédente, selon la formule indiquée plus haut dans la section « Classification 2 à 2 » ;

• fixer les seuils de décision pour définir les classes de rejet.

Cette stratégie constitue une variante de la procédure STEPNET ([KNERR et al. 1990] [KNERR 1991]), quia été utilisée efficacement dans plusieurs applications industrielles.

Dans la planification d’un tel projet, il ne faut pas sous-estimer le temps nécessaire pour la première etpour la dernière étape : dans les applications réelles non triviales, ce sont fréquemment les deux étapes lesplus longues, qui peuvent éventuellement remettre en cause les résultats obtenus dans d’autres étapes.

L’application de cette stratégie est évidemment limitée par le fait que le nombre de classifieurs varie commele carré du nombre de classes. Néanmoins, chacun des classifieurs est très simple, de sorte que cettedémarche s’applique sans difficulté jusqu’à quelques dizaines de classes, ce qui couvre l’immense majoritédes applications. Si le nombre de classes est plus élevé, il faut avoir recours à des stratégies hiérarchiques.

Quelques exemples d’applications des réseaux de neurones à divers domaines des sciences de l’ingénieur

IntroductionL’ambition de cet ouvrage est d’aider l’ingénieur ou le chercheur à répondre à la question : les réseaux deneurones peuvent-ils m’aider à résoudre mon problème, et peuvent-ils le faire mieux que d’autres techniques ?

Pour donner les premiers éléments de réponse raisonnés à cette question, nous avons consacré le début dece chapitre à l’exposé du contexte mathématique qui est essentiel pour comprendre ce que sont réellementles réseaux de neurones et les principes sur lesquels repose leur mise en œuvre. Certains aspects peuventparaître un peu « techniques », mais il est important d’avoir bien compris ces bases. En effet, la simplicitémême de mise en œuvre des réseaux de neurones constitue un danger, car elle peut conduire à une appli-cation irréfléchie qui conduit à des performances médiocres ou mauvaises. Les réponses aux questionsque se pose tout ingénieur qui envisage d’utiliser des réseaux de neurones peuvent également être éclai-

Attention

Si le nombre d’exemples n’est pas grand devant la dimension du vecteur d’entrée dans la représenta-tion choisie, il est inutile d’aller plus loin, en vertu du théorème de Cover [COVER 1965] qui estprésenté dans le chapitre 6 : il faut chercher une représentation plus « compacte », ou bien collecterd’autres exemples, ou encore adopter une méthode de régularisation sévère telle que la modération despoids (weight decay, technique décrite dans le chapitre 2), avant de passer aux étapes suivantes ;

Page 40: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones40

rées par l’exposé de quelques applications typiques. Bien entendu, il n’est pas question ici de faire unexposé exhaustif des applications des réseaux de neurones : plusieurs livres n’y suffiraient pas. Il s’agitplutôt de montrer quelques applications ayant un caractère exemplaire, en insistant sur les raisons pourlesquelles les réseaux de neurones ont un apport important, voire décisif.

Une application en reconnaissance de formes : la lecture automatique de codes postauxC’est sans doute dans le domaine de la reconnaissance de caractères que les réseaux de neurones ontacquis leurs lettres de noblesse, et ont prouvé qu’ils constituent des alternatives fiables à d’autresméthodes de classification. Nous citerons ici quelques exemples et résultats, qui s’appuient sur les consi-dérations pratiques données dans le paragraphe consacré aux réseaux de neurones pour la classification.

La reconnaissance automatique de codes postaux a probablement été l’un des problèmes de reconnais-sance d’images les plus étudiés. En effet, si le traitement automatique du courrier à adresse dactylogra-phiée ou imprimée est relativement simple, celui du courrier à adresse manuscrite est beaucoup pluscomplexe, en raison de la variabilité des styles d’écriture. Pour chaque objet postal, une machine automa-tique doit, soit identifier le code, soit indiquer qu’elle ne peut pas l’identifier, et donc faire appel à unopérateur humain. Nous avons indiqué plus haut qu’il est plus onéreux de rectifier une erreur de tricommise par une machine que de faire lire un code postal par un opérateur, de sorte que le critère deperformance le plus fréquemment utilisé pour les machines de lecture de codes postaux est le suivant :pour un taux d’erreur maximum fixé (par exemple 1 %) sur les codes identifiés, quelle est la fraction ducourrier qui devra être traitée par un opérateur ? À l’heure actuelle, les machines les plus performantesfont appel à des réseaux de neurones (conjointement à d’autres techniques), et le taux de rejet est inférieurà 5 % pour un taux d’erreur de 1 %.

L’essor des études sur la reconnaissance des codes postaux est dû à deux facteurs : d’une part, l’enjeu écono-mique du problème ; d’autre part, le fait que, dès 1990, des bases de données de grande taille ont été misesdans le domaine public par le Service postal des États-Unis (USPS), puis par le National Institute of Scienceand Technology (NIST). Cette disponibilité de bases de données, accessibles à tous, a permis à de nombreuxlaboratoires, universitaires et industriels, de valider, de manière statistiquement significative, les méthodes etprocédures qu’ils avaient développées. Cette politique a permis de faire progresser l’état de l’art sur la recon-naissance des codes postaux, et, de manière plus générale, sur les problèmes de classification complexes. Lafigure 1-32 présente quelques extraits de la base USPS, qui comprend en tout 9000 caractères (ce qui estencore relativement peu, eu égard à la complexité du problème). On observe immédiatement la diversité desstyles et les difficultés auxquelles il faut faire face. Considérons l’exemple du code postal situé en haut àdroite de l’image (encadré) : on lit sans effort le code 68544, mais on constate• que le chiffre 6 est coupé en deux morceaux,• que le 8 et le 5 sont attachés,• mais que le 5 est coupé en deux, et sa partie droite attachée au 4 !

Donc, si l’on fonde la reconnaissance du code sur la reconnaissance de chacun de ses chiffres séparément,il faut d’abord résoudre le problème de la « segmentation » : comment séparer les chiffres les uns desautres ? Une fois ce difficile problème résolu, il reste à traiter la très grande diversité des styles, tailles,orientations, des chiffres isolés : il faut pour cela résoudre le problème crucial de la « représentation » desformes à classer, c’est-à-dire du choix des descripteurs qui seront utilisés par un ou plusieurs classifieurs,éventuellement neuronaux. Il est impossible de traiter ce problème de représentation de manière générale,car il dépend complètement de l’application mise en œuvre : il est évident que l’on ne peut pas repré-senter, de la même manière, des images de trait telles que des caractères manuscrits ou imprimés, desimages issues de satellites météorologiques, ou encore des radiographies médicales.

Page 41: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 141

Figure 1-32. Quelques morceaux choisis de la base de données NIST

En dépit de la grande diversité des traitements mis en œuvre pour les images, il existe quelques opérationsde base que l’on retrouve dans toutes les applications réelles : détection de contours, rehaussement decontraste, etc. (certaines de ces opérations se retrouvent également dans le système visuel humain). Dans lecas de la reconnaissance de caractères, la normalisation est également incontournable, pour que tous les trai-tements portent sur des chiffres de même taille. Comme nous l’avons déjà indiqué, l’ingénieur doit toujoursréaliser un compromis entre la complexité des pré-traitements nécessaires pour aboutir à la représentationchoisie, et la complexité de la classification : un pré-traitement bien fait, qui extrait des caractéristiques biendiscriminantes, donc pertinentes pour la classification, peut permettre l’utilisation d’un classifieur d’unegrande simplicité, mais ce pré-traitement ne doit pas être trop gourmand en temps de calcul ; en revanche,un pré-traitement primitif (par exemple une simple normalisation) est extrêmement rapide mais ne facilitepas la tâche du classifieur. Il faut donc trouver la solution qui présente la meilleure performance compatibleavec le temps de calcul autorisé par le cahier des charges de l’application. Nous allons présenter deux exem-ples qui mettent en jeu des stratégies très différentes pour résoudre le même problème.

Le premier exemple a été développé aux laboratoires AT&T. Il s’agit d’un réseau de neurones, connu sousle nom de LeNet [LE CUN et al. 1991], qui utilise une représentation par pixel (après normalisation). Lespremières couches du réseau réalisent des traitements locaux destinés à extraire automatiquement descaractéristiques ; les dernières couches effectuent la classification proprement dite. Ce réseau est repré-senté sur la figure 1-33.

Page 42: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones42

L’entrée du réseau est une matrice de16 × 16 pixels. Une première couchede neurones cachés est composéede 12 ensembles de 64 neuronescachés, chacun des 64 neuronescachés recevant des informationsconcernant un « champ réceptif »de 5 × 5 pixels. Ces ensembles de64 neurones sont appelés « cartesde caractéristiques » (en anglais,feature maps), car les entrées de tousles neurones d’une carte donnée sontaffectées des mêmes poids (tech-nique des « poids partagés », décritedans le chapitre 2) : ainsi, on fait agirle même opérateur, localement, surchaque ensemble de 25 pixels, desorte que l’ensemble des sorties d’ungroupe de 64 neurones constitue unecarte du résultat de l’application del’opérateur à l’image. Si la techniquedes opérateurs locaux est classiqueen traitement d’images, l’originalité

de la présente méthode réside dans le fait que ces derniers ne sont pas conçus par l’ingénieur, mais qu’ils sontdéterminés par l’apprentissage à partir d’exemples. L’opération est renouvelée dans une deuxième couched’opérateurs qui traitent les résultats de la première couche. On obtient ainsi 12 cartes de 16 neurones cachés,soit 192 neurones dont les sorties constituent le vecteur de descripteurs utilisé pour la classification. Celle-ci esteffectuée avec un réseau à une couche de 30 neurones cachés et 10 neurones de sortie. Les neurones de sortieutilisent un codage 1-parmi-C, que nous avons défini plus haut : il y a autant de neurones dans la couche desortie que de classes, la sortie du neurone i doit être égale à 1 si la forme à classer appartient à la classe i, et doitêtre égale à 0 sinon.

Ainsi, un tel réseau réalise automatiquement le pré-traitement et la classification, opérations qui sonttraditionnellement conçues séparément. Le prix à payer est évidemment une grande lourdeur d’apprentis-sage, et, compte tenu du grand nombre de poids, la nécessité de faire preuve d’une grande vigilance rela-tivement au surapprentissage.

Pour traiter le même problème, une approche très différente [KNERR et al. 1992] consiste à réaliser un pré-traitement de l’image plus élaboré, afin d’extraire des caractéristiques discriminantes qui permettentd’utiliser un classifieur relativement simple. Le pré-traitement est la détection de contours suivie d’unenormalisation, qui produit 4 cartes de caractéristiques de 64 éléments, soit un vecteur de 256 compo-santes. Mettant en œuvre la méthodologie de conception d’un classifieur que nous avons décrite plus haut,les dix classes ont été séparées deux à deux : 45 classifieurs différents ont été élaborés, dont l’apprentis-sage a été effectué séparément, et qui sont très simples puisque, dans l’application considérée, il se trouveque tous les exemples de l’ensemble d’apprentissage sont linéairement séparables deux à deux. Chacundes 45 classifieurs est donc en fait constitué d’un seul neurone. La figure 1-34 montre les 18 erreurscommises par ce classifieur sur les 9000 caractères de la base de données USPS. On remarquera notam-ment le cas du dernier chiffre (en bas à droite de la figure) qui est reconnu comme un chiffre 1 alors qu’ilest classé dans la base comme un chiffre 8, ce qui est évidemment une erreur d’étiquetage.

256 entrées

12 x 64neurones cachés

12 x 16neurones cachés

Connectivité partielle (poids partagés)

Connectivité complète

Connectivité complète

30 neurones cachés

10 neurones de sortie

Connectivité partielle (poids partagés)

Figure 1-33. LeNet, un réseau de neurones qui effectue l’extraction des caractéristiques et la classification.

Page 43: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 143

Nous avons mentionné à plusieurs reprises, notamment dans la section « Méthodologie de conceptiond’un classifieur », l’importance du choix de la représentation pour ce type d’applications. Nous pouvonsle mettre en évidence dans ce cas. Pour les deux représentations que nous avons mentionnées (représen-tations par pixel d’une part, cartes de caractéristiques après détection des contours d’autre part), ladistance entre les barycentres des classes a été calculée ; elle est représentée sur la figure 1-35. On observeque les distances entre classes sont toujours supérieures, pour la représentation par cartes de caractéristi-ques, à ce qu’elles sont pour la représentation par pixel. Ainsi, la représentation par cartes éloigne lesclasses les unes des autres, ce qui facilite évidemment la tâche des classifieurs.

Figure 1-35. Distances entre classes pour deux représentations : la représentation par cartes de caractéristiques éloigne les classes les unes des autres, donc faci-lite le travail ulté-rieur des classifieurs.

Le tableau 1 met en évidence l’amélioration deperformances qui résulte de la mise en œuvred’une meilleure représentation : après ajuste-ment des seuils de décision afin d’obtenir, dansles deux cas, un taux d’erreur de 1 %, le taux derejet pour la représentation par pixel est beau-coup plus élevé que pour la représentation parcaractéristiques. Il faut noter que les deuxreprésentations ont la même dimension (dansles deux cas, chaque chiffre est représenté par

un vecteur de 256 composantes) : l’amélioration ne provient pas de la compacité de la représentation,mais de sa bonne adéquation au problème posé. C’est la réflexion de l’ingénieur qui fait la différence...

Figure 1-34. Les 18 erreurs de classification commises par séparation linéaire des classes deux à deux. Pour chaque chiffre manuscrit, l’indication en haut à droite est la classe d’appartenance du chiffre indiquée dans la base, et le chiffre en bas à droite est la classe affectée par le clas-sifieur.

Couple de classes

0

0,2

0,4

0,6

0,8

1,0

1,2

1 5 9 13 17 21 25 29 33 37 41

Pixels Caractéristiques

Tableau 1-1

Taux de chiffres

bien classés

Taux de

rejet

Taux d’exemples mal classés

Représentation par pixels 70,9 % 28,1 % 1 %

Représentation par caractéristiques 90,3 % 8,7 % 1 %

Page 44: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones44

Une application en contrôle non destructif : la détection de défauts dans des rails par courants de FoucaultL’exemple que nous venons de présenter est relatif à la reconnaissance automatique d’images. Bienentendu, les formes que les réseaux de neurones peuvent classer ne sont pas nécessairement de cettenature. Nous présentons ici un exemple de reconnaissance de signaux dans le domaine du contrôle nondestructif. Cette application consiste à détecter les défauts dans les rails du métro parisien à l’aide decourants de Foucault. Elle a été développée par l’Institut national de la recherche sur les transports et leursécurité (INRETS) pour la RATP [OUKHELLOU et al. 1997].

La détection de défauts dans les pièces métalliques à l’aide de courants de Foucault est une technique clas-sique dans le domaine du contrôle non destructif. Son principe est simple : un bobinage crée un champmagnétique alternatif dans la pièce à contrôler, ce qui engendre des courants de Foucault au voisinage decelui-ci, dans une épaisseur qui dépend de la fréquence du champ magnétique. Ces courants sont détectéspar un second bobinage ; la présence de défauts dans le métal modifie le signal recueilli, à la fois en ampli-tude et en phase. Ainsi, le signal induit constitue une « signature » des défauts. Comme il existe toujoursplusieurs catégories de défauts, qui peuvent être plus ou moins graves, il est important de pouvoir non seule-ment détecter ces défauts, mais encore les classer. Il faut aussi pouvoir faire une distinction entre des défautset des phénomènes normaux qui peuvent également avoir une influence sur le signal : la jointure entre deuxrails provoque une modification des courants de Foucault, analogue à celle qui est provoquée par une fissure,alors qu’il s’agit d’un événement normal (mais sa position est connue, ce qui facilite la discrimination). Dansl’application considérée, le système de création et de détection des courants de Foucault est monté sous lavoiture, à quelques dizaines de millimètres du rail, comme représenté sur la figure 1-36.

Comme toujours, le choix des descripteursdu signal conditionne en grande partie l’effi-cacité de la discrimination. Comme il s’agitici d’images « mono-dimensionnelles » (paropposition aux images « bidimensionnelles »traitées précédemment), on peut utiliser unrelativement petit nombre de descripteurs quisont fondés sur les composantes de Fourierdu signal, à condition que ces descripteurssoient bien choisis. La méthode de sélectiond’entrées appelée « méthode du vecteursonde », décrite dans le chapitre 2, a étéutilisée pour développer cette application.[OUKHELLOU 1998]

Une application en prévision : l’estimation de la probabilité de succès aux élections législativesLa législation sur les dépenses de campagne oblige les candidats à déclarer de manière précise les sommesdépensées au cours de la campagne électorale, et leur ventilation. À partir des données relatives aux électionsde 1993, il a été possible d’évaluer la probabilité d’élection en fonction de la dépense effectuée, et de la venti-lation de ces dépenses dans les différents postes. Il s’agit donc d’un problème à deux classes (« élu » ou« battu »), et les réseaux de neurones permettent d’évaluer la probabilité d’appartenance à l’une des classes en

Figure 1-36. Photographie du système de création et de détection des courants de Foucault

Page 45: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 145

fonction d’un ou plusieurs descripteurs. La figure 1-37 montre la probabilité d’appartenance à la classe des élusen fonction de la dépense totale.

Cette application est de nature un peu différentedes précédentes : dans ces dernières, la classifi-cation avait pour objectif d’affecter une« forme » existante à une classe, sachant que,vraisemblablement, on ne saurait jamais aveccertitude à quelle classe la forme appartenaitréellement. Ici, la situation est différente,puisque l’on sait avec certitude, dès que lesrésultats des élections sont connus, à quelleclasse appartient le candidat. Nous cherchonsdonc ici à réaliser une prévision par simulation :afin d’optimiser ses chances de succès, uncandidat peut estimer sa probabilité de succèsen fonction de la stratégie qu’il met en œuvre pour dépenser ses fonds de campagne de telle ou tellemanière. Il peut donc en déduire la stratégie la mieux adaptée à sa situation.

Dans les sections des chapitres suivants qui sont consacrées à la modélisation statique et dynamique, nousverrons que la prévision par simulation constitue un domaine d’excellence des réseaux de neurones.

Une application en fouille de données : le filtrage de documentsEn raison de l’augmentation constante du volume d’information accessible grâce à l’électronique, laconception et la mise en œuvre d’outils efficaces, permettant notamment à l’utilisateur de n’avoir accèsqu’à l’information qu’il juge pertinente, devient une nécessité absolue. Comme la plupart de ces outilssont destinés à être utilisés dans un cadre professionnel, les exigences de fiabilité et de convivialité sonttrès importantes ; les problèmes à résoudre pour satisfaire ces exigences sont nombreux et difficiles.L’accès à l’information pertinente peut se faire en fournissant à un utilisateur des documents pertinents,ou en lui proposant des passages de documents pertinents (ou des réponses à des questions). Le premiercas relève du domaine de la recherche de textes, le second du domaine de l'extraction d'informations.

La catégorisation de textes, appelée également filtrage, consiste à trouver, dans un ensemble de docu-ments (comme un fil de dépêches d’agence de presse, ou un ensemble de pages Web), ceux qui sont rela-tifs à un sujet défini par avance. On peut ainsi fournir à un utilisateur, en temps réel, toutes les informa-tions importantes pour l’exercice de son métier. Dans ce cas, l’utilisateur n’exprime pas son intérêt parune requête, mais par un ensemble de documents pertinents qui définissent un thème ou une catégorie.Pour un thème donné, la catégorisation consiste donc à résoudre un problème de classification superviséeà deux classes ; celui-ci peut être résolu notamment par les méthodes décrites dans cet ouvrage : lesréseaux de neurones, les machines à vecteurs supports (chapitre 6), ou les modèles de Markov cachés(chapitre 4).

C’est un problème très difficile, qui va bien au-delà de la recherche par mots-clés : en effet, supposons,que l’on cherche à sélectionner, dans le flot des dépêches de l’AFP, celles qui sont pertinentes pour lethème « prises de participations entre entreprises » ; des textes qui contiennent les phrases : « la société Aa racheté la société B », ou bien « A est entré dans le capital de B à hauteur de 10 % », ou encore « A vientde franchir à la hausse le cap des 20 % des parts sociales de B », sont tous pertinents, et pourtant ils necontiennent aucun des mots qui définissent le thème ; en revanche, la phrase « la participation descommunistes au gouvernement inquiète les chefs d’entreprises » n’est pas pertinente, bien qu’ellecontienne deux des mots du thème.

Pro

babi

lité

d’él

ectio

n

0,8

0,6

0,4

0,2

0

Dépense de campagne (kF)

0 100 200 300 400 500 600

Figure 1-37. Estima-tion, à l’aide d’un réseau de neurones, de la probabilité d’élection en fonc-tion de la somme dépensée au cours de la campagne (élec-tions législatives de 1993).

Page 46: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones46

L’application que nous présentons (extraite de [STRICKER 2000]) a été développée pour la Caisse desdépôts et consignations, qui offre, sur l’intranet du groupe, un service de filtrage de dépêches de l’AFP entemps réel. Les objectifs sont doubles :• développement d’une application permettant à un utilisateur d’obtenir automatiquement un filtre

d’information sur un thème de son choix, sous réserve de fournir des exemples de textes pertinents pourle thème considéré,

• développement d’un outil permettant de surveiller l’obsolescence des filtres classiques, qui sont consti-tués de systèmes à base de règles.

Pour atteindre le second objectif, on fabrique une copie d’un filtre à base de règles avec un filtre utilisantun réseau de neurones. Comme le réseau de neurones produit une probabilité de pertinence et non uneréponse binaire, il est possible d’analyser les plus grandes divergences entre les deux filtres : les docu-ments considérés comme pertinents par la méthode à base de règles, mais obtenant une probabilité prochede zéro avec le réseau de neurones, et les documents considérés comme non pertinents avec le premier etobtenant une probabilité de pertinence proche de un avec le second [WOLINSKI et al. 2000].

Le premier de ces objectifs consiste en la conception et la réalisation d’un système de création automa-tique de filtres, dont la caractéristique majeure est l’absence d’intervention d’un expert, par opposition àla mise en œuvre d’un système à base de règles. Il s’agit donc de concevoir un système de discriminationà deux classes : à partir d’une base de documents étiquetés comme pertinents ou non pertinents pour lethème considéré, il faut :• trouver une représentation des textes par des nombres, représentation qui doit être aussi compacte que

possible,• concevoir et mettre en œuvre un classifieur utilisant cette représentation.

Le problème de la représentation des textes, donc de la sélection des entrées, est évidemment central danscette application.

Sélection des entrées

L’approche la plus conventionnelle est la représentation en « sac de mots », dans laquelle un texte estreprésenté par un vecteur dont chaque composante est un nombre, lié à la présence ou l’absence d’un motdans le texte, ou à sa fréquence dans le texte. La difficulté de cette approche est que la dimension de cevecteur est égale au nombre de mots du vocabulaire, ce qui est évidemment énorme ; on peut néanmoinsremarquer que tous les mots ne sont pas également discriminants : les mots les plus fréquents (de, la, et...)sont inutiles pour la discrimination, de même que les mots très rares. Dans une première étape, on cherchedonc, pour un thème donné, à trouver les mots les plus pertinents pour le thème considéré.

■ Codage des mots

Les mots sont codés de la manière suivante : soit FT(m, t) la fréquence d’occurrence du terme m dans letexte t, et FT(t) la fréquence moyenne des termes dans le texte t. Alors le mot m est décrit par la quantité :

dont on trouvera la justification dans [SINGHAL 1996.]

■ La loi de Zipf

Pour sélectionner les mots discriminants, on est aidé par la loi de Zipf [ZIPF 1949] : soit un corpus de Ttextes ; appelons FC(m) la fréquence d’occurrence du mot m sur le corpus T ; nous avons défini, dans leparagraphe précédent, la quantité FT(m, t), fréquence du mot m dans le texte t. Construisons une liste de

x(m) =1 + log FT m, t

1 + log FT t,

Page 47: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 147

mots, classés par ordre de FC(m) décroissant ; soit r(m) le rang du mot m dans cette liste. La loi de Zipfs’énonce ainsi : FC(m) r(m) = K, où K est une constante qui dépend du corpus considéré. Il y a donc unpetit nombre de mots très fréquents, et il y a un grand nombre de mots très rares qui n’apparaissent qu’unefois ou deux sur le corpus ; entre ces extrêmes, il existe un ensemble de mots dans lesquels il faut chercherles mots discriminants.

■ Extraction du vocabulaire spécifique

Pour déterminer le vocabulaire spécifique à un thème donné,on définit, pour chaque mot m de chaque texte pertinent t, lerapport R(m, t) = FT(m, t) / FC(m). On range les mots dutexte par ordre de R(m, t) décroissant, on supprime laseconde moitié de la liste, et l’on construit un vecteurbooléen v(t) tel que vi(t) = 1 si le mot i est présent dans la

liste, et 0 sinon. On calcule enfin le vecteur où

la somme porte sur tous les documents pertinents : le voca-bulaire spécifique du thème est l’ensemble des mots dontla composante dans v est non nulle. La figure 1-38 montreque, sur le corpus des dépêches Reuters, la loi de Zipf estassez bien vérifiée, et que les mots du vocabulaire spéci-fique du thème Falkland petroleum exploration sont bienau milieu de la distribution.

■ Sélection finale

À l’intérieur du vocabulaire spécifique ainsi défini, et qui peut être encore vaste (une à quelques centainesde mots), une sélection finale est effectuée par la méthode du vecteur sonde, décrite dans le chapitre 2. Àla fin de cette étape, il apparaît que, en moyenne sur 500 thèmes qui ont été étudiés, le vocabulaire spéci-fique d’un thème comprend 25 mots, ce qui est tout à fait raisonnable pour un vecteur d’entrée d’un réseaude neurones. Néanmoins, cette représentation n’est pas encore satisfaisante, même si elle est compacte.En effet, les mots seuls sont ambigus : dans une application comme celle-ci, il est indispensable de tenircompte du contexte.

Détermination du contexte

Pour introduire le contexte dans la représentation des textes, on a cherché des mots de contexte dans unefenêtre de 5 mots de part et d’autre du chaque mot du vocabulaire spécifique. On a défini• des mots de contexte positifs, qui sont les mots que l’on trouve dans le voisinage des mots du vocabu-

laire spécifique, dans les documents pertinents,• des mots de contexte négatifs, qui sont les mots que l’on trouve dans le voisinage des mots du vocabu-

laire spécifique, dans les documents non pertinents.

Pour sélectionner les mots de contexte, on utilise exactement la même procédure que pour la détermina-tion du vocabulaire spécifique. Typiquement, pour l’exemple de « prise de participation entreentreprises », on constate que pour le mot « capital », qui fait partie du vocabulaire spécifique, les mots« détient » et « droits » figurent dans les mots de contexte spécifique, et les mots « risque » et « fonds »dans le contexte négatif.

En moyenne sur 500 thèmes différents, un thème est défini par 25 mots de vocabulaire spécifique, chacunde ces mots ayant 3 mots de contexte.

0

1

2

3

4

5

6

Log

FC

(m)

0 1 2 3 4 5Log r (m)

Figure 1-38. Vérification expérimentale de la loi de Zipf sur le corpus Reuters, et représentation des mots du vocabulaire spécifique au thème « Falkland petroleum exploration »

v = v t∑t

,

Page 48: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones48

Conception et apprentissage des filtres

■ Filtres sans contexte

Si l’on ne tient pas compte du contexte, le filtre a pour entrées les mots du vocabulaire spécifique, codéscomme indiqué plus haut. Conformément à la méthodologie de conception de classifieurs que nous avonsprésentée dans la section consacrée à la discrimination, la structure du classifieur dépend de la complexitédu problème. Sur les corpus et les thèmes testés, les ensembles d’apprentissage sont généralement linéai-rement séparables, de sorte que l’on utilise un réseau à un seul neurone à fonction d’activation sigmoïde.

■ Filtres avec contexteFigure 1-39. Un filtre sans contexte est un clas-sifieur linéaire qui reçoit en entrée le descrip-teur de chacun des mots du vocabulaire spécifique (rectangles en traits gras) ; dans un filtre avec contexte, les entrées sont les descripteurs des mots du vocabulaire spéci-fique (rectangles en traits gras) et les mots de contexte (rectangles en traits fins).

Le contexte doit modifier le descripteurcorrespondant à chaque mot du vocabu-laire spécifique. Le filtre représentedonc chaque mot du vocabulaire par unneurone à fonction d’activationsigmoïde, dont les entrées sont ledescripteur du mot considéré et les

descripteurs des mots de contexte de celui-ci. Les sorties de ces neurones sont séparées linéairement parun neurone à fonction d’activation sigmoïde. La figure 1-39 représente un filtre avec contexte et un filtresans contexte

L’utilisation du contexte augmente évidemment le nombre de paramètres. Typiquement, pour un thèmeavec 25 mots de vocabulaire spécifique, et 3 mots de contexte par mot du vocabulaire spécifique, le filtrecomprend 151 paramètres. Compte tenu du fait que le nombre de poids peut être du même ordre de gran-deur que le nombre d’exemples (voire inférieur à celui-ci), il est impératif de mettre en œuvre uneméthode de régularisation. La méthode de modération des poids a été mise en œuvre dans cetteapplication ; nous en verrons l’effet dans le chapitre 2, dans la section consacrée à la régularisation.

Validation des résultats

Dans le domaine du traitement automatique du langage, la compétition organisée chaque année dans le cadrede la conférence TREC (Text REtrieval Conference) constitue une référence. La méthodologie présentée ci-dessus a été mise en œuvre dans le cadre de la compétition TREC-9, pour l’épreuve de « routing » : celle-ciconsiste à classer un ensemble de textes par ordre de pertinence décroissante pour des thèmes imposés.L’épreuve de TREC-9 portait sur deux ensembles de textes, se rapportant respectivement à 63 et 500 thèmes, etcomprenant au total 294 000 documents. Il va de soi que le nombre de documents à analyser, et le nombre dethèmes, rendent impossible tout traitement « manuel » ou « semi-automatique » des données, dans le tempsimparti à la compétition. L’approche que nous avons décrite a remporté l’épreuve, pour chacun des deuxthèmes ; la figure 1-40 représente les scores réalisés par les participants [STRICKER et al. 2001].

Filtre sans contexte

Filtre avec contexte

Page 49: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 149

Une application en bio-ingénierie : relations structure-activité (QSAR) pour la prédiction de propriétés chimiques de molécules

L’étude des relations structure-activité des molécules (QSAR pour Quantitative Structure-Activity Rela-tions) est un domaine en plein essor, en raison des progrès très rapides de la simulation moléculaire. Cestravaux ont pour objectif de prédire certaines propriétés chimiques de molécules à partir de données struc-turales qui peuvent être calculées a priori par ordinateur, sans qu’il soit nécessaire de synthétiser lamolécule ; on peut donc éviter une synthèse coûteuse si l’on peut prédire que la molécule envisagée nepossède pas les propriétés souhaitables [HANSCH et al. 1995]. Cette approche est particulièrement utiledans le domaine de la bio-ingénierie, pour la prédiction de propriétés pharmacologiques de molécules etl’aide à la découverte de nouveaux médicaments, mais elle peut évidemment être transposée à n’importequel domaine (prédiction de propriétés mécaniques de matériaux complexes à partir de leur formulation,prédiction de paramètres thermodynamiques de mélanges, etc.).

Pourquoi les réseaux de neurones peuvent-ils être mis en œuvre avec profit dans ce contexte ? Si l’onadmet qu’il existe une relation déterministe entre certains descripteurs de la molécule et la propriété quel’on veut prédire, alors on est ramené à un problème de détermination de la fonction de régression de lapropriété envisagée, en fonction des descripteurs choisis. Si cette fonction est non linéaire, et si des basesde données utilisables existent, l’utilisation de réseaux de neurones est entièrement justifiée.

Comme on l’a déjà souligné, la première question qu’il convient de se poser, lorsque l’on envisage dedévelopper une application de réseaux de neurones, est celle des données utilisables pour l’apprentissageet pour l’évaluation des performances du réseau. Compte tenu de l’importance des enjeux, il existe denombreuses bases de données concernant des quantités telles que le point d’ébullition, la solubilité dansl’eau ou le coefficient de partage eau-octanol. Cette dernière propriété est particulièrement importante :dans le domaine de la pharmacologie, elle détermine la capacité de la molécule à atteindre le milieu danslequel le médicament devient efficace, par franchissement de barrières biologiques ; dans le domaine del’environnement, le coefficient de partage eau-octanol caractérise la manière dont les pesticides sontsusceptibles de se répandre dans le milieu naturel.

Épreuve “OHSU” (63 thèmes)0,385

0,343 0,326 0,3170,237 0,234

0,185 0,1770,099 0,081

0

0,2

0,4

0,6

ICDC (S

2RNr2

)

Micr

osof

t (ok

9rf2

po)

Micr

osof

t (ok

9rfr2

po)

U. Nijm

egen

(KUNr1

)

U. Nijm

egen

(KUNr2

)

IRIT

/SIG

(Mer

9r2)

Rutge

rs U

. (an

trpno

00)

Rutge

rs U

. (an

trpo0

0)

ICDC (S

2RNr1

)

Score

0,335

0,253

0,158

0,00780

0,2

0,4

0,6

Sco

re

Épreuve “MeSH” (500 thèmes)

Rutgers U(antrpms00)

Rutgers U(antrpnms00)

Microsoft(ok9rfr2ps)

ICDC(S2RNsamp)

Figure 1-40. Résultats de l’épreuve de « routing » de TREC-9 ; en noir : résultats obtenus par la méthode décrite ci-dessus ; en gris : résultats obtenus par d’autres méthodes.

Page 50: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones50

La deuxième question à se poser est celle des entrées pertinentes pour le réseau de neurones envisagé. Ici,les connaissances du chimiste doivent nécessairement guider le choix des entrées. On considère habituel-lement trois catégories de descripteurs :• des descripteurs chimiques tels que la masse moléculaire, le nombre d’atomes de carbone, etc. ;• des descripteurs géométriques tels que le volume de la molécule, sa surface, son ovalité, etc. ;• des descripteurs électriques tels que les charges portées par les différents atomes, le moment dipolaire, etc.

Pour chaque propriété que l’on cherche à prédire, il faut doncétablir un ensemble de descripteurs que l’on peut supposerpertinents, et utiliser une technique de sélection, telle quecelles qui sont décrites dans le chapitre 2, afin de déterminerles descripteurs qui sont réellement utiles pour les moléculeset la propriété considérée. En raison de leur parcimonie, desréseaux de neurones de très petite taille (5 à 7 neuronescachés) fournissent des résultats de meilleure qualité que lestechniques de régression multilinéaire habituellement misesen œuvre dans ce domaine [DUPRAT et al. 1998].

Il est intéressant de remarquer que, pour certaines molécules,les valeurs de LogP sont systématiquement mal apprises(lorsque ces mesures font partie de l’ensemble d’apprentis-sage) ou systématiquement mal prédites (lorsque ces molé-cules font partie de l’ensemble de validation). Dans un tel

cas, le premier problème à soupçonner est évidemment une erreur de saisie ou de mesure. Si cette hypo-thèse est à rejeter, il faut en conclure que ces éléments ont des particularités qui sont absentes des autresexemples ; ici, il apparaît que les molécules en question sont soit fortement chargées (tétracycline etcaféine, représentés sur la figure 1-41), soit au contraire ont très peu d’interactions avec le solvant(pérylène, 1-4 pentadiène, voir figure 1-41). Ainsi, les réseaux de neurones peuvent servir à détecter desanomalies de comportement ; c’est un des grands domaines d’applications des réseaux de neurones.

Une application en formulation : la prédiction de la température de liquidus de verresDans le même esprit que l’application précédente, on peut prédire des paramètres thermodynamiques dematériaux en fonction de la composition de ceux-ci. C’est le cas notamment pour la température deliquidus de verres d’oxydes. Cette température est la température maximale à laquelle des cristaux sonten équilibre thermodynamique avec le liquide ; il est important, industriellement, de pouvoir prédire cettetempérature en fonction de la composition du verre, car la valeur de la viscosité à la température deliquidus est un élément important pour le choix des paramètres des procédés de formage des verres. Laprédiction de cette température en fonction de la composition du verre est difficile, car les diagrammesprésentent des variations brutales dans le domaine d’intérêt ; compte tenu de cet intérêt industriel, denombreuses études ont été menées (voir par exemple [KIM et al. 1991]), et des bases de données sontdisponibles. L’utilisation des réseaux de neurones s’est montrée avantageuse par rapport aux méthodestraditionnelles, notamment pour les verres ayant plus de trois composantes.

La figure 1-42 illustre, sur un exemple concret, la parcimonie des réseaux de neurones. Elle présente des« diagrammes de dispersion » (scatter plot). Un tel diagramme constitue un outil graphique très commode pourvisualiser la précision de l’approximation : on porte en abscisse, pour chaque élément de la base de données, lavaleur mesurée, et en ordonnées la valeur prédite correspondante. Si la prédiction était parfaite, tous les pointsdevraient être alignés sur la bissectrice ; la dispersion autour de celle-ci donne une idée de la qualité de la modé-

CH3 H HNMe2

OHOH O OH O

NH2

O

OHHO

Tétracycline

Pérylène1,4-pentadiène

CH3O

O

Caféine

CH3

CH3

N

N N

N

Figure 1-41. Molécules présentant des parti-cularités chimiques,dont les propriétés sont mal prédites par des réseaux de neurones.

Page 51: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 151

lisation (bien entendu, cela ne remplace pas les grandeurs telles que l’EQMT introduite plus haut, le score devalidation ou de leave-one-out définis dans le chapitre 2, ou toute autre bonne estimation quantitative de l’erreurde modélisation). Les entrées des modèles sont les teneurs en oxydes, la sortie est l’estimation de la températurede liquidus. La figure 1-42(a) présente le résultat obtenu sur un verre de silice (composé, outre de SiO2, d’oxydede potassium K2O et d’alumine Al2O3), obtenu avec un réseau à 6 neurones cachés (25 paramètres), et la figure1-42(b) le résultat obtenu avec un polynôme de degré 3, dont le nombre de paramètres est très voisin (19). Il estclair que, à nombre de paramètres à peu près équivalent, le réseau de neurones fournit un bien meilleur résultat.La figure 1-42(c) indique, pour mémoire, le résultat obtenu avec un modèle linéaire.

Une application en modélisation de procédé industriel : la modélisation du soudage par pointsLe soudage par points est le procédé de soudage le plus utilisé dans l’industrie automobile : des millionsde soudures sont effectuées chaque jour. Le procédé est schématisé sur la figure 1-13 : le soudage desdeux tôles est effectué en faisant passer un courant très intense (des dizaines de kiloampères) pendant untemps très court (quelques centaines de millisecondes) entre deux électrodes pressées contre la surface

Figure 1-42. Diagrammes de dispersion pour la prédiction de la température de liquidus de verres d’oxydes en fonction de la composition, pour trois modèles différents.

Page 52: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones52

des tôles. L’échauffement produit par effet Joule fait fondre une zone des tôles. Après refroidissement, lediamètre de la zone fondue (typiquement 5 mm) caractérise la qualité de la soudure ; si ce diamètre estinférieur à 4 mm, la soudure est considérée comme défectueuse. Le diamètre du point soudé est donc unélément crucial de la sécurité du véhicule. À l’heure actuelle, il n’existe pas de méthode physique nondestructive qui permette d’évaluer rapidement le diamètre de la soudure. En conséquence, une stratégieindustrielle typique consiste :

• à utiliser une intensité de courant excessive, ce qui produit un très grand échauffement, donc l’éjectionde gouttelettes de métal en fusion de la zone de soudage (c’est l’origine des « étincelles » que l’onobserve à chaque soudure effectuée par les robots de soudage sur une chaîne de fabrication) ;

• à réaliser des soudures en surnombre, afin que, avec une probabilité voisine de 1, on ait au moins unesoudure de bonne qualité.

L’excès de courant et le trop grand nombre de soudures conduisent à une dégradation rapide des élec-trodes, qui doivent être changées ou ré-usinées fréquemment.

Pour toutes ces raisons, la modélisation du processus en vue d’obtenir une prédiction fiable du diamètrede la soudure, en temps réel, à partir de mesures effectuées pendant le soudage, constitue un problèmeindustriel important. Il est très difficile de modéliser la dynamique du processus de soudage, pourplusieurs raisons :

• le temps nécessaire pour intégrer numériquement les équations différentielles et les équations aux déri-vées partielles du modèle de connaissance est supérieur, de plusieurs ordres de grandeur, à la duréed’une soudure ; on ne peut donc pas utiliser un tel modèle pour une prédiction en temps réel ;

• certains paramètres physiques, qui interviennent dans les équations du modèle de connaissance, sontmal connus.

La modélisation « boîte noire » est donc une alternative intéressante à un modèle de connaissance. Leprocédé étant non linéaire et présentant plusieurs variables, les réseaux de neurones sont de bons candi-dats pour effectuer une prédiction, en temps réel, du diamètre du point fondu, donc de la qualité de lasoudure, en fonction de mesures effectuées pendant la soudure [MONARI 1999].

Les difficultés sont, d’une part, le choix des variables d’entrée du modèle, et, d’autre part, le fait que lesdonnées disponibles sont relativement peu nombreuses, car coûteuses à obtenir.

Dans [MONARI 1999], les grandeurs candidates pour constituer des variables du modèle étaient des gran-deurs mécaniques et électriques qui peuvent être mesurées durant le processus. La sélection des entrées aété effectuée à l’aide des méthodes décrites dans le chapitre 2, et ce choix a été validé par les expertsimpliqués dans le développement du modèle de connaissance du procédé.

Comme il n’existe pas de méthode non destructive simple pour prédire le diamètre du point fondu, la basede données est construite de la manière suivante : un ensemble de soudures est effectué dans des condi-tions bien contrôlées ; elles sont ensuite arrachées (« déboutonnées »), et le diamètre du « bouton fondu »,qui reste solidaire d’une des tôles, est mesuré. C’est un processus long et coûteux, de sorte que l’ensembled’apprentissage initial comprenait seulement 250 exemples. En utilisant l’estimation des intervalles deconfiance qui sera exposée dans le chapitre 2, un plan d’expériences a été établi, qui a permis d’enrichirprogressivement la base de données disponible. La moitié de ces données a été utilisée pour l’apprentis-sage, l’autre pour le test ; la sélection de modèle a été effectuée par la procédure de « leave-one-outvirtuel » qui sera expliquée dans le chapitre 2, si bien qu’il n’a pas été nécessaire d’utiliser un ensemblede validation.

Page 53: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 153

La figure 1-43 présentedes diagrammes de dis-persion typiques, oùchaque prédiction figureavec son intervalle deconfiance. L’erreur degénéralisation estimée(score de leave-one-out,voir chapitre 2) est de0,27 mm, et l’EQMT del’ordre de 0,23 mm. Cesquantités étant de l’ordrede grandeur de l’incerti-tude de mesure, ces résul-tats sont très satisfaisants.

Une application en robotique : la modélisation de l’actionneur hydraulique d’un bras de robot

On cherche à concevoir unmodèle d’un bras de robot dontla position est commandée parun actionneur hydraulique. Laposition du bras dépend de lapression d’huile dans l’action-neur, pression commandée parl’ouverture d’une vanne. Lesvariations de l’ouverture de lavanne, c’est-à-dire la séquencede commande {u(k)}, et lapression d’huile correspon-dante, c’est-à-dire la séquencede sortie {yp(k)}, sont repré-sentées sur la figure 1-44. Cetensemble de données contient1024 points de mesure : lapremière moitié d’entre eux estutilisée pour l’apprentissage, laseconde pour l’estimation de laperformance (séquence detest). On ne dispose d’aucuneautre information sur leprocessus : on a donc nécessai-rement recours à une modéli-sation « boîte noire ».

Dia

mèt

re p

réd

it (

mm

)

2

3

4

5

6

7

8

2 3 4 5 6 7 8Diamètre mesuré (mm)

2

3

4

5

6

7

8

2 3 4 5 6 7 8Diamètre mesuré (mm)

Dia

mèt

re p

réd

it (

mm

)

Figure 1-43. Diagrammes de dispersion pour la prédiction du diamètre de soudures par points

(b)

-1.5

-1

-0.5

0

0.5

1

1.5

0 200 400 600 1000

-4

-2

0

2

4

0 200 400 600 800 1000

Séquence d'apprentissage Séquence de test

(a) 800

Commande

Sortie du processus

Figure 1-44. Séquences d’apprentissage et de test pour la modélisation d’un bras de robot

Page 54: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones54

L’examen des données montre que le processus n’estcertainement pas linéaire, et que, compte tenu des oscilla-tions observées en réponse à des variations de u(k) qui sontpresque des échelons, le processus est au moins d’ordre 2.On observe aussi que les séquences d’apprentissage et detest n’explorent qu’approximativement le même domainede fonctionnement (signaux de sortie et de commande demême type et de même amplitude). On note qu’auxinstants 600 et 850 environ de la séquence de validation,l’amplitude de la commande dépasse les amplitudes maxi-males atteintes sur la séquence d’apprentissage. On ne setrouve pas dans les meilleures conditions possibles.

Nous analyserons en détail cet exemple dans le chapitre 2.Les meilleurs résultats ont été obtenus [OUSSAR 1998]avec un modèle d’état du second ordre, dont une des varia-bles d’état est la sortie elle-même, avec trois neuronescachés. Il est représenté sur la figure 1-45.

L’erreur quadratique moyenne obtenue avec le modèle dela figure 1-45 est de 0,07 sur la séquence d’apprentissage,et de 0,12 sur la séquence de validation, ce qui est une très

bonne performance compte tenu de la représentativité des données disponibles. Les résultats obtenus surla séquence de test sont représentés sur la figure 1-46. Les défauts de modélisation résultent probablementdu fait qu’il y a des perturbations non mesurées, qui ne figurent pas dans les entrées du réseau.

Une application de la modélisation semi-physique à un procédé manufacturierNous présentons ici une application de la méthode de modélisation semi-physique, qui sera décrite endétail dans le chapitre 2, à un problème industriel. Il s’agit de la modélisation du séchage du ruban adhésifScotch fabriqué par la Société 3M.

Un ruban adhésif est constitué d’un film de matière plastique – le substrat – sur lequel est déposé un filmliquide – le revêtement – constitué d’un polymère adhésif dissous dans un solvant. L’ensemble passe dansun four, dans une atmosphère gazeuse où la pression partielle du solvant est très inférieure à la pressionpartielle à l’équilibre à la température du four ; en conséquence, le solvant s’évapore, si bien que laconcentration du solvant dans le revêtement au voisinage de la surface devient inférieure à la concentra-tion du solvant dans le volume du revêtement. Le solvant diffuse alors du volume vers la surface pourcompenser ce gradient de concentration, ce qui alimente encore l’évaporation. Le processus se poursuitjusqu’au séchage du revêtement, de sorte que seul subsiste l’adhésif à la surface du substrat.

1 u(k) x2(k)

q– 1

y(k + 1) = x1(k + 1)

y(k) = x1(k)

x2(k + 1)

Figure 1-45. Modèle neuronal d’état pour l’actionneur hydraulique. La sortie est l’une des variables d’état

-5

0

5

0 100 200 300 400 500

ypy

Figure 1-46. Modélisation d’état de l’actionneur hydraulique

Page 55: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 155

Traditionnellement, le solvant est de nature organique. Pour des raisons de sécurité et d’environnement, il estsouhaitable de remplacer les solvants organiques par de l’eau. Un excellent modèle physique du séchage enprésence d’un solvant organique existe [PRICE et al. 1997] ; il est constitué de treize équations algébriques etdifférentielles non linéaires couplées ; lorsque le solvant organique est remplacé par l’eau, certains élémentsde ce modèle ne sont plus valables, si bien que les prédictions du modèle sont beaucoup moins précises.

La théorie de la dissolution du polymère dans l’eau est bien moins bien connue que celle du polymèredans un solvant organique, si bien que l’on ne peut pas élaborer un modèle de connaissance satisfaisant ;par ailleurs, des séquences de mesure du poids de l’échantillon en fonction du temps et de la températuredu four sont disponibles : l’utilisation d’un modèle semi-physique paraît donc possible et opportune.

Les équations qui constituent le modèle expriment :• la conservation de la masse dans le volume du solvant : cette équation ne peut être remise en cause par

le changement du solvant ;• la loi qui régit le courant de solvant vers la surface (loi de Fick) ; la validité de cette loi n’est pas discu-

table, mais elle fait intervenir une grandeur (le coefficient de diffusion) dont la variation en fonction dela concentration et de la température est donnée par une théorie (théorie du volume libre) dont la vali-dité, dans le cas où le solvant est de l’eau, est incertaine ;

• la condition de conservation de la masse à la surface : toute molécule qui arrive à la surface, ets’évapore, contribue à la variation de la pression partielle du solvant dans le gaz ; cette loi ne peut êtreremise en cause ;

• la condition à l’interface entre le revêtement et le substrat : le substrat étant imperméable au solvant, iln’y a aucun flux de solvant vers le substrat ;

• la valeur de la pression partielle de solvant dans le gaz, qui constitue la « force motrice » du processus ;cette grandeur est donnée par une loi dont la validité n’est pas remise en cause par les experts.

À la lumière de cette analyse, il apparaît que c’est la variation du coefficient de diffusion qui doit êtrereprésentée par un réseau de neurones « boîte noire » au sein du modèle semi-physique. C’est ce qui a étéfait, en suivant la méthode de conception qui a été esquissée plus haut, et qui est décrite en détail dans lechapitre 2. Il faut noter que les équations du modèle ne sont pas des équations différentielles, mais deséquations aux dérivées partielles ; cela n’est pas un obstacle à l’utilisation de la méthode.

Le lecteur intéressé par les détails de la réalisation du modèle et par les résultats obtenus pourra les trouverdans [OUSSAR et al. 2001]. On trouvera également une autre application – la détection automatique dedysfonctionnements dans une colonne à distiller industrielle –, mettant en œuvre la modélisation neuro-nale semi-physique, dans [PLOIX et al. 1997]. Mentionnons enfin que des applications sont opération-nelles dans un groupe industriel français majeur, pour la formulation de matériaux et de produitsnouveaux.

Deux applications en contrôle de l’environnement : pollution par l’ozone et hydrologie urbaineLes deux applications que nous présentons ici relèvent de problématiques semblables : la prévision dephénomènes non linéaires dans le domaine de l’environnement.

Prévision des pics de pollution par l’ozone

La généralisation des mesures de concentration en ozone, ainsi que le développement de modèles deconnaissance de la pollution atmosphérique, permettent d’envisager la prévision des pics de pollution. Dansle cadre d’un groupe de travail du club « Ingénierie du traitement de l’information » de l’association ECRIN,des données relatives à la pollution par l’ozone dans la région lyonnaise ont été mises à la disposition des

Page 56: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones56

équipes de recherche françaises, en vue d’une prédiction « boîte noire » à l’aide de méthodes mettant en jeuun apprentissage. Les réseaux de neurones étaient donc des candidats naturels pour réaliser cette tâche.

Comme il s’agissait d’une étude préliminaire de courte durée, on s’est contenté d’utiliser les donnéesissues d’un seul capteur d’ozone, pour lequel les données disponibles (mesures heure par heure pendantles années 1995 à 1998) étaient fiables. Les données des années 1995 à 1997 ont été utilisées pourl’apprentissage, celles de l’année 1998 pour le test. L’objectif est de prévoir, 24 heures à l’avance, si lapollution dépassera le seuil d’alerte (180 µg/m3 au moment où l’étude a été effectuée).

Deux possibilités peuvent être envisagées :• la classification : classer la journée à venir en « polluée » ou « non polluée » (journée avec dépassement

du seuil ou sans dépassement), en fonction des données disponibles à 16 h GMT ;• la prévision : prédire la concentration en ozone, 24 heures à l’avance.

Comme la définition de la classe « polluée » dépend de la définition du seuil, et que celle-ci peut varier enfonction de données administratives, politiques ou économiques, il nous a paru préférable d’éliminer laclassification au profit de la seconde approche, qui reste valable indépendamment de toute autre considé-ration. On a donc élaboré un modèle neuronal « boîte noire » qui, à partir des données disponibles à 14 hGMT, prédit les concentrations qui seront mesurées au cours des 24 heures suivantes.

Le processus étant essentiellement dynamique, avec des phénomènes qui varient selon la période consi-dérée (jour ou nuit), il a semblé naturel d’utiliser 24 réseaux de neurones qui effectuent tous la prédictionune heure à l’avance, en fonction des données disponibles à 14 h GMT.

L’idée la plus simple consistait à utiliser un modèledynamique non linéaire (réseau de neuronesbouclé). Néanmoins, il est apparu que cette solutionrisquait de ne pas être adaptée, car une étude préli-minaire des données montre que les facteurs perti-nents pour la prévision de la pollution dépendent del’heure considérée ; or, dans un réseau bouclé, lesentrées exogènes sont évidemment les mêmesquelle que soit l’heure. Afin de pallier cet inconvé-nient, un ensemble de 24 réseaux de neurones encascade a été conçu et réalisé, chaque réseau étantspécialisé dans la prédiction correspondant à unetranche horaire (figure 1-47) : le réseau N prédit laconcentration mesurée par le capteur considéré àl’heure 14+N GMT ; pour chaque réseau, lesentrées candidates sont :• les prédictions des N – 1 réseaux précédents ;• l’ensemble des données fournies, soit :

1 – les mesures des capteurs NO et NO2 à 14 hGMT,2 – la température à 14 h le jour J,3 – la température maximale mesurée le jour J,et la température maximale prédite par Météo-France pour le jour J + 1,4 – les géopotentiels le jour J,5 – la série temporelle des mesures de la concen-tration en ozone avant 14 h.

PRÉDICTEUR+1 h

Série des mesures de O3 Géopotentiels NO et NO2 Températures jours J et J +1

PRÉDICTEUR+2 h

PRÉDICTEUR+3 h

PRÉDICTEUR+24 h

Figure 1-47. Structure d’un réseau de neurones pour la prévision, 24 heures à l’avance, des pics de pollution par l’ozone

Page 57: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 157

Pour chaque réseau, une sélection des entrées qui figurent parmi la liste ci-dessus est effectuée selon lesméthodes décrites dans le chapitre 2. Ainsi, les entrées exogènes de chaque réseau sont adaptées à latranche horaire considérée.

Cette approche peut évidemment être adaptée à tout autre jeu de données, et elle offre la possibilité d’inté-grer des connaissances expertes, lorsque celles-ci seront disponibles, dans un modèle semi-physique.

L’erreur de prédiction moyenne sur l’année de test (1998) est de 23 µg/m3. La figure 1-48 illustre la diffi-culté du problème : en dépit d’une prédiction très précise pendant 20 heures, soit presque toute la journée,celle-ci apparaît comme un « faux négatif » car la mesure dépasse (de très peu) le seuil d’alerte. Il estprobable que, lorsque de tels outils seront opérationnels (ce qui n’est pas le cas de l’application présentéeici au moment où ces lignes sont rédigées), de nouvelles procédures d’alerte, plus subtiles que le simpledépassement d’un seuil, pourront être mises en œuvre.

Modélisation de la relation pluie-hauteur d’eau dans un collecteur d’eau pluviale

La « Direction de l’eau et de l’assainissement » du département de Seine-Saint-Denis a développé un systèmesophistiqué de mesure des niveaux d’eau dans le système de collecte des eaux pluviales, et a procédé à desmesures systématiques des chutes de pluie et des niveaux d’eau correspondants. L’objectif est une utilisationoptimale du réseau et une bonne anticipation des difficultés qui peuvent résulter de pluies importantes. La fiabi-lité du système dépend donc largement de la fiabilité des capteurs des niveaux d’eau dans les collecteurs : il estdonc important de pouvoir détecter automatiquement qu’un capteur est en panne [ROUSSEL et al. 2001].

Comme nous l’avons indiqué plus haut, lacapacité des réseaux de neurones à modé-liser avec précision des phénomènes nonlinéaires leur confère une place impor-tante dans les systèmes de détection dedysfonctionnements : si l’on dispose d’unmodèle précis du fonctionnement normal,et que l’on observe une différence signifi-cative entre les prédictions du modèle etles mesures effectuées, on peut enconclure que le système est en fonction-nement anormal, ou, dans l’exempledécrit ici, que le capteur considéré est enpanne.

0

180µg/m 3

Mesure

14 h 19 h 24 h 05 h 10 h 14 h

Con

cent

ratio

n en

ozo

ne

Heure GMT

Modèle

Figure 1-48. Concentra-tions en ozone mesurée et prévue pour une journée de 1998 (« faux négatif »)

-0.12

-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

1 2 3 4 5 6 7 8 9 10 11 12 13

Jour

Err

eur

moy

enne

de

mod

élis

atio

n

Dérive

Fonctionnement normal

Figure 1-49. Détection de panne de capteur dans un collecteur d’eau pluviale

Page 58: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones58

Deux types de pannes doivent être considérés :• capteur bloqué (fournissant une mesure constante),• capteur subissant une dérive lente.

Ces deux types de pannes peuvent êtres détectés en utilisant des réseaux de neurones bouclés, notammentdes modèles NARMAX (présentés en détail dans les chapitres 2 et 4). Ainsi, la figure 1-49 montre claire-ment la différence de comportement de l’erreur de modélisation lorsque le capteur est en fonctionnementnormal et lorsqu’il dérive.

Une application en robotique mobile : le pilotage automatique d’un véhicule autonomeCommander un processus, c’est déterminer les commandes à lui appliquer, afin de lui assurer un compor-tement donné (défini par un cahier des charges), en dépit de perturbations.

L’exemple que nous présentons ici est celui d’un véhicule Mercedes 4 × 4 (baptisé REMI), équipé, par lasociété SAGEM, des capteurs et actionneurs nécessaires pour que le véhicule puisse être autonome.Commander ce processus, c’est envoyer aux actionneurs du volant, de l’accélérateur et du frein, lessignaux de commande nécessaires pour que le véhicule suive une trajectoire définie à l’avance, avec unprofil de vitesse déterminé à l’avance, en dépit des perturbations telles que la pente de la route, son dévers,les bourrasques de vent, des dérapages éventuels, etc.

Les réseaux de neurones sont de bons candidats pour être des éléments de systèmes de commande deprocessus non linéaires. En effet, nous avons vu les capacités des réseaux de neurones à réaliser desmodèles, « boîtes noires » ou aidés de connaissances physiques. Or, pour être en mesure d’élaborer unsystème de commande pour un processus, il faut généralement disposer d’un modèle de ce dernier ; lesréseaux de neurones interviennent donc dans les systèmes de commande non linéaires comme modèles duprocessus, soit pendant la phase d’apprentissage, soit en tant qu’élément du système de commande lui-même (commande avec modèle interne, voir chapitre 5). Par ailleurs, l’élaboration du signal decommande (par exemple, l’angle selon lequel il faut faire tourner le volant, et la vitesse angulaire aveclaquelle il faut le faire tourner) à partir de l’information de consigne (le cap que doit suivre le véhicule)implique généralement la réalisation d’une fonction non linéaire : les réseaux de neurones peuvent doncavantageusement assurer cette fonction, qui est celle du correcteur.

Le véhicule REMI est un 4 × 4 expérimental équipé d’actionneurs (moteur électrique pour faire tourner levolant, actionneur hydraulique pour le circuit de freinage, moteur électrique pour le papillon d’admissiond’air), et de capteurs de deux types :• des capteurs qui permettent de connaître l’état du véhicule (capteurs proprioceptifs) : odomètres sur les

roues, capteur angulaire sur le volant et le papillon d’admission d’air, capteur hydraulique sur le circuitde freinage ;

• des capteurs avec lesquels on peut connaître la position du véhicule par rapport au monde extérieur(capteurs extéroceptifs) : une centrale inertielle.

Le système de navigation et de pilotage est constitué des éléments suivants :• un module de planification, qui, à partir de l’objectif à atteindre et des contraintes (routes), détermine la

trajectoire que doit suivre le véhicule, et le profil de vitesse à respecter durant le trajet ;• un module de guidage, qui élabore les consignes de cap et de vitesse ;• un module de pilotage, qui détermine les positions souhaitées pour les actionneurs ;• un module de commande des actionneurs eux-mêmes.

Dans cette structure, les réseaux de neurones interviennent au niveau du pilotage, pour déterminer lesactions souhaitables en fonction des consignes de cap et de vitesse [RIVALS et al. 1994] [RIVALS 1995].

Page 59: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 159

L’application a nécessité la conception et la réalisation de deux systèmes de commande destinés à réaliserdeux tâches :• la commande du volant, pour maintenir le véhicule sur sa trajectoire : un régulateur neuronal de la position

a été réalisé, qui permet une erreur latérale maximale de 40 cm, pour des courbures jusqu’à 0,1 m-1, et desdévers jusqu’à 30 %, sur route et en tout-terrain ; cet asservissement a mis en œuvre, en certains de seséléments, une modélisation semi-physique ;

• la commande de l’accélérateur et du frein, pour respecter le profil de vitesse imposé par le module de guidage.

Il faut noter que les divers réseaux de neurones mis en jeu dans cette application, qu’ils jouent le rôle demodèles ou de correcteurs, sont tous de très petite taille (moins d’une dizaine de neurones cachés). Leurmise en œuvre en temps réel n’a nécessité aucun matériel spécialisé : ils ont été réalisés sous forme unique-ment logicielle, exécutés sur une carte à microprocesseur standard qui remplissait diverses autres fonctions.

Conclusion

Dans ce chapitre, nous avons exposé les éléments essentiels qui permettent de comprendre pourquoi, etdans quels cas, il est avantageux de mettre en œuvre des réseaux de neurones. En présentant quelquesapplications typiques, nous avons tenté de montrer, concrètement, ce que l’ingénieur peut attendre decette technique.

Avant d’aller plus loin, il est sans doute utile de rappeler les points fondamentaux qu’il convient detoujours garder à l’esprit lorsque l’on cherche à mettre en œuvre des réseaux de neurones :• les réseaux de neurones sont utilisés comme outils statistiques, qui permettent d’ajuster des fonctions non

linéaires très générales à des ensembles de points ; comme toute méthode statistique, l’utilisation deréseaux de neurones nécessite que l’on dispose de données suffisamment nombreuses et représentatives ;

• les réseaux de neurones à apprentissage supervisé sont des approximateurs parcimonieux, qui permettentde modéliser des phénomènes statiques (réseaux non bouclés) et dynamiques (réseaux bouclés) ;

• les réseaux de neurones à apprentissage supervisé peuvent constituer d’excellents classifieurs, dont lesperformances peuvent approcher celles du classifieur bayésien théorique ; néanmoins, pour la classifi-cation en vue de la reconnaissance de formes, la représentation choisie pour les formes à reconnaîtredétermine souvent, d’une manière décisive, la performance globale du système ; dans ce contexte, lesréseaux de neurones à apprentissage non supervisé peuvent apporter des éléments précieux pour ladétermination d’une bonne représentation des formes ;

• il est toujours souhaitable, et souvent possible, d’utiliser, pour la conception du réseau, les connais-sances mathématiques dont on dispose sur le phénomène à modéliser ; les réseaux de neurones ne sontpas nécessairement des « boîtes noires ».

Les chapitres qui suivent reprennent en détail les éléments exposés plus haut : le lecteur est invité à se reporterà l’avant-propos et guide de lecture pour naviguer dans cet ouvrage en fonction de ses centres d’intérêt.

Compléments théoriques et algorithmiques

Quelques types de neurones usuelsOn peut distinguer deux types de neurones, en fonction de la manière dont interviennent leurs paramètres.

Page 60: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones60

Les neurones à entrées paramétrées

Les neurones les plus fréquemment utilisés sont des neurones à entrées paramétrées. Pour cette catégoriede neurones, un paramètre est associé à chaque entrée du neurone. La sortie d’un neurone à n entrées {xi},i = 0 à n–1, s’exprime donc sous la forme y = f ({xi, wi}, i = 0 à n–1. Le plus souvent, la fonction f est lacomposition de deux opérations :• le calcul du « potentiel » du neurone, qui est la somme des entrées du neurone, pondérées par les

paramètres :

• le calcul d’une fonction non linéaire du potentiel, dite « fonction d’activation » ; cette fonction est généra-lement en forme de « s », d’où le nom générique de « sigmoïde » ; on utilise toujours une fonction symé-trique par rapport à 0, telle que la fonction tangente hyperbolique ou Arctangente, sauf si desconnaissances spéciales sur le problème conduisent à utiliser une autre fonction, mieux adaptée à celui-ci.

RemarqueLes entrées du neurone comprennent généralement une entrée particulière, appelée « biais », qui a une valeur constante égale à 1.

On lui attribue traditionnellement le numéro zéro, si bien que le potentiel peut être récrit sous la forme :

Ainsi, la sortie du neurone a pour expression : La figure 1-50 représente la sortie d’un neurone à 3 entrées (x0=1,

x1, x2) muni des paramètres w = 0, w1 = 1, w2 = – 1.

Mentionnons deux variations sur cetype de neurones :• les neurones « d’ordre supérieur », dont

le potentiel n’est pas une fonction affinedes entrées, mais une fonction poly-nomiale ; ce sont les ancêtres des« machines à vecteurs supports »(Support Vector Machines ou SVM)utilisés pour la classification et décritsdans le chapitre 6 « La discrimina-tion » ;

• les « neurones de MacCulloch etPitts », ou « séparateurs linéaires àseuil », ou encore « perceptrons »,qui sont les ancêtres des neuronesutilisés actuellement ; leur emploipour la discrimination sera largementdéveloppé dans le chapitre 6.

Les neurones à non-linéarité paramétrée

Les paramètres de ces neurones sont attachés à la non-linéarité de ceux-ci : ils interviennent directementdans la fonction f : ainsi, cette dernière peut être une « fonction radiale » (RBF pour Radial Basis Func-tion), ou encore une ondelette. Exemple : fonction radiale (RBF gaussienne isotrope) :

v = wixi∑i = 0

n – 1

,

y = f w0 + wixi∑j = 1

n

.

y = f w0 + wixi∑i = 1

n – 1

.

-5

0

5

-5

0

5-1

-0.5

0

0.5

1

Figure 1-50. Sortie d’un neurone à 3 entrées {x0=1, x1, x2} munies des poids {w0=0, w1=+1, w2=–1}, dont la fonction d’activation est une tangente hyperbolique : y=th(x1 – x2).

Page 61: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 161

Les paramètres {wi, i = 1 à n} sont les coordonnées du centre de la gaussienne dans l’espace des entrées,et le paramètre wn+1 est son écart-type. La figure 1-51 représente une RBF gaussienne isotrope, centrée àl’origine, d’écart-type égal à 1/ .

RemarqueLes fonctions radiales de basetirent leur nom de ce qu’ellesforment, si elles sont convenable-ment choisies, une base de fonc-tions. Dans la pratique desréseaux de neurones, les RBF nesont jamais choisies de façon àformer une base ; nous utiliseronsdonc simplement les termes de« fonction radiale » (néanmoins,nous suivrons l’usage enemployant l’abréviation RBF).

Figure 1-51. RBF gaussienne isotrope y = exp [ – (x1

2 + x22)] :

w0 = w1 = 0, w3 = 1/

L’algorithme de Ho et KashyapL’algorithme de Ho et Kashyap permet de déterminer, en un nombre fini d’itérations, si deux ensemblesd’exemples sont linéairement séparables ; dans l’affirmative, cet algorithme fournit une solution (parmiune infinité de solutions possibles). Contrairement à certains algorithmes développés dans le chapitre 6, ilne fournit pas une solution optimisée. Son intérêt essentiel est donc de déterminer si deux classes sontlinéairement séparables, ou si elles ne le sont pas ; dans l’affirmative, on utilisera, pour trouver une bonnesolution, un des algorithmes présentés dans le chapitre 6.

Considérons deux ensembles d’exemples, appartenant à deux classes A et B, en nombre na et nb ; si lesexemples sont décrits par n descripteurs, chacun d’eux peut être représenté par un vecteur dans un espacede dimension n. On désigne par xk

a le vecteur représentatif du k-ième exemple de la classe a (k = 1 à na),et par w le vecteur des paramètres du séparateur linéaire ; si un tel séparateur existe, il doit obéir auxconditions :

xka w > 0 pour tout k,

xkb w < 0 pour tout k.

Soit M la matrice dont les lignes sont les vecteurs représentatifs des exemples de A et les opposés desvecteurs représentatifs des vecteurs de B :

(où l’exposant T désigne la transposition). Alors un séparateur linéaire existe si et seulement si il existe unvecteur w tel queM w > 0

y = exp –

xi – wi2∑

i = 1

n

2 wn + 12

.

2

-2-1

01

2

-2

-1

0

1

20

0.2

0.4

0.6

0.8

1

2

M = x1a, x2

a, ..., xna

a , – x1b, – x2

b, ..., – xnb

b T

Page 62: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones62

soit encore s’il existe un vecteur y > 0 et un vecteur w tels que M w = y.

On a alors w = M* y, où M*est la matrice pseudo-inverse de la matrice M : M* = MT (M MT)– 1, qui peutêtre calculée par la méthode de Choleski [PRESS 1992].

L’algorithme de Ho et Kashyap est le suivant :

Cet algorithme converge en un nombre fini d’itérations.

BibliographieANTONIADIS A., BERRUYER J., CARMONA R. [1992], Régression non linéaire et applications, Economica.

BARRON A. [1993], Universal approximation bounds for superposition of a sigmoidal function, IEEETransactions on Information Theory, 39, p. 930-945.

BAUM E. B., WILCZEK F. [1988], Supervised learning of probability distributions by neural networks,Neural Information Processing Systems, p. 52-61.

BENVENISTE A., JUDITSKY A., DELYON B., ZHANG Q., GLORENNEC P.-Y. [1994], Wavelets in identifica-tion, 10th IFAC Symposium on Identification, Copenhague.

BISHOP C. [1995], Neural networks for pattern recognition, Oxford University Press.

BRIDLE J. S. [1990], Probabilistic interpretation of feedforward classification network outputs, with rela-tionship to statistical pattern recognition, Neurocomputing : algorithms, architectures and applications,p. 227-236 Springer.

BROOMHEAD D. S., LOWE D. [1988], Multivariable functional interpolation and adaptive networks,Complex Systems, 2, p. 321-355.

COVER T. M. [1965], Geometrical and statistical properties of systems of linear inequalities with applica-tions in pattern recognition, IEEE Transactions on Electronic Computers, 14, p. 326-334.

DRAPER N. R., SMITH H. [1998], Applied regression analysis, John Wiley & Sons.

DUPRAT A., HUYNH T., DREYFUS G. [1998], Towards a principled methodology for neural network designand performance evaluation in QSAR ; application to the prediction of LogP, Journal of Chemical Infor-mation and Computer Sciences, 38, p. 586-594.

HAMPSHIRE J. B., PEARLMUTTER B. [1990], Equivalence proofs for multilayer perceptron classifiers andthe Bayesian discriminant function, Proceedings of the 1990 connectionist models summer school, p. 159-172, Morgan Kaufmann.

HANSCH C., LEO A. [1995], Exploring QSAR, Fundamentals and applications in chemistry and biology;American Chemical Society.

Initialisation (itération 0) : w(0) = M* y(0) où y(0) est un vecteur positif quelconque

Itération i

α(i) = M* w(i) – y(i)y(i+1) = y(i) + ρ M* (α(i)+|α(i)|) où ρ est un scalaire positif inférieur à 1w(i+1) = w(i) + ρ (α(i)+|α(i)|)Si α(i) = α(i+1) et y(i) < 0 alors les exemples ne sont pas linéairement séparables.Si α(i) = α(i+1) et y(i) > 0 alors les exemples sont linéairement séparables et w(i) est une solution.

Page 63: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones : pourquoi et pour quoi faire ?

CHAPITRE 163

HO E., KASHYAP R.L. [1965], An algorithm for linear inequalities and its applications, IEEE Transactionson Electronic Computers, 14, p. 683-688.

HOPFIELD J. J. [1987], Learning algorithms and probability distributions in feedforward and frrdbackneural networks, Proceedings of the National Academy of Sciences, 84, p. 8429-433.

HORNIK K., STINCHCOMBE M., WHITE H. [1989], Multilayer feedforward networks are universal approxi-mators, Neural Networks, 2, p. 359-366.

HORNIK K., STINCHCOMBE M., WHITE H. [1990], Universal approximation of an unknown mapping andits derivatives using multilayer feedforward networks, Neural Networks, 3, p. 551-560.

HORNIK K. [1991], Approximation capabilities of multilayer feedforward networks, Neural Networks, 4,p. 251-257.

KIM S. S., SANDERS T. H. Jr [1991], Thermodynamic modeling of phase diagrams in binary alkali silicatesystems, Journal of the American Ceramics Society, 74, p. 1833-1840.

KNERR S., PERSONNAZ L., DREYFUS G. [1990], Single-layer learning revisited : a stepwise procedure forbuilding and training a neural network, Neurocomputing : algorithms, architectures and applications, p.41-50, Springer.

KNERR S. [1991], Un méthode nouvelle de création automatique de réseaux de neurones pour la clas-sification de données : application à la reconnaissance de chiffres manuscrits, Thèse de Doctorat del'Université Pierre et Marie Curie, Paris.

KNERR S., PERSONNAZ L., DREYFUS G. [1992], Handwritten digit recognition by neural networks withSingle-layer Training, IEEE Transactions on Neural Networks, 3, p. 962-968.

LECUN Y., BOSER B., DENKER J.S., HENDERSON D., HOWARD R.E., HUBBARD W., JACKEL L.D. [1989],Backpropagation applied to handwritten zip code recognition, Neural Computation, 1, p. 541-551.

MALLAT S. [1989], A theory for multiresolution signal decomposition : the wavelet transform, IEEE Tran-sactions on Pattern Analysis and Machine Intelligence, 11, p. 674-693.

McCULLOCH W. S., PITTS W. [1943], A logical calculus of the ideas immanent in nervous activity, Bulletinof Mathematical Biophysics, 5, p. 115-133.

MARCOS S., MACCHI O., VIGNAT C., DREYFUS G., PERSONNAZ L., ROUSSEL-RAGOT P. [1992], A unifiedframework for gradient algorithms used for filter adaptation and neural network training, InternationalJournal of Circuit Theory and Applications, 20, p. 159-200.

MINSKY M., PAPERT S. [1969] Perceptrons. MIT Press.

MONARI G. [1999], Sélection de modèles non linéaires par leave-one-out ; étude théorique et applicationdes réseaux de neurones au procédé de soudage par points, Thèse de Doctorat de l'Université Pierre etMarie Curie, Paris. Disponible sur le site http://www.neurones.espci.fr.

MOODY J., DARKEN C. J. [1989], Fast learning in networks of locally-tuned processing units, NeuralComputation, 1, p. 281-294.

NERRAND O., ROUSSEL-RAGOT P., PERSONNAZ L., DREYFUS G., MARCOS S. [1993], Neural networks andnon-linear adaptive filtering : unifying concepts and new algorithms, Neural Computation, 5, p. 165-197.

OUKHELLOU L., AKNIN P. [1997], Modified Fourier Descriptors : A new parametrization of eddy currentsignatures applied to the rail defect classification, III International workshop on advances in signalprocessing for non destructive evaluation of materials.

OUKHELLOU L., AKNIN P., STOPPIGLIA H., DREYFUS G. [1998], A new decision criterion for feature selec-tion: application to the classification of non destructive testing signatures, European SIgnal ProcessingCOnference (EUSIPCO'98).

Page 64: Les réseaux de neurones : pourquoi et pour quoi faire · PDF fileLes réseaux de neurones : pourquoi et pour quoi faire ? C HAPITRE 1 3 Par exemple, la sortie d’un neurone RBF à

Les réseaux de neurones64

OUSSAR Y. [1998], Réseaux d’ondelettes et réseaux de neurones pour la modélisation statique et dyna-mique de processus, Thèse de Doctorat de l'Université Pierre et Marie Curie, Paris. Disponible sur le sitehttp://www.neurones.espci.fr.

OUSSAR Y., DREYFUS G. [2000], Initialization by selection for wavelet network training, Neurocompu-ting, 34, p. 131-143.

OUSSAR Y., DREYFUS G. [2001], How to be a gray box : dynamic semi-physical modeling, NeuralNetworks, vol. 14, p. 1161-1172.

PLOIX J. L., G. DREYFUS [1997], Early fault detection in a distillation column: an industrial application ofknowledge-based neural modelling, Neural Networks: Best Practice in Europe, p. 21-31, World Scien-tific.

POWELL M. J. D. [1987], Radial basis functions for multivariable interpolation : a review, Algorithms forapproximation, p. 143-167.

PRESS W. H., TEUKOLSKY S. A., VETTERLING W. T., FLANNERY B. P. [1992], Numerical recipes in C : theart of scientific computing, Cambridge University Press.

PRICE D., KNERR S., PERSONNAZ L., DREYFUS G. [1994], Pairwise neural network classifiers with proba-bilistic outputs, Neural Information Processing Systems, 7 , p. 1109-1116, Morgan Kaufmann.

PRICE P.E., WANG S., ROMDHANE I.H. [1997], Extracting effective diffusion parameters from dryingexperiments. AIChE Journal, 43, p. 1925-1934.

RIVALS I., CANAS D., PERSONNAZ L., DREYFUS G. [1994], Modeling and control of mobile robots and intel-ligent vehicles by neural networks, Proceedings of the IEEE Conference on Intelligent Vehicles, p. 137-142

RIVALS I. [1995], Modélisation et commande de processus par réseaux de neurones : application au pilo-tage d’un véhicule autonome, Thèse de Doctorat de l’Université Pierre et Marie Curie, Paris – Disponiblesur le site http://www.neurones.espci.fr.

ROUSSEL P., MONCET F., BARRIEU B., VIOLA A. [2001], Modélisation d’un processus dynamique à l’aidede réseaux de neurones bouclés. Application à la modélisation de la relation pluie-hauteur d’eau dans unréseau d’assainissement et à la détection de défaillances de capteurs, Innovative technologies in urbandrainage, 1, 919-926, G.R.A.I.E.

SEBER G.A.F., WILD C.J. [1989], Nonlinear regression, Wiley Series in Probability and MathematicalStatistics, John Wiley & Sons.

SINGHAL A. [1996], Pivoted length normalization. Proceedings of the 19th Annual International Confer-ence on Research and Development in Information Retrieval (SIGIR'96), p. 21-29.

STOPPIGLIA H. [1997], Méthodes statistiques de sélection de modèles neuronaux ; applications finan-cières et bancaires, Thèse de Doctorat de l’Université Pierre et Marie Curie, Paris. Disponible sur le sitehttp://www.neurones.espci.fr.

STRICKER M. [2000], Réseaux de neurones pour le traitement automatique du langage : conception etréalisation de filtres d'informations, Thèse de Doctorat de l'Université Pierre et Marie Curie, Paris. Dispo-nible sur le site http://www.neurones.espci.fr.

STRICKER M., VICHOT F., DREYFUS G., WOLINSKI F. [2001], Training context-sensitive neural networkswith few relevant examples for the TREC-9 routing, Proceedings of the TREC-9 Conference.

VAPNIK V. [1995], The nature of statistical learning theory, Springer.

WOLINSKI F., VICHOT F., STRICKER M. [2000], Using learning-based filters to detect rule-based filteringobsolescence, Conférence sur la Recherche d’Information Assistée par Ordinateur, RIAO'2000, Paris.

ZIPF G. K. [1949], Human Behavior and the Principle of Least Effort. Addison-Wesley.