LSTM augmenté (CG-LSTM)

LSTM augmenté (CG-LSTM) 

L’intérêt des RNN réside dans leur capacité à exploiter l’information contextuelle pour passer d’une séquence d’entrée à une séquence de sortie qui soit le plus proche possible de la séquence cible. Malheureusement, pour les RNN standards l’apprentissage peut se révéler difficile et le contexte réellement exploité très local. Le problème vient du fait qu’un vecteur d’entrée ne peut avoir une influence sur les décisions futures qu’au travers des liens récurrents (et donc via la multiplication répétée par la matrice V j (cf. §1.1.3 p. 16) et l’application répétée de la fonction d’activation) et que par conséquent cette influence décroit ou augmente exponentiellement au fur et à mesure qu’on avance dans la séquence (voir Fig. 2.1a). Ce phénomène est souvent appelé vanishing gradient problem dans la littérature [123, 124] parce qu’il impacte la rétro-propagation du gradient. Dans les années 1990, de nombreuses architectures neuronales et méthodes d’apprentissage ont été testées pour essayer de contrer ce phénomène. Parmi ces méthodes on trouve des méthodes d’optimisation heuristiques qui n’utilisent pas le gradient telles que les méthodes de recuit simulé ou de propagation d’erreurs discrètes [123], l’introduction de retards explicites dans l’architecture récurrente [7, 125] ou encore la compression hiérarchique de séquences [126]. Mais l’approche qui s’est montrée la plus efficace et qui est maintenant devenue la norme pour traiter des séquences est le modèle LSTM proposé par Hochreiter et Schmidhuber en 1997 [127]. En effet, ce modèle introduit des portes logiques multiplicatives qui permettent de conserver et d’accéder à l’information  pertinente sur de longs intervalles permettant ainsi de diminuer l’impact du problème de gradient évanescent (voir Fig. 2.1b). C’est à ce type de modèle neuronal que nous nous intéressons principalement dans cette thèse et nous décrivons dans cette section le modèle LSTM standard avec l’ajout de « peepholes » tels qu’ils furent introduits par F. Gers en 2002 [128]. Ensuite nous introduisons la première contribution de cette thèse qui est une augmentation du modèle LSTM en ajoutant des liens directs entre les 3 types de portes (entrée, oubli et sortie) pour qu’elles puissent mieux coordonner leurs comportements. On appelle ce nouveau modèle Long Short-Term Memory with Coordinated Gates (CG-LSTM).

Description des modèles LSTM

Nous détaillons ici le modèle neuronal récurrent le plus fréquemment utilisé aujourd’hui : le modèle à mémoire court-terme persistante plus connu sous son acronyme anglais LSTM. Puis nous présentons la version augmentée que nous introduisons dans cette thèse.

LSTM standard

Description du modèle 

Une couche de LSTM L′′j est composée de quatre couches RNN telles que définies dans la section 1.1.3 et qui interagissent entre elles. Trois de ces couches RNN ont pour fonction de transfert la fonction logistique (et donc des sorties entre 0 et 1) et agissent comme des portes logiques contrôlant :
— la quantité d’information qui entre dans les cellules LSTM de la couche j,
— la quantité d’information qui est retenue par l’état interne des cellules d’un pas sur l’autre,
— la quantité d’information qui sort des cellules LSTM de la couche j.

La dernière des quatre couches fonctionne comme une couche RNN standard et alimente l’état interne des cellules LSTM via les portes d’entrée (voir la figure Fig. 2.2 pour une description synthétique des flux d’information). Finalement, pour modéliser les retours entre l’état interne des cellules et les 3 portes logiques introduits par F. Gers, il faut ajouter 3 vecteurs de paramètres ui ,uf ,uo ∈ R nj appelés « peepholes ». La figure Fig. 2.3 représente le fonctionnement détaillé d’une couche LSTM. Ainsi, pour une séquence de vecteurs d’entrée x(t) avec t ∈ J1, tf K, on obtient une séquence de vecteurs de sortie z(t) avec t ∈ J1, tf K en appliquant récursivement pour chaque pas de temps l’ensemble des couches L′′j , j ∈ J1, NK du réseau au vecteur de sortie de la couche précédente. Pour améliorer la lisibilité, nous omettons l’indice j indiquant que nous travaillons sur les paramètres de la couche L′′j pour tous les calculs internes à la couche j.

Rétro-propagation des erreurs 

Comme dans le cas du RNN standard, nous utilisons la technique de BPTT pour calculer les dérivées partielles de la fonction de coût C(z, c) que l’on souhaite minimiser par rapport aux différents paramètres des couches LSTM. Pour ce faire, on parcourt la séquence en remontant le temps : t : tf → 1 et pour chaque pas de temps on détermine les gradients par rapport aux paramètres. Ensuite, les gradients globaux sont obtenus en sommant les contributions de chacun des pas de temps.

Performances des CG-LSTM

Détection de la parole

Nous commençons par présenter le comparatif de quatre réseaux de neurones différents sur les différentes tâches de SAD décrites dans la section §1.2. Les quatre modèles neuronaux testés correspondent aux modèles détaillés dans les sections §1.1 et §2.1 : MLP, RNN d’Elman (dit standard), LSTM et CG-LSTM. De manière à obtenir une comparaison juste de la capacité de modélisation de chacun des ANN testés, tous les ANN utilisés sont dimensionnés pour avoir le même nombre de paramètres : 6000. Tous les RNN ont une structure bidirectionnelle telle que décrite dans la section §1.1.4 avec une seule couche récurrente et avec pour réseau de sortie un MLP avec une unique couche cachée. Dans le cas du MLP utilisé seul, la structure utilisée est la même que pour le réseau de sortie des RNN bidirectionnels : une seule couche cachée dont la taille est augmentée de façon à atteindre le nombre total de paramètres fixé. La description détaillée de l’intégration de ces différents ANN dans un système de SAD est donnée dans le Chapitre 3 avec le détail de la méthode d’apprentissage. Les algorithmes utilisés pour optimiser les paramètres des ANN sont quant à eux décrits dans la section §6.1.

Les différents ANN sont comparés sur cinq tâches de détection de la parole : minimisation du FER sur les données REPERE, AMI, Game of Thrones et le corpus vietnamien du programme Babel ; et minimisation du DCF sur les données de l’évaluation OpenSAD’15. Nous avons ainsi optimisé les quatre ANN pour ces tâches et les résultats obtenus sur les différents corpus sont détaillés dans le tableau Tab. 2.1. Il est important de préciser que pour ces tests le module de lissage des décisions (cf. §1.2.1) est désactivé de manière à obtenir un meilleur aperçu des capacités brutes des différents modèles neuronaux.

Nous pouvons ainsi voir que les RNN se montrent particulièrement adaptés aux tâches de SAD puisque, en permettant d’exploiter le contexte temporel librement, ces modèles sont capables d’améliorer très notablement les décisions prises localement à chaque pas de temps. On observe ainsi une diminution des taux d’erreurs allant jusqu’à 42% relatif entre le MLP et le plus simple des modèles récurrents sur les données du corpus AMI. Nous constatons aussi que le modèle récurrent le plus performant est le modèle CG-LSTM que nous avons introduit dans la section §2.1.2. En effet, ce modèle, quand on le compare au modèle LSTM standard, permet d’améliorer les taux d’erreurs de 5% relatif sur les corpus AMI et REPERE, de 10% relatif sur le corpus OpenSAD’15 et permet d’obtenir une performance équivalente sur les corpus Game of Thrones et Babel.

Identification de la langue

Nous avons ensuite comparé les différents types d’ANN sur une tâche simple d’identification de la langue : séparer une langue (l’arabe) de toutes les autres. Pour que la comparaison soit équitable nous utilisons les mêmes entrées pour tous les ANN testés et nous fixons le nombre de paramètres pour chacun des réseaux à 50k.  Comme pour la segmentation parole/non-parole tous les RNN ont une structure bidirectionnelle telle que décrite dans la section §1.1.4 avec une seule couche récurrente et pour réseau de sortie un MLP avec une unique couche cachée. Dans le cas du MLP utilisé seul, la structure utilisée est la même que pour le réseau de sortie des RNN bidirectionnels : une seule couche cachée dont la taille est augmentée de façon à atteindre le nombre total de paramètres fixé.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction
1 Contexte et conditions expérimentales
1.1 Réseaux de neurones
1.1.1 Perceptron multi-couches
1.1.2 Réseaux de neurones profonds
1.1.3 Réseaux de neurones récurrents
1.1.4 RNN bidirectionnel
1.2 Détection de la parole
1.2.1 Algorithmes de détection de parole
1.2.2 Conditions expérimentales (SAD)
1.3 Identification de la langue
1.3.1 Algorithmes d’identification de la langue
1.3.2 Conditions expérimentales (IdL)
2 LSTM augmenté (CG-LSTM)
2.1 Description des modèles LSTM
2.1.1 LSTM standard
2.1.2 Coordination des portes
2.2 Performances des CG-LSTM
2.2.1 Détection de la parole
2.2.2 Identification de la langue
2.3 Conclusion
3 Apprentissage d’un RNN pour la détection de parole
3.1 Processus d’optimisation
3.1.1 Algorithmes d’optimisation
3.1.2 Fonctions de coût
3.2 Algorithmes de Segmentation à base de RNN
3.3 Expérimentations
3.3.1 Minimisation du FER
3.3.2 Minimisation du WER
3.3.3 OpenSAD’15
3.3.4 Autres types de données
3.4 Conclusion
4 Apprentissage D&C pour les problèmes multi-classe
4.1 Diviser pour régner (D&C)
4.2 Expérimentations
4.2.1 Utilisation des RNN pour l’identification de la langue
4.2.2 Résultats pour l’évaluation LRE-07
4.2.3 Résultats pour l’évaluation LRE-15
4.3 Conclusion
5 Projection vectorielle pour les problèmes multi-classe
5.1 Projection vectorielle par RNN
5.2 Fonction de coût de proximité angulaire
5.3 Expérimentations
5.3.1 Utilisation des RNN pour l’identification de la langue
5.3.2 Résultats pour l’évaluation LRE-07
5.3.3 Résultats pour l’évaluation LRE-15
5.4 Conclusion
6 Outils d’optimisation et bonnes pratiques
6.1 Outils d’optimisation
6.1.1 Descente de gradient
6.1.2 Optimisation heuristique
6.2 Bonnes pratiques
6.2.1 Généralisation
6.2.2 Choix de représentation des entrées
6.2.3 Initialisation des poids d’un ANN
6.2.4 Mini-batch
6.2.5 Segmentation et points de vue multiples
6.2.6 Augmentation des données
Conclusion

Lire le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *