• Aucun résultat trouvé

C HAPITRE 2 : C ONNEXIONNISME

2.4/ Modèles connexionnistes statiques

2.4.1/ Les perceptrons multicouches

Les perceptrons multicouches sont les réseaux à la base des méthodes connexionnistes. Ils sont, en effet, les plus employés et les plus étudiés [lippmann87], [hush93], [jodouin90]. Deux abréviations anglaises sont utilisées dans la littérature pour les nommer :MLP pourMulti Layer Perceptrons et, de manière un peu abusive,ANN,Artificial Neural Networks.

2.4.1.1/ Architecture

Un perceptron multicouche est composé de plusieurs couches de neurones et de connexions (figure 2.13). Ce nombre est au moins égal à deux, signifiant ainsi que le réseau possède deux couches de poids connexionnistes, une couche de sortie et une couche cachée. Le nombre de couches cachées détermine la complexité des frontières des différents sous-espaces que le réseau pourra représenter [lippmann87]. La complexité de l’approximation est également déterminée par le nombre de neurones de chaque couche puisque ce nombre détermine le nombre maximal d’informations que le réseau peut extraire du signal traité [makhoul89], [murata92], [priel93]. La couche d’entrée, correspondant le plus souvent à un vecteur de données issu d’une phase de prétraitement, n’est pas véritablement considérée comme appartenant au réseau.

0 1 0 0 0 0 0 1 1 1 1 1 a b a XOR b

Chapitre 2 : Connexionnisme

Figure 2.13 :Schéma d’un réseau connexionniste statique à deux couches.

La propagation de l’activité au sein de ces réseaux est très simple à calculer : il suffit d’effectuer un parcours itératif du réseau. Ainsi, pour chaque couche du réseau, de l’entrée vers la sortie, et pour chaque neurone de la couche considérée, l’activité est calculée en fonction de l’équation :

(Éq. 2.4)

Dans cette équation, qui correspond à la figure 2.6,xi représente l’activité du neuronei tandis que wji représente la valeur de la connexion synaptique entre les neuronesi etj,N est le nombre d’unités afférentes au neuronexj. Toute la connaissance acquise par le réseau lors de la phase d’apprentissage de la tâche est représentée par les valeurs des connexions synaptiques. Ces dernières représentent une solution possible permettant d’effectuer une transformation des données observées en entrée selon les valeurs qui ont été imposées par le concepteur sur les différents neurones de la couche de sortie lors de la phase de mise au point.

Cependant, les connexions ne sont pas uniques vis-à-vis d’une tâche et un réseau connexionniste n’utilisera que très rarement un ensemble de poids optimal. Un réseau connexionniste comme le perceptron est, cependant, un approximateur universel [lippmann87] qui permet, en théorie, d’implanter toute fonction mathématique non récurrente définie sur l’ensemble des réels.

2.4.1.2/ Applications possibles des perceptrons multicouches

Comme nous l’avons dit précédemment, les perceptrons multicouches sont les architectures connexionnistes les plus utilisées. De nombreux problèmes peuvent être résolus par leur intermédiaire.

Les applications qui nous intéressent le plus sont, bien sûr, celles en relation avec la reconnaissance de la parole. Le domaine n’est cependant pas réducteur car la très grande majorité des principes d’application des réseaux de neurones peuvent y être retrouvés.

Certaines applications des réseaux connexionnistes sont évidemment spécifiques à la parole. Les perceptrons peuvent ainsi servir à la segmentation de la parole [bendiksen90], [depuydt90], [cohn91], [ghiselli91], à la reconnaissance de phonèmes [harrison89], [franzini89], [leung90], [anderson91] ou de reconnaissance de mots [zhu90], [morgan91b]. Les perceptrons peuvent également être mis en œuvre dans des problèmes de reconnaissance du locuteur [hattori92] ou d’amélioration de la qualité d’un signal bruité [tamura90], [ohkura91], [sorensen91a], [sorensen91b], [trompf92]. Les perceptrons peuvent même apprendre à parler, la synthèse de parole s’effectuant à partir d’une séquences de lettres [sejnowski87] ou à partir du langage des sourds et muets par décodage des signes de l’alphabet captés par un gant désignateur [fels94].

Les neurones permettent également de faire de la prédiction. Il est possible de produire le rayonnement solaire [fessant94] tout autant que la consommation électrique journalière [muller94]. Certains essaient même de prévoir les cours de la bourse... Il est également possible de faire de la

1ère couche de poids 2ème couche de poids couche de sortie couche cachée couche d’entrée xj f wjixi i=1 N

⎝ ⎠ ⎜ ⎟ ⎛ ⎞ =

2.4/ Modèles connexionnistes statiques

prédiction en parole. La prédiction d’une trame de parole à partir d’autres qui lui sont antérieures permet de comparer le résultat de la prédiction à la trame effectivement observée, l’erreur pouvant être traitée lors d’une étape postérieure d’alignement temporel. Cette technique est aussi bien utilisée pour la prédiction de phonèmes avec les Linked Predictive Neural Network [tebelskis90], [tebelskis91] que pour la prédiction de mots avec lesNeural Prediction Model [iso90], [iso91].

Nous avons, lors du paragraphe 1.7, parlé des différentes méthodes permettant de représenter ou de synthétiser l’information présente dans le signal de parole. Cette synthèse est également possible à réaliser avec des réseaux connexionnistes. Dans ce cas, l’idée est de réaliser un réseau connexionniste possédant autant d’unités en entrée qu’en sortie. La ou les couches cachées sont par contre constituées de moins de neurones que ne le sont l’entrée et la sortie. Ceci oblige le réseau de neurones à synthétiser l’information de manière plus ou moins optimale selon le nombre de neurones alloués. Mais le processus n’est pas totalement symétrique : alors que la première couche de poids synthétise l’information de manière approximative, la dernière couche de poids utilise les informations en couche cachée pour recréer une des formes apprises dans un ensemble restreint. Cette technique [nakamura91] permet donc d’obtenir une trame qui respecte beaucoup plus une forme phonétique choisie par le concepteur que la trame qui était disponible en entrée, permettant ainsi de réduire le nombre des erreurs de classification.

Le domaine de la reconnaissance d’images est également un domaine d’application des réseaux connexionnistes comme le perceptron multicouche. Si de nombreuses tâches peuvent être résolues [wurtz94], l’application qui nous semble le plus en rapport avec le domaine de la reconnaissance de la parole est celle de la reconnaissance des chiffres manuscrits [lecun89a] [lecun89b] [doré90]. Les architectures employées donnent de très bons résultats dans le domaine industriel et sont très proches de celles employées en reconnaissance de phonèmes. Il existe par ailleurs un domaine du traitement de l’image très proche de celui de la parole : les modèles articulatoires dont nous avons déjà parlé au paragraphe 1.3.2. Ceux-ci peuvent être modélisés à l’aide de perceptrons donnant les différents coefficients du modèle articulatoire, permettant de reconstruire une image du conduit vocal, en fonction d’un spectre de signal de parole [kobayashi91].

Enfin, signalons qu’il existe tout un domaine du connexionnisme se fondant sur des données artificielles ou pseudo-réelles. Ces données sont principalement utilisées pour étudier les capacités d’apprentissage des réseaux et constituent les cas d’école (toy problems) du connexionnisme.

Un état de l’art des applications des réseaux de neurones en reconnaissance automatique de la parole pourra être trouvé dans [lippmann87] ou [waibel91].

2.4.1.3/ Extensions des perceptrons avec la notion de poids partagés

Les poids au sein d’un perceptron multicouche sont normalement totalement indépendants les uns des autres pendant et après l’apprentissage. Chaque connexion est donc associée à une valeur qui lui est propre et l’information représentée par un neurone lui est spécifique.

Cette liberté peut être contrainte pour aboutir à des réseaux dont certaines unités d’un même niveau (d’une même couche) représentent la même information. Ceci permet de rechercher une même caractéristique tout au long du flux d’information disponible, dans le cas d’un signal bidimensionnel, ou dans tout l’espace de représentation si le signal a plus de deux dimensions. Cette technique a été largement utilisée après sa présentation dans [waibel88] et [waibel89]. La principale application qui en a été faite est la reconnaissance de la parole et plus particulièrement des phonèmes.

Pour la mise en place du partage des poids, il est nécessaire d’effectuer une moyenne sur les poids arrivant à chaque ligne ou colonne de neurones des différentes couches du réseau après chaque phase de rétropropagation de l’erreur. Ce principe a tout d’abord été utilisé pour la reconnaissance de phonèmes [waibel89], [hataoka91] mais peut également être mis en œuvre pour l’extraction des caractéristiques phonétiques [bimbot90], [bimbot90] ou pour la reconnaissance du locuteur

Chapitre 2 : Connexionnisme

[bennani91].

Ce principe de partage des poids du réseau peut être poussé très loin et le nombre de couches intermédiaires peut être augmenté pour obtenir diverses spécialisations tout autant que peuvent être augmentés le nombre et la forme des partages de poids. Ainsi, alors que le TDNN, Time Delay Neural Network, effectue le partage des poids sur l’ensemble d’une ligne ou d’une colonne, il est possible de mettre en place un partage sur des sous parties de ces lignes ou colonnes. Différents types de partages ont été proposés dans [altosaar91], [komori91a], [sawai91a] où les neurones sont regroupés par sous-plaques dans chaque couche, permettant de coder localement des informations de nature géométrique. Dans le même élan, il est possible de multiplier le nombre de couches cachées. Le modèle présenté dans [waibel89] est constitué de deux couches cachées et le flux des informations à travers le réseau suit un seul chemin. Certains études ont été menées suivant un principe d’augmentation du nombre des couches cachées, en divisant le flux de données en plusieurs directions parcourant chacune un sous-ensemble des couches cachées. Ce principe permet de subdiviser les couches cachées en fonction du locuteur ou de la classe phonétique. Ce principe a tout d’abord été mis en œuvre dans [sawai91b], avant que n’apparaisse un “monstre” connexionniste cherchant à traiter tous les cas séparément, créant ainsi de nombreuses couches cachées organisées en flux distincts [nakamura92].

D’autres développements ont également été réalisés en relation avec d’autres techniques mathématiques ou de reconnaissance des formes. Il est ainsi possible d’utiliser un TDNN comme générateur d’une séquence descriptive du signal, cette séquence étant ensuite examinée par analyseur de grammaires à contexte libre. Cet analyseur permet de contraindre les réponses et permet ainsi d’obtenir de meilleurs résultats [miyatake90], [sawai91c]. Il est également possible d’utiliser un TDNN en conjonction avec un système expert, les informations extraites venant se fondre au milieu d’autres obtenues par des méthodes de traitement du signal [komori90], [komori91b]. À un niveau architectural plus fin, il est possible de modifier l’architecture TDNN de nombreuses manières. La procédure d’apprentissage peut être modifiée pour prendre en compte des informations floues [komori92], la fonction de transfert non linéaire peut être modifiée [takami91] ou l’architecture du neurone peut se voir mise en accord avec la technique des fonctions à base radiale [berthold94], plus proches de la théorie des probabilités.

L’apprentissage dans les réseaux comme le TDNN mérite une attention particulière. L’avantage de ce réseau est sa capacité à prendre en compte des informations dans un plan temporel fini qui peut cependant être assez vaste. Les poids peuvent être contraints par la simple calcul de la moyenne des poids, qui permet un apprentissage somme toute assez grossier. Plusieurs techniques d’apprentissage essaient de définir la position des délais de manière plus fine, de manière à obtenir une meilleure représentation temporelle dans les couches internes. Parmi ces algorithmes se trouvent l’algorithme Tempo 2 [bodenhausen91a], [bodenhausen91b] et une amélioration possible de celui-ci développée dans [rander92].

Les applications du TDNN ne se limitent pas à la seule reconnaissance des phonèmes. Une extension de ce réseau permet également de faire de la reconnaissance de mots. L’architecture du TDNN n’est pas intrinsèquement modifiée mais plutôt étendue par l’ajout de deux couches supplémentaires ce qui permet d’obtenir une nouvelle architecture de réseau baptisée MS-TDNN,

Multi-State Time-Delay Neural Network. Le TDNN conserve son rôle initial de classification de

phonèmes, l’ajout de la structure de reconnaissance de mots se faisant après que le TDNN ait appris à correctement faire sa tâche. La couche de sortie de la nouvelle structure permet de classer les mots tandis que la couche cachée, située entre la sortie originale du TDNN et la sortie du MS-TDNN, assure, après apprentissage, la liaison entre la classification au niveau du phonème et la classification au niveau du mot. Cette architecture a été exposée de manière étendue dans [lang90], [haffner91a], [haffner91b], [haffner92a], [haffner92b].

2.4/ Modèles connexionnistes statiques

La parole, comme nous venons de le voir tout au long de ce paragraphe, est l’application qui a le plus mis en œuvre le concept de partage des poids. Il est cependant possible de l’appliquer à la reconnaissance de caractères manuscrits avec un réseau où les poids partagés permettent de représenter des contraintes géométriques communes à l’ensemble de la plaque d’entrée, plaque où sont fournies les représentations discrètes des caractères manuscrits à reconnaître [lecun89b].

Le concept de poids partagés peut également être mis en œuvre avec les modèles à auto-organisation que nous allons voir maintenant [webber94].