• Aucun résultat trouvé

Encodage d’automates à états fi nis 6.3.6.1/ Présentation du problème

CONNEXIONNISTES RÉCURRENTS

6.3/ Réseaux connexionnistes à récurrence par plaque

6.3.6/ Encodage d’automates à états fi nis 6.3.6.1/ Présentation du problème

Nous avons, dans les paragraphes précédents, présenté quelques unes des applications possibles des réseaux connexionnistes à récurrence par plaques. Au rang de celles-ci se trouvent les applications de reconnaissance de la parole pour lesquelles ce type de réseaux a montré de bonnes capacités [robinson94]. Mais ces réseaux sont particulièrement bien adaptés à un domaine qui semble en totale adéquation avec les possibilités que procurent ce type d’architecture : la reconnaissance de séquences abstraites.

À la différence d’autres tâches où les séquencements ne sont pas toujours visibles de prime abord, la reconnaissance de séquences abstraites permet de se concentrer sur les capacités des modèles étudiés à résoudre des problèmes de reconnaissance d’ordonnancement. L’ordre est sous-jacent dans de nombreux problèmes de recherche, la reconnaissance de la parole étant au rang de ceux-ci. Et l’ordonnancement de formes abstraites conduit très naturellement à la notion plus générale de codage du temps. Certains problèmes de la RAP font explicitement appel à des notions d’ordre, tout particulièrement pour les problèmes de coarticulation. Ainsi, un phonème P1 prononcé après un autre phonème P2 pourra avoir un spectre assez différent de celui qu’il aurait eu s’il avait été prononcé après un phonèmeP3(cf. chapitre 1, paragraphe 1.6.2). Le phénomène de la coarticulation peut même avoir des incidences sur une étendue plus importante que deux phonèmes simplement contigus comme, par exemple, pour l’effet “carabine” où la liberté des articulateurs permet une anticipation et donc une déformation des formants des voyelles [pierrel91]. Ce problème de la

WHC(t+1) = (1–λ)WHC( ) λt + AH( )t AHT( )t unités de sortie unités d’entrée unités de contexte unités cachées stockage encodage extraction extractionencodage

Chapitre 6 : Réseaux connexionnistes récurrents

coarticulation peut entraîner des erreurs de classification des phonèmes lorsque les spectres sont classés dans l’absolu sans tenir compte du contexte et impose alors, pour améliorer les résultats, de mettre en place une grammaire permettant de connaître les réécritures possibles de certains phonèmes en d’autres dans une étape ultérieure à la classification.

Pour totalement isoler le problème de l’ordonnancement, certaines recherches ont été conduites sur des problèmes de reconnaissance de séquences ou de séries linéaires, permettant aux modèles étudiés de totalement s’abstraire de problèmes, annexes dans ce cas, tels que la classification de spectres. Ces recherches ont permis de tester les capacités de nombreux modèles connexionnistes. Les faibles capacités de certaines architectures et des algorithmes d’apprentissage associés ont également été démontrées grâce aux études expérimentales menées dans le domaine.

Le problème de la reconnaissance de séquences abstraites ne doit pas être confondu avec le problème de la prédiction. Il est possible de considérer la reconnaissance de séquences comme un cas dégénéré de prédiction mais, alors que la premier type de problèmes impose presque toujours de définir un automate, la prédiction ne l’impose pas. La prédiction est une tâche distincte de la reconnaissance de séquences abstraites puisque qu’elle utilise des données réelles, et donc bien souvent bruitée, telles que les séries produites par l’équation de MacKey-Glass [mackey77] qui a un comportement chaotique avec certaines valeurs de paramètres, les séries de coordonnées de courbes sinusoïdales, l’activité solaire, la consommation électrique, les séries financières et d’autres encore. Cette utilisation de données réelles, ou réalistes, implique immanquablement que la prédiction ne sera pas parfaite et qu’une marge d’erreur existera, quelque soit la qualité du modèle de prédiction. Une tâche de reconnaissance de séquences abstraites imposera, par contre, que l’automate soit parfaitement défini par le système chargé de l’implanter, le problème majeur étant, dans ce cas, que le passage d’un état à un autre ne soit pas dans un domaine trop flou.

Les problèmes de reconnaissance de séquences imposent, d’une manière générale, de définir un automate d’états fini de manière à vérifier l’exactitude de la séquence analysée par rapport aux séquences de référence. Cet automate permet de garder une mémoire, parfois approximative selon les grammaires, des événements antérieurs par la simple connaissance de l’automate et de l’état courant. Ce couple de données permet donc de réaliser une synthèse de l’information dans le plan temporel grâce, d’une part, à l’automate défini de manière fixe par l’intermédiaire des poids connexionnistes et, d’autre part, à l’état variable des unités connexionnistes. Cette synthèse de l’information permet d’éviter l’emploi d’une ligne de délais dont la profondeur devrait être égale à la longueur de la séquence à analyser. Ce dernier type de problème peut se retrouver à un niveau moindre dans les tâches de classification comme en RAP avec, par exemple, la définition du nombre correct de délais dans les modèle de type TDNN [waibel89], [bodenhausen91a] vis-à-vis de la tâche, cette adaptation permettant d’obtenir de meilleurs résultats puisqu’elle permet de disposer d’informations contextuelles de meilleure qualité [hermansky95b].

Des expériences ont par ailleurs été menées sur le problème dual qu’est la génération de séquences. Ces expériences ont déjà été mentionnées dans le paragraphe 6.3.1 et concernent le modèle de Jordan [jordan86]. Elles ont permis de vérifier la validité des architectures connexionnistes à récurrence par plaques pour ce type de problème et il semblait, dès le début des recherches dans le domaine de la reconnaissance de séquences, qu’une architecture duale à celle du modèle de Jordan permettrait de résoudre les problèmes de reconnaissance. Le modèle dual de celui de Jordan est le modèle de Elman dont nous avons parlé précédemment (paragraphe 6.3.2) mais d’autres modèles ont été utilisés pour tenter de découvrir la manière la plus efficace de coder un espace d’états en utilisant une architecture connexionniste.

6.3.6.2/ Encodage d’automates

L’encodage d’automates à l’aide de réseaux de neurones peut s’effectuer de différentes manières. La gestion d’un automate imposant d’avoir accès à l’entrée courante du système et à l’état courant de

6.3/ Réseaux connexionnistes à récurrence par plaque

l’automate, l’architecture qui semble naturellement adaptée comporte un rebouclage de la couche des états vers l’entrée du réseau, entrée qui se voit par ailleurs adjoindre une partie correspondant au codage des différents terminaux du langage. Nous avons schématisé cette architecture dans la figure 6.20. Mais cette architecture n’est évidemment pas la seule possible.

Figure 6.20 :Schéma général d’un réseau apte à l’encodage d’automates d’états fini.

Une première modification qui peut être apportée au réseau présenté dans la figure 6.20 est l’inclusion de la récurrence dans la couche de sortie. Le réseau ne ressemble alors plus à un réseau à récurrence par plaques mais plutôt à un réseau récurrent fortement connecté avec une couche d’entrée bien distincte du reste du réseau. Cette architecture a été étudiée, avec de bons résultats, dans [cummins93] et [cummins94]. La mise en place d’une couche totalement récurrente en couche de sortie peut encore être développée par l’adjonction de délais encastrés. La couche de sortie combine alors des mécanismes de représentation implicite et de représentation explicite du temps. Cette combinaison peut se voir critiquer et l’adjonction de délais pourra facilement être considérée comme une heuristique choisie à propos, mais ce choix permet d’obtenir une architecture qui a comme avantage de donner de très bons résultats dans certains cas [frasconi93]. Le mécanisme de la ligne de délais a été utilisé de manière encore plus intensive dans [giles94a] et [giles94b]. Dans ce cas, l’entrée du réseau est conservée pendantm pas de temps tandis que la sortie du réseau, qui est rebouclée en entrée, est conservée pendantn pas de temps. Le succès ou l’échec d’un tel réseau dans la phase d’apprentissage d’une tâche particulière dépendra bien sûr de l’adéquation entre les paramètres m et n et la tâche elle-même. Mais la découverte de la bonne adéquation permet d’obtenir, là encore, de très bons résultats. Ce type de mécanisme a, par ailleurs, été repris au niveau du neurone comme nous le verrons plus loin, au paragraphe 6.3.9.

Les premières architectures de la catégorie des réseaux à récurrence par plaque n’ont pas été oublié dans ces recherches. [zeng94] propose donc d’utiliser des réseaux ressemblant à ceux du modèles de Jordan pour résoudre les problèmes d’implantation d’automates dans les réseaux de neurones. La proximité entre le modèle de Jordan et le modèle exposé ici est cependant toute relative. La ressemblance entre ce dernier et une bascule RS, dont il est possible de trouver une définition dans tout bon cours de structure des ordinateurs, est d’ailleurs assez plaisante. Le modèle de Elman n’a pas non plus été oublié et son application à la reconnaissance de grammaires par implantation d’automates pourra être trouvée dans [servan91].

Le problème de l’implantation d’automates a également été l’occasion d’implanter de nouvelles architectures à récurrence par plaque. [tino95] propose ainsi une architecture qui utilise en fait deux réseaux : un premier réseau de traitement et un deuxième réseau d’arrière plan pour le stockage des états de l’automate. Alors que le premier réseau possède l’architecture générale d’un perceptron multicouche, le deuxième réseau, constitué de deux couches, permet de conserver un vecteur d’états par rebouclage. Un dépliage de la figure 6.21 supprimant les intersections de flots permet de voir que cette architecture crée en fait une temporisation d’un pas de temps entre la première et la deuxième couche du réseau principal. Le réseau secondaire tient cependant compte du vecteur de sortie du

états de l’automate (t+1)

Chapitre 6 : Réseaux connexionnistes récurrents

réseau d’états pour calculer ses nouvelles valeurs d’activation, créant ainsi une mémoire à plus d’un délai de terme. Ce réseau a prouvé avoir de bonnes capacités de modélisation [tino95] et peut être considéré comme architecturalement proche des réseaux à propagation dynamique de l’erreur (paragraphe 6.3.4).

Figure 6.21 :Réseau à récurrence par plaque pour l’encodage d’automates

(d’après [tino95]).

La compréhension des mécanismes utilisés par les réseaux pour implanter des automates n’est malheureusement pas aussi simple que avons bien voulu le faire croire au début de ce paragraphe. Si la gestion d’automates est, elle, très simple, l’implantation connexionniste d’automates s’avère en fait beaucoup plus problématique. Les réseaux connexionnistes récurrents sont, en effet, capables de simuler des systèmes dynamiques non linéaires. Mais cette modélisation est, de manière générale, imparfaite puisque l’initialisation aléatoire des poids connexionnistes du réseau et l’apprentissage d’une tâche par une méthode ne permettant pas d’atteindre l’optimum ne permettent pas d’obtenir un système final parfaitement stable.

Une étude du fonctionnement des réseaux connexionnistes récurrents pourra être trouvée dans [cummins93], [cummins94] et [casey95]. Ces études nous mènent très facilement sur des études ayant un rapport certain avec d’autres domaines tels que l’étude des systèmes oscillants avec les notions de pas de phase dynamique et de pas de phase géométrique [postma96]. Ces variations de représentation interne ont d’ailleurs poussé certaines équipes de recherche à s’orienter vers la définition d’un système à tolérance de fautes [omlin95a]. Une manière de comprendre le comportement d’un tel réseau après apprentissage peut également passer par une tentative d’extraction des règles qui ont été apprises [omlin95b]. Mais l’extraction de règles à partir d’un système connexionniste relève, nous semble-t-il, de la recherche d’un Graal bien difficile à atteindre.

Signalons enfin que certaines recherches [omlin94] ont prouvé l’importance du choix du codage des entrées, choix qui peut grandement influer sur les capacités d’encodage et, donc, de reconnaissance.