• Aucun résultat trouvé

Du signal au concept : réseaux de neurones profonds appliqués à la compréhension de la parole

N/A
N/A
Protected

Academic year: 2021

Partager "Du signal au concept : réseaux de neurones profonds appliqués à la compréhension de la parole"

Copied!
193
0
0

Texte intégral

(1)

HAL Id: tel-03177996

https://tel.archives-ouvertes.fr/tel-03177996

Submitted on 23 Mar 2021

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires

Du signal au concept : réseaux de neurones profonds

appliqués à la compréhension de la parole

Antoine Caubriere

To cite this version:

Antoine Caubriere. Du signal au concept : réseaux de neurones profonds appliqués à la compréhen-sion de la parole. Informatique et langage [cs.CL]. Université du Maine, 2021. Français. �NNT : 2021LEMA1001�. �tel-03177996�

(2)

T

HÈSE DE DOCTORAT DE

L’UNIVERSITÉ DU MANS

ÉCOLE DOCTORALE N° 601

Mathématiques et Sciences et Technologies de l’Information et de la Communication Spécialité : Informatique

Par

Antoine CAUBRIÈRE

Du signal au concept : Réseaux de neurones profonds appliqués à la

compréhension de la parole

Thèse présentée et soutenue à Le Mans Université, LIUM, le 29 Janvier 2021

Unité de recherche : Laboratoire d’Informatique de l’Université du Mans (LIUM) - EA 4023 Thèse N° : 2021LEMA1001

Rapporteurs avant soutenance :

Mme. Irina ILLINA Maître de conférence - HDR, Université de Lorraine - LORIA / INRIA M. Benoit FAVRE Maître de conférence - HDR, Aix-Marseille Université - LIS

Composition du Jury :

Examinateur : M. François PORTET Professeur, Université Grenoble Alpes - LIG

Dir. de thèse : M. Yannick ESTÈVE Professeur, Avignon Université - LIA Co-dir. de thèse : M. Emmanuel MORIN Professeur, Université de Nantes - LS2N

Co-enc. de thèse : M. Antoine LAURENT Maître de conférence, Le Mans Université - LIUM

(3)
(4)

R

EMERCIEMENTS

Je tiens tout d’abord à remercier l’ensemble des membres de mon jury de thèse pour avoir accepté de rapporter et d’examiner les travaux présentés dans ce manuscrit. Merci à tous pour l’intérêt que vous portez à mes travaux et pour votre temps.

Je remercie très chaleureusement mon directeur de thèse, Yannick Estève, pour sa grande disponibilité, son soutien et ses nombreux conseils avisés. L’ensemble de nos discussions m’ont énormément apportées, tant sur le plan scientifique que personnel. Elles ont constitué un élé-ment primordial à l’accomplisseélé-ment de cette thèse. Mes remercieélé-ments les plus sincères vont également à mon co-directeur de thèse, Emmanuel Morin, pour sa clairvoyance, ses encoura-gements, ainsi que sa patience. Ses propositions ont toujours été intéressantes et m’ont guidé vers des directions prometteuses. Je remercie aussi mon co-encadrant, Antoine Laurent, pour son expérience qu’il m’a apportée et qui a été nécessaire à la réussite de ce travail de thèse.

Je souhaite exprimer ma gratitude à l’ensemble des personnes avec qui j’ai eu la chance de collaborer. Je pense particulièrement à Natalia Tomashenko, Natalie Camelin, Sahar Ghannay, Sophie Rosset, Edwin Simonnet et Renato De Mori. Travailler avec vous m’a beaucoup appris.

J’adresse mes plus vifs remerciements à toutes les personnes que j’ai rencontrées au LIUM, pour votre aide précieuse et tous les bons moments partagés au cours de cette thèse. Je pense notamment à, Rajoua Anane, Adrien Bardet, Amira Barhoumi, Emmanuelle Billard, Fethi Bou-gares, Rémi Bouvet, Pierre-Alexandre Broux, Ozan Caglayan, Gaëtan Caillaut, Pierre Cham-pion, Nicolas Dugué, Grégor Dupuy, Anne-Cécile Erreau, Bruno Jacob, Malik Koné, Anthony Larcher, Martin Lebourdais, Daniel Luzzati, Salima Mdhaffar, Sylvain Meignier, Étienne Mi-coulaut, Valentin Pelloin, Simon Petitrenaud, Thibault Prouteau, Dominique Py, Marie Tahon, Thomas Thebaud, Kévin Vythelingum, Jane Wottawa. C’est une réelle chance d’avoir pu in-tégrer un laboratoire offrant un environnement de cette qualité, propice au développement personnel et professionnel.

Je n’oublie pas l’ensemble des personnes que j’ai rencontrées au LIA, le Laboratoire d’Infor-matique de l’université d’Avignon. Je tiens à vous remercier sincèrement pour votre accueil chaleureux, votre formidable énergie positive et tous les bons moments partagés. Je pense particulièrement à Sondes Abderrazek, Carlos González, Adrien Gresse, Thibault Grousset, Mayeul Mathias, Teva Merlin, Luis Moreno Jimenez, Tesnim Naceur, Paul-Gauthier Noe, Ti-touan Parcollet, Céline Portalier, Matthieu Riou, Cyril Sahuc, Thierry Vallet. C’est une grande chance d’avoir pu passer ces mois parmi vous.

(5)

Je remercie sincèrement ma famille et mes amis, qui ont su être présents, m’encourager et me soutenir moralement sans faille tout au long de cette thèse. Je pense spécialement à mes parents, mais aussi à Anthony, Bill, Francisque, Gaëlle, Gwladys, Ha, Halyna, Laura, Manon, Marie, Marine, Mathias, Thomas.

Enfin, je tiens à adresser mes remerciements les plus sincères envers toutes les personnes que je n’ai pu citer et qui ont fait partie de cette aventure. Je mesure la chance d’avoir pu réaliser une thèse dans ces conditions et aussi bien entouré.

À vous tous, merci !

(6)

T

ABLE DES MATIÈRES

Introduction 19

I Contexte et État de l’art 23

1 Réseau neuronal profond 24

1.1 Perceptron . . . 26

1.2 Perceptron multicouche . . . 27

1.3 Apprentissage Automatique . . . 28

1.3.1 Algorithme de descente du gradient . . . 28

1.3.2 Algorithme de Rétropropagation . . . 30

1.4 Optimisation de l’apprentissage . . . 32

1.4.1 Momentum . . . 32

1.4.2 Algorithmes d’optimisation adaptatifs . . . 33

1.4.3 Initialisation des paramètres neuronaux . . . 35

1.4.4 Régularisation des réseaux . . . 36

1.5 Spécificités de l’apprentissage neuronal . . . 41

1.5.1 Disparition / Explosion du gradient . . . 41

1.6 Modélisation de séquences . . . 42

1.6.1 Réseau récurrent . . . 43

1.6.2 Réseau neuronal convolutif . . . 45

1.6.3 Architecture Encodeur-Décodeur . . . 46

1.6.4 Transformers . . . 47

1.7 Conclusion . . . 48

2 Reconnaissance de la parole 49 2.1 Définition . . . 50

2.2 Modélisation acoustique Markovienne . . . 51

2.2.1 Modèles de Markov cachés . . . 52

2.2.2 Modèles à mélange de gaussiennes . . . 53

2.2.3 Modèles neuronaux profonds . . . 53

2.3 Modélisation du langage . . . 54

(7)

TABLE DES MATIÈRES

2.3.2 Modèles neuronaux . . . 55

2.4 Approches neuronales de bout en bout . . . 56

2.4.1 Classification Temporelle Connectionniste . . . 57

2.4.2 Algorithme de Beam Search . . . 57

2.4.3 Architecture encodeur-décodeur avec attention . . . 58

2.5 Évaluation de la reconnaissance de la parole . . . 60

2.6 Choix technologiques pour cette thèse . . . 60

2.7 Conclusion . . . 61

3 Compréhension de la parole 63 3.1 Compréhension du langage appliquée à la parole . . . 64

3.1.1 Définition . . . 64

3.1.2 Chaîne de traitements successifs . . . 65

3.1.3 Reconnaissance des entités nommées . . . 66

3.1.4 Extraction de concepts sémantiques . . . 67

3.1.5 Autres tâches de compréhension . . . 68

3.2 Approches historiques d’étiquetage . . . 69

3.2.1 Automates à états finis . . . 70

3.2.2 Machines à vecteurs de support . . . 71

3.2.3 Champs aléatoires conditionnels . . . 72

3.3 Approches neuronales . . . 74

3.3.1 Représentation vectorielle des mots . . . 74

3.3.2 Réseaux de neurones récurrents . . . 75

3.3.3 Combinaison aux champs aléatoires conditionnels . . . 76

3.3.4 Exploitation des mécanismes d’attention . . . 76

3.4 Évaluation des performances d’un système de compréhension du langage . . . . 77

3.4.1 Précision, Rappel et F-Mesure . . . 77

3.4.2 Évaluation des entités nommées . . . 78

3.4.3 Évaluation des concepts sémantiques . . . 80

3.5 Impact des transcriptions automatiques . . . 81

3.6 Conclusion . . . 82

4 Ensembles de données 83 4.1 Les corpus ESTER . . . 84

4.1.1 ESTER 1 . . . 85

4.1.2 ESTER 2 . . . 86

4.1.3 Formalisme d’annotation en entités nommées ESTER . . . 86

(8)

TABLE DES MATIÈRES

4.2.1 Formalisme d’annotation en entités nommées QUÆRO . . . 88

4.3 ETAPE . . . 91

4.4 EPAC . . . 93

4.5 REPERE . . . 93

4.6 Les corpus MEDIA et PORTMEDIA . . . 94

4.6.1 MEDIA . . . 94

4.6.2 PORTMEDIA . . . 95

4.6.3 Formalisme d’annotation en concepts sémantiques . . . 96

4.7 DECODA . . . 97

4.8 Répartition des données au sein de cette thèse . . . 97

II Contributions 99 5 Reconnaissance d’entités nommées 100 5.1 Contexte des travaux : ETAPE . . . 102

5.1.1 Résultats de la campagne . . . 102

5.2 REN structurée par chaîne de composants . . . 103

5.2.1 Déploiement d’un système de RAP intégrant un modèle neuronal . . . . 103

5.2.2 Déploiement d’un système de REN intégrant un modèle neuronal . . . . 104

5.2.3 Limite du formalisme BIO . . . 104

5.2.4 Implémentation en trois niveaux . . . 105

5.2.5 Expérimentations et résultats . . . 107

5.3 REN simplifiée de bout en bout . . . 111

5.3.1 Définition de la tâche simplifiée . . . 112

5.3.2 Système DeepSpeech 2 . . . 112

5.3.3 Alignement de parole et de transcriptions enrichies . . . 113

5.3.4 Expérimentations et résultats . . . 114

5.4 REN structurée de bout en bout . . . 119

5.4.1 Mise en œuvre de DeepSpeech 2 . . . 119

5.4.2 Extension du transfert d’apprentissage . . . 120

5.4.3 Expérimentations et résultats . . . 120

5.4.4 Comparaison avec l’approche en chaînes de composants . . . 122

5.5 Conclusion . . . 123

6 Extraction de concepts sémantiques 125 6.1 Application de l’approche de bout en bout à l’extraction concepts sémantiques . 126 6.1.1 Approche par chaîne de composants . . . 127

(9)

TABLE DES MATIÈRES

6.1.2 Premiers résultats avec une approche de bout en bout . . . 129

6.2 Transfert d’apprentissage piloté par une stratégie de curriculum . . . 132

6.2.1 Apprentissage par curriculum . . . 133

6.2.2 Association du transfert et du curriculum d’apprentissage . . . 133

6.2.3 Expérimentations et résultats . . . 134

6.2.4 Analyse de l’apport des Entités Nommées . . . 137

6.3 Impact de la profondeur du modèle . . . 140

6.3.1 Comparaison de l’approche proposée avec une approche par chaîne de composants . . . 142

6.4 Conclusion . . . 143

7 Analyse d’erreurs et exploitation de représentations internes 145 7.1 Contexte de l’analyse . . . 146

7.2 Analyse d’erreurs . . . 147

7.2.1 Distribution des types d’erreurs . . . 147

7.2.2 Problème de reconnaissance des mots . . . 150

7.2.3 Problème de segmentation en concept . . . 151

7.3 Analyse de représentations internes . . . 153

7.3.1 Extraction des représentations . . . 153

7.3.2 Visualisation des représentations . . . 154

7.3.3 Entraînement de classifieurs externes . . . 156

7.4 Mesure de confiance . . . 159

7.4.1 Extraction de la mesure de confiance . . . 160

7.4.2 Expérimentations et résultats . . . 161 7.5 Conclusion . . . 164 8 Conclusion et perspectives 165 8.1 Conclusion . . . 165 8.2 Perspectives . . . 167 Annexes 171 Références personnelles 173 Références 175

(10)

T

ABLE DES FIGURES

1.1 L’apprentissage profond au sein de l’IA . . . 25 1.2 Schéma du perceptron de Rosenblatt . . . 26 1.3 Schéma d’un perceptron multicouche quelconque. . . 28 1.4 Représentation de la descente de gradient sur une fonction de coût à deux

para-mètres. . . 29 1.5 Exemple de courbes du résultat d’une fonction de coût en fonction du nombre

d’itérations. En bleu, l’ensemble de validation, en vert l’ensemble d’apprentissage. 37 1.6 Représentation du dropout avec P = 0, 5. À gauche un système quelconque sans

dropout. À droite le même système avec l’application d’un dropout. . . 39 1.7 Représentation d’un réseau neuronal récurrent. Chaque carré représente

l’entiè-reté d’une couche. À gauche, le principe de récurrence. À droite, une représen-tation équivalente entre le temps t-1 et le temps t+1 . . . 43 1.8 Représentation d’une cellule LSTM. En bleu la porte d’oubli, en vert la porte

d’entrée et en rouge la porte de sortie. La mémoire interne de la cellule est re-présentée par Ct. . . 45 1.9 Représentation d’une architecture encodeur-décodeur. En vert, l’encodeur à un

instant t, en rouge, le décodeur à un instant t et en bleu le vecteur de contexte produit par l’encodeur. . . 46 2.1 Représentation d’un système de reconnaissance de la parole [Ghannay2017]. . 51 2.2 Représentation d’un modèle acoustique exploitant des modèles de Markov

ca-chés pour le motsalut [Vythelingum2019]. . . 52 2.3 Représentation d’un système HMM-DNN pour la modélisation acoustique de la

parole [Samson Juan2015]. . . 54 2.4 Représentation du fonctionnement de la fonction de coût CTC. . . 58 3.1 Représentation d’une chaîne de traitements dédiés à la tâche de compréhension

de la parole. L’annotation appliquée sur les transcriptions automatiques corres-pond à une tâche de segmentation et de classification sémantique. . . 66 3.2 Exemple de transducteurs à états finis extrait de [Raymond2005]. . . 71 3.3 Représentation d’un champ aléatoire Markovien à quatre variables.

(11)

TABLE DES FIGURES

3.4 Représentation de la structure d’un champ aléatoire conditionnel.

Représenta-tion issue del’article de A. Prasad, 2019. . . . 73

4.1 Répartition des données dans le corpus ESTER 1 exprimée en heures . . . 85

4.2 Répartition des données du corpus ESTER 2 exprimée en heures . . . 86

4.3 Répartition des données du corpus QUÆRO exprimée en heures . . . 88

4.4 Exemple de la structure QUÆRO des entités nommées. En bleu les annotations de catégories, en vert les annotations de composants . . . 89

4.5 Répartition des catégories d’entités nommées des données QUÆRO . . . 91

4.6 Répartition des données dans le corpus ETAPE exprimée en heures . . . 92

4.7 Répartition des catégories d’entités nommées des données ETAPE . . . 92

4.8 Répartition des données dans le corpus EPAC exprimée en heures . . . 93

4.9 Répartition des données dans le corpus REPERE exprimée en heures . . . 93

4.10 Répartition des données dans le corpus MEDIA exprimée en heures en fonction de la partie utilisateur et de la partie système. . . 94

4.11 Répartition des données dans le corpus PORTMEDIA exprimée en heures en fonction de la partie utilisateur et de la partie système. . . 95

4.12 Répartition des données dans le corpus DECODA exprimée en heures. . . 97

4.13 Répartition des données dans le regroupement des corpus exprimée en heures. . 98

5.1 Triple représentation d’une séquence, en haut la séquence de mots enrichie en entités nommées, à gauche la représentation de l’arborescence de l’annotation et à droite l’annotation BIO concaténée. En bleu, le premier niveau, en vert, le deuxième et en rouge, le dernier. . . 106

5.2 Représentation schématique de l’implémentation proposée en 3 niveaux. Chaque système de REN mis en œuvre à sa charge un niveau d’annotation. . . 107

5.3 Exemple de séquence enrichie en entités nommées. Une séquence complète au-dessus, sa version après application de nos transformations en dessous. . . 112

5.4 Représentation du système neuronale DeepSpeech 2. . . 113

5.5 Exemple d’enrichissement en entités nommées d’une séquence. . . 114

6.1 Représentation schématique de la chaîne d’apprentissages successifs en quatre étapes. Les couleurs représentent un type de couche neuronale, en orange, les couches CNN, en bleu, les couches bLSTM, en jaune, la couche linéaire, et en vert, la couche softmax. "C" représente les poids conservés et "R" représente la couche réinitialisée. . . 135

6.2 Impact par concepts sur le nombre d’erreurs en fonction de l’utilisation des en-tités nommées dans la chaîne d’apprentissage. . . 138

(12)

TABLE DES FIGURES

7.1 Distribution des erreurs de notre approche de bout en bout pour l’ensemble de développement de MEDIA. Extraction des 30 concepts sémantiques avec le plus d’erreurs. . . 148 7.2 Distribution des erreurs de la chaîne de composants pour l’ensemble de

dévelop-pement de MEDIA. Extraction des 30 concepts sémantiques avec le plus d’erreurs.149 7.3 Représentation d’une séquence pour l’entraînement d’une tâche de segmentation. 152 7.4 Représentation de l’extraction des représentations de caractères à chaque temps

t. Exemple pour une extraction de la dernière couche récurrente du système. . . 153

7.5 Exemple de sorties immédiates du système pour la séquence "si [ l’ hôtel > { est près du > ( stade >". En rouge, les représentations internes sélectionnées pour re-présenter les concepts associés. [ correspond au conceptnom-hotel, { correspond

àlocalisation-distanceRelative et ( correspond à localisation-lieuRelatif. . . 154

7.6 Visualisation des représentations de concepts sémantiques par projection t-SNE pour l’ensemble de développement de MEDIA. À gauche, la coloration des points représente la classe sémantique associée à la projection. À droite, la couleur verte représente les concepts correctement émis par le système et la couleur rouge re-présente les erreurs. . . 155 7.7 Schéma de la mise en œuvre de notre classifieur externe sur les représentations

internes de notre système de bout en bout. Le système principal de compréhen-sion de la parole est encadrée en bleu et le classifieur externe encadré en vert. . 157 7.8 Représentation de l’extraction de la mesure de confiance proposée. [ correspond

au conceptnom-hotel, { correspond à localisation-distanceRelative et ( correspond

àlocalisation-lieuRelatif. . . 160

7.9 Précision en fonction du rappel des concepts sémantiques après application d’un filtrage par seuil de confiance sur l’ensemble de tests de MEDIA pour les concepts émis dans le cadre du système normal (1. dans la table 7.1). Seuil appliqué de 0

à 1 par pas de 10−6. . . 161 7.10 Précision en fonction du rappel des concepts sémantiques après application d’un

filtrage par seuil de confiance sur la mesure produite par un classifieur bLSTM, pour l’ensemble de tests de MEDIA. Seuil appliqué de 0 à 1 par pas de 10−6. . . 162

(13)
(14)

L

ISTE DES TABLEAUX

4.1 Description du schéma d’annotation ESTER . . . 88 4.2 Description du schéma d’annotation QUÆRO : catégories . . . 90 4.3 Description du schéma d’annotation QUÆRO : composants . . . 90 4.4 Composition des données QUÆRO en nombre de mots, d’entités nommées et de

composants . . . 91 4.5 Composition des données ETAPE en nombre de mots, d’entités nommées et de

composants . . . 92 4.6 Concepts sémantiques MEDIA / PORTMEDIA . . . 96 5.1 Résultats expérimentaux de l’implémentation en trois niveaux, exprimés en SER

pour l’ensemble de test d’ETAPE. . . 110 5.2 Résultats expérimentaux des mises à jour des chaînes de composants, exprimés

en SER pour l’ensemble de test d’ETAPE. . . 110 5.3 Résultats exprimés en précision, rappel et F-mesure pour la détection de type

entités nommées. . . 116 5.4 Résultats exprimés en Précision, Rappel et F-mesure pour la détection de type

entités nommées et leurs valeurs. . . 117 5.5 Résultats exprimés en Précision, Rappel et F-mesure pour la REN sur l’ensemble

de test. Comparaison de l’approche augmentée et de l’approche augmentée en mode étoile. . . 118 5.6 Résultats exprimés en Précision, Rappel et F-mesure pour la REN simplifiée avec

une chaîne de composants composée de DeepSpeech 2 (DS2) et NeuroNLP2. Les résultats encadrés par des guillemets sont reportés de la table 5.5. . . 119 5.7 Résultats exprimés en SER pour l’approche de bout en bout avec et sans

utilisa-tion de l’extension de l’apprentissage par transfert sur l’ensemble de test ETAPE. 121 5.8 Résultats exprimés en SER pour l’approche de bout en bout par utilisation de

modèle de langage sur l’ensemble de test d’ETAPE. . . 121 5.9 Résultats exprimés en SER pour l’approche de bout en bout par utilisation de

notre augmentation de données automatique sur l’ensemble de test d’ETAPE. . . 122 5.10 Résultats reportés de notre référence ETAPE, meilleure chaîne de composants

et meilleur système de bout en bout. Exprimés en SER sur l’ensemble de tests d’ETAPE. . . 123

(15)

LISTE DES TABLEAUX

6.1 Résultats expérimentaux d’une chaîne de composants état de l’art appliquée à l’ensemble de test de MEDIA. . . 128 6.2 Résultats expérimentaux de l’extraction de concepts sémantiques de bout en

bout pour les ensembles de développement et de test de MEDIA. . . 130 6.3 Résultats expérimentaux de l’extraction de concepts sémantiques de bout en

bout pour les ensembles de développement et de test de MEDIA. Exploitation de l’algorithme Beam Search et d’un modèle de langage 5-gramme. . . 130 6.4 Résultats expérimentaux de l’extraction de concepts sémantiques de bout en

bout pour l’ensemble de test de MEDIA par l’utilisation de modèle de langage 5-gramme et du mode étoile. . . 131 6.5 Résultats expérimentaux de l’extraction de concepts sémantiques pour l’ensemble

de développement et de test de MEDIA avec une chaîne d’apprentissage incorpo-rant les entités nommées. Les résultats encadrés par des guillemets sont reportés de la table 6.2. . . 136 6.6 Résultats expérimentaux pour une chaîne d’apprentissage incorporant les

en-tités nommées sur l’ensemble de développement et de test de MEDIA, par ex-ploitation du beam search avec un modèle de langage 5-gramme. Les résultats encadrés par des guillemets sont reportés de la table 6.3. . . 136 6.7 Résultats expérimentaux pour une chaîne d’apprentissage incorporant les

enti-tés nommées sur l’ensemble de développement et de test de MEDIA, par exploi-tation du beam search avec un modèle de langage 5-gramme et du mode étoile. Les résultats encadrés par des guillemets sont reportés de la table 6.4. . . 137 6.8 Nombre de couples concept/Valeur, n’apparaissant pas dans l’ensemble

d’ap-prentissages, correctement reconnus au sein de l’ensemble de développement de MEDIA. . . 139 6.9 Résultats expérimentaux exprimés en CER et CVER sur l’ensemble de test de

MEDIA, pour différentes profondeurs du système. Le résultat encadré par des guillemets est reporté des tables 6.5 et 6.6. . . 141 6.10 Résultats expérimentaux exprimés en CER et CVER suite à la modification du

nombre de couches cachées en cours d’entraînement. Les résultats encadrés par des guillemets sont reportés de la table 6.9. . . 141 6.11 Résultats expérimentaux exprimés en CER et CVER pour des chaînes

d’appren-tissages optimisées en profondeur et l’utilisation du mode étoile. . . 142 6.12 Comparaison des approches à chaînes de composants et de bout en bout. Report

(16)

LISTE DES TABLEAUX

7.1 Résultats de notre approche de bout en bout exploitée pour l’analyse des erreurs de sorties sur l’ensemble de développement de MEDIA. Ces résultats sont repor-tés des tables 6.5, 6.6 et 6.7. . . 147 7.2 Résultats de notre approche de bout en bout exploitée pour l’analyse des

er-reurs de sorties sur l’ensemble de tests de MEDIA. Ces résultats sont reportés des tables 6.5, 6.6 et 6.7. . . 147 7.3 Nombre d’erreurs de suppression en fonction de la transcription automatique.

Résultats de l’analyse sur l’ensemble de développement de MEDIA. . . 151 7.4 Résultats de l’approche de bout en bout exploitant une tâche de segmentation

pour les sorties neuronales immédiates (greedy). Les résultats encadrés par des guillemets sont reportés de la table 6.5. . . 152 7.5 Résultats de l’approche de bout en bout exploitant une tâche de segmentation

après exploitation d’un modèle de langage 5-gramme (beam search). Les résul-tats encadrés par des guillemets sont reportés de la table 6.6. . . 152 7.6 Comparaison des représentations moyennées et des séquences de représentation

en entrée des classifieurs externes, en fonction de la précision sur l’ensemble de développement de MEDIA. Représentation interne extraite du système principal pour les concepts sémantiques correctement reconnus. . . 158 7.7 Fiabilité en score NCE des mesures de confiance produites par le classifieur

bL-STM pour chacun des deux modes du système de compréhension de la parole, sur les ensembles de développement et de test de MEDIA. . . 163 8.1 Principaux résultats de nos contributions autour des entités nommées (ces

ré-sultats sont issus de la table 5.10) . . . 166 8.2 Principaux résultats de nos contributions autour des concepts sémantiques (ces

résultats sont issus de la table 6.12). . . 167 8.3 Résultats de fiabilité des mesures de confiance produites par le classifieur

ex-terne (ces résultats sont reportés de la table 7.7). . . 167 8.4 Estimation du temps de calcul et de la consommation énergétique associée pour

(17)
(18)

A

CRONYMES

AdaGrad Adaptative Gradient

Adam Adaptative Moment estimation

CER Taux d’erreur sur les concepts, (Concept Error Rate)

CNN Réseau de neurone convolutionel, (Convolutional Neural Network)

CRF Champs aléatoire conditionnel, (Conditionnal Random Fields)

CTC Classification temporelle connexionniste, (Connectionist Temporal Classification)

CVER Taux d’erreur sur les concepts et leurs valeurs, (Concept Value Error Rate)

DNN Réseau de neurone profond, (Deep Neural Network)

EN Entités Nommées

EM Expectation Maximization ETER Entity Tree Error Rate

FSM Automates à états finis, (Finite State Machine)

GMM Modèle à mélange de gaussiennes, (Gaussian Mixture Model)

GRU Gated Recurrent Unit

HMM Modèle de Markov caché, (Hidden Markov Model)

IA Intelligence Artificielle

LSTM Réseau récurrent à mémoire court et long terme, (long-short term memory)

MFCC Mel-Frequency Cepstral Coefficient

MLP Perceptron multicouches, (MultiLayer Perceptron)

MUC Message Understanding Conference

NCE Cross-Entropie Normalisée, (Normalized Cross-Entropy)

OOV Out Of Vocabulary

RAP Reconnaissance Automatique de la Parole ReLU Rectified Linear Unit

REN Reconnaissance des Entités Nommées

RNN Réseau de neurone récurrent, (Recurent Neural Network)

RNN-LM Recurrent Neural Network Language Model

SVM Machine à vecteur de support (Support Vector Machine)

t-SNE t-Distributed Stochastic Neighbor Embedding

TDNN Réseau de neurone à retardement, (Time-Delay Neural Network)

UCV Unseen Concept-Value pairs

(19)
(20)

I

NTRODUCTION

Cette thèse s’inscrit dans le contexte de la compréhension automatique de la parole. Ces dernières années, la compréhension de la parole a suscité et continue de susciter un vif intérêt, tant dans un cadre de recherche que d’applications industrielles. En effet, la recherche dans ce domaine rend possible l’automatisation de tâches jusque là réservées à l’humain, comme la segmentation et l’identification de thème de documents audios, ainsi que le résumé auto-matique de l’information essentielle. L’intérêt pour l’automatisation de ces tâches provient du flux toujours grandissant de documents et d’informations générés et partagés de nos jours. Les travaux de recherche en compréhension de la parole facilite également les interactions humain-machine. Nous pensons notamment aux objets connectés, tels que les assistants per-sonnels, ainsi que des services téléphoniques automatisés, comme la réservation d’hôtel ou de place de théâtre.

Dans un cadre général, la compréhension de la parole peut être définie comme la tâche d’interprétation des signes véhiculés par un signal de parole [De Mori2007]. Elle consiste en la projection d’informations de la dimension acoustique vers une représentation sémantique, ce qui correspond à l’extraction du sens d’un discours. En informatique, il est nécessaire de projeter le sens d’un message dans une représentation plus ou moins structurée, qui sera ex-traite à partir des signes disponibles dans la parole et de leurs caractéristiques [De Mori et al.

2008].

Il est compliqué de mettre en place une représentation structurée de la sémantique suffi-samment générique pour réaliser la tâche de compréhension du langage ouvert. Ainsi, la repré-sentation sémantique exploitée pour effectuer la compréhension de la parole est très souvent définie de manière ad hoc. C’est-à-dire en fonction d’un contexte applicatif précis. Cette repré-sentation spécifique rend possible la prise en charge de certaines tâches de compréhension de la parole sous la forme de tâches de segmentation en mots support de concepts et d’étiquetage sémantique. Elles peuvent ainsi être traitées par l’intermédiaire de méthodes d’apprentissage automatique supervisé.

Effectuer une projection directe de la dimension acoustique vers une représentation séman-tique spécifique a été jusqu’alors une tâche trop complexe pour être envisagée directement par un unique système. Il est ainsi question d’effectuer la mise en place d’une chaîne de traitements avec tout d’abord un composant de reconnaissance de la parole, puis à minima un composant de compréhension du langage appliqué sur les sorties du premier composant.

(21)

pro-Introduction

fond sont les briques de base d’une chaîne de traitements à l’état de l’art, avec des résultats similaires à ceux obtenus avec des CRF [Simonnet, Ghannay, Camelin et Estève2018]. Malgré l’apport de ces technologies pour la tâche finale de compréhension, un obstacle subsiste au tra-vers du principe même de la chaîne de traitements. En effet, le composant de reconnaissance de la parole produit une représentation textuelle bruitées par des erreurs. Puis, par l’exploi-tation de cette représenl’exploi-tation comme élément d’entrée du composant de compréhension de langue, ce bruit va inéluctablement impacter les performances du second composant. De plus, la représentation textuelle agit comme un entonnoir et ne représente que le discours prononcé, alors que la parole contient des informations allant nécessairement au-delà du discours. C’est-à-dire l’ensemble des informations présentes dans la parole, faisant partie du domaine de la paralinguistique, par exemple, la prosodie ou encore les disfluences.

Développer une approche permettant de surmonter cet obstacle correspond à l’objectif pre-mier des travaux de cette thèse. Cela se traduit par la mise en œuvre d’un unique système neuronale, entièrement optimisé pour la tâche finale de compréhension de la parole. Ainsi, ce système doit être responsable de la projection directe d’informations de la dimension acous-tique vers une représentation sémanacous-tique structurée.

Avant cette thèse, de premiers travaux dans le domaine de la reconnaissance de la parole ont permis la mise en œuvre de systèmes permettant la projection directe d’informations de la dimension acoustiques vers une représentation textuelle [Hannun et al. 2014; Amodei et al. 2016]. Ces travaux ont exploité un unique modèle neuronal, alors que cette tâche était au préalable réalisée par la combinaison de modèles acoustiques et de langues.

Dans le cadre de nos travaux, il est question d’étendre ces avancées à la compréhension de la parole. Pour réaliser cette thèse, nous nous inscrivons dans un cadre applicatif que nous trouvons dans les tâches de reconnaissance des entités nommées, ainsi que d’extraction des concepts sémantiques dans la parole. Il s’agit de deux tâches de compréhension faisant l’objet de travaux réguliers [Sundheim1995; Galliano, Geoffrois, Mostefa et al.2005; Hatmi2014; Simonnet2019], pour lesquelles une quantité suffisante de données est disponible pour évaluer nos contributions.

Cependant, les données manuellement annotées pour des tâches aussi complexes que la compréhension de la parole ont un coût important, ce qui induit nécessairement leur rareté. En effet, au-delà de nécessiter une transcription manuelle de la parole, un deuxième niveau d’annotation est nécessaire pour mettre en avant la sémantique selon une structure définie en fonction de la tâche. Ainsi, pour la réalisation de nos travaux, une difficulté supplémentaire réside dans notre besoin de compenser le manque de données annotées pour la tâche finale.

Afin de contourner cette difficulté, nous nous intéressons aux méthodes d’augmentation automatique de données, mais aussi au transfert d’apprentissage [Pan et Yang2009]. Cette mé-thode consiste en l’exploitation d’un premier ensemble de données pour extraire des

(22)

connais-Introduction

sances améliorant l’apprentissage sur un second ensemble de données.

Nous envisageons de tirer parti d’ensembles de données dédiés à la reconnaissance auto-matique de la parole, en raison de leur accessibilité en plus grande quantité. En exploitant notre cadre applicatif, nous envisageons aussi de bénéficier de connaissances apportées par les entités nommées pour traiter les concepts sémantiques.

Organisation du document

Nous structurons ce document en deux parties de quatre chapitres chacune. La première partie est dédiée à la présentation du contexte à travers un état de l’art des travaux connexes à cette thèse, tandis que la seconde concerne la description de nos contributions.

Au sein du premier chapitre, nous abordons les notions fondamentales de l’apprentissage neuronal profond. Il s’agit des technologies sur lesquelles reposent une grande majorité des travaux de cette thèse. Nous évoquons l’émergence de ces technologies à travers le percep-tron, le premier neurone formel, et des perceptrons multicouches. Par la suite, nous décrivons les principaux algorithmes nécessaires à l’apprentissage profond, ainsi que les problématiques majeures de ce domaine. Nous abordons également les techniques développées pour répondre à ces problématiques. Dans ce premier chapitre, nous détaillons aussi les variantes les plus récentes, comme les approches neuronales récurrentes, les architectures de type encodeur-décodeur ou encore les mécanismes d’attention.

Dans le second chapitre, nous nous concentrons sur une description de la tâche de recon-naissance automatique de la parole. Elle est importante dans la mesure où elle constitue l’en-trée du composant de compréhension dans le cadre d’une approche par chaîne de composants. En outre, les premiers systèmes de reconnaissance de la parole exploitant directement des ob-servations sur le signal acoustique constituent un point d’appui essentiel aux travaux de cette thèse. Dans ce chapitre, nous décrivons les approches traditionnellement utilisées dans ce do-maine, ainsi que les approches plus récentes s’appuyant sur des réseaux de neurones. Enfin, nous effectuons une description des mesures d’évaluation de la qualité des transcriptions pro-duites par ce type de système.

Le troisième chapitre de ce manuscrit est dédié à la tâche de compréhension de la parole. Nous définissons tout d’abord cette tâche qui est au cœur de nos travaux. C’est en soi une tâche complexe qui dépend nécessairement de la tâche visée par un système et se définit donc selon plusieurs déclinaisons. Nous détaillons les approches traditionnellement utilisées corres-pondant à l’apprentissage machine, mais aussi les approches plus récentes s’appuyant sur les réseaux de neurones. Enfin, nous proposons une description des principales mesures d’évalua-tion des tâches de compréhension de la parole que nous avons exploitées pour nos contribu-tions.

(23)

Introduction

à notre disposition selon notre cadre applicatif. Nous précisons les origines de ces ensembles, ainsi que leur composition et leur répartition. Lorsque ces données permettent une tâche de compréhension, nous détaillons l’annotation sémantique définissant la tâche associée. Nous fournissons également les références de l’ensemble de ces corpus, facilitant leur récupération et donc la reproductibilité de l’ensemble de nos travaux. Enfin, nous détaillons l’exploitation que nous effectuons de ces données dans le cadre de nos travaux.

Le cinquième chapitre de ce manuscrit correspond au premier chapitre de présentation de nos contributions. Nous abordons nos travaux centrés autour de la tâche de reconnaissance des entités nommées dans la parole. Dans ce chapitre, nous présentons un premier système permettant la projection directe d’informations d’une dimension acoustique vers une repré-sentation sémantique structurée. Ce système est inspiré de ceux existants dans le domaine de la reconnaissance de la parole. Nous l’évaluons sur les données d’une campagne d’évaluation française. En complément, nous effectuons sa comparaison à une approche traditionnelle par chaîne de traitements successifs que nous avons mise à jour.

Au sein du sixième chapitre, nous proposons d’étendre notre approche sur une tâche d’ex-traction des concepts sémantiques. Nous souhaitons vérifier la viabilité de notre approche dans le cadre d’une représentation sémantique structurée plus précise. Nous envisageons également de tirer bénéfice de connaissances acquises avec les entités nommées, pour l’extraction des concepts sémantiques, par transfert d’apprentissage. Aussi, nous effectuons des travaux d’op-timisation de notre architecture neuronale. Enfin, nous comparons à nouveau notre approche avec une chaîne de traitements successifs traditionnelle.

Dans le cadre du septième chapitre, nous réalisons une analyse des erreurs produites par nos systèmes dans le cadre de l’extraction des concepts sémantiques. Ces analyses nous ap-portent des éléments d’amélioration de l’approche que nous avons mis en œuvre. Nous pro-posons aussi une méthode d’extraction des représentations internes de la sémantique qui nous permet tout d’abord une analyse visuelle. Puis, nous étendons l’utilisation de ces représen-tations internes pour établir une mesure de confiance pertinente, concernant l’émission de la sémantique par notre approche.

Enfin, dans un dernier chapitre, nous concluons sur les travaux présentés dans ce manus-crit. Nous abordons à nouveau les points clefs de cette thèse, ainsi que les perspectives que nous pouvons dégager pour de futurs travaux. Nous proposons également un aparté concernant une estimation du coût environnemental de nos travaux.

(24)

Première partie

(25)

Chapitre 1

R

ÉSEAU NEURONAL PROFOND

Sommaire

1.1 Perceptron . . . 26 1.2 Perceptron multicouche . . . 27 1.3 Apprentissage Automatique . . . 28 1.3.1 Algorithme de descente du gradient . . . 28 1.3.2 Algorithme de Rétropropagation . . . 30 1.4 Optimisation de l’apprentissage . . . 32 1.4.1 Momentum . . . 32 1.4.2 Algorithmes d’optimisation adaptatifs . . . 33 1.4.3 Initialisation des paramètres neuronaux . . . 35 1.4.4 Régularisation des réseaux . . . 36 1.5 Spécificités de l’apprentissage neuronal . . . 41 1.5.1 Disparition / Explosion du gradient . . . 41 1.6 Modélisation de séquences . . . 42 1.6.1 Réseau récurrent . . . 43 1.6.2 Réseau neuronal convolutif . . . 45 1.6.3 Architecture Encodeur-Décodeur . . . 46 1.6.4 Transformers . . . 47 1.7 Conclusion . . . 48

(26)

En informatique, le domaine de l’intelligence artificielle (IA) est vaste. Il concerne l’en-semble des algorithmes et méthodes visant la mise en place d’un système capable de simuler l’intelligence.

Parmi les méthodes employées, nous pouvons citer l’apprentissage machine. Cette méthode permet à un ordinateur d’apprendre à réaliser une tâche pour laquelle il n’est pas directement programmé. Elle est basée sur des approches mathématiques et l’exploitation de données.

Cette exploitation peut être effectuée différemment en fonction des informations dispo-nibles. Lorsque pour une tâche donnée, les sorties attendues du système sont connues à l’avance, on parle d’apprentissages supervisés. Il s’agit d’une tâche de régression si les prédictions sont continues et d’une tâche de classification si les prédictions sont discrétisées. Également, Lorsque les sorties attendues ne sont pas connues, on parle d’apprentissage non-supervisé.

Il existe plusieurs méthodes d’apprentissage machine. Parmi lesquelles on retrouve notam-ment les réseaux de neurones artificiels. Il s’agit d’algorithmes sur lesquels repose l’apprentis-sage profond.

Nous représentons l’emplacement de l’apprentissage profond au sein de l’IA dans la figure suivante.

Intelligence Artificielle

Apprentissage Machine

Apprentissage Profond

Figure1.1 – L’apprentissage profond au sein de l’IA

L’apprentissage profond est un type d’intelligence artificielle s’appuyant sur les réseaux de neurones. Il s’agit de systèmes mettant en réseau une brique élémentaire qu’il nous est nécessaire de définir, le neurone formel.

C’est en 1943 qu’est proposé le premier modèle de neurone formel par Warren Sturgis Mc-Culloch et Walter Pitts. Leur modélisation s’appuie sur le fonctionnement observé des neurones biologiques.

C’est ensuite en 1958 que Franck Rosenblatt met en place un algorithme d’apprentissage applicable à un neurone formel, créant ainsi le perceptron [Rosenblatt1958]. La représenta-tion mathématique et le foncreprésenta-tionnement du perceptron sont décrits dans la secreprésenta-tion suivante.

(27)

Partie I, Chapitre 1 –Réseau neuronal profond

1.1

Perceptron

Le perceptron est un neurone formel binaire. Cela signifie que son unique sortie est soit 0, soit 1, correspondant ainsi à deux classes prédictibles. L’ensemble de ses entrées est connecté à sa sortie.

L’action d’un neurone sur ses entrées (xi) correspond à une fonction d’agrégation, qui dans le cas du perceptron est une somme pondérée. Pour la calculer, des paramètres sont associés à chaque entrée (i), que nous appelons : poids (wi). La fonction d’agrégation du perceptron s’exprime ainsi :Pn

i=1wixi. Son résultat s’appelle la valeur d’agrégation, notée z.

Une fonction d’activation est alors appliquée sur z, dont le résultat est noté a. Elle permet de définir un seuil à partir duquel le neurone s’activera. La valeur de sortie du neurone est directement dépendante de son activation. Dans le cas du perceptron de Rosenblatt, pour une tâche de classification, la fonction non linéaire de Heaviside est appliquée.

Elle est définie ainsi : f (x)        0, si x <= 0 1, si x > 0

Cette fonction indique que la réponse du neurone sera 0 si le résultat est inférieur ou égal à 0 et sera 1 sinon.

Il est tout à fait possible d’utiliser d’autres fonctions d’activation, par exemple la fonction sigmoïde (σ ), pour une tâche de régression, qui est définie par : f (x) = 1+e1−x

Nous représentons le perceptron à l’aide de la figure 1.2.

W1 x1 x2 θ W2 W3 x3 Wθ

Figure1.2 – Schéma du perceptron de Rosenblatt

Les paramètres (poids), du perceptron sont initialisés aléatoirement et sont mis à jour à l’aide d’une règle d’apprentissage définie comme : Wi0= Wi+ α(YtY )Xi, avec Wi0 la nouvelle valeur du poids i, Wila valeur actuelle du poids i, α le taux d’apprentissage, Ytla sortie atten-due, Y la sortie réelle et Xil’entrée i.

La règle d’apprentissage permet ainsi d’optimiser les paramètres du neurone grâce à des données d’exemple, pour lesquelles nous connaissons la sortie attendue. Ces données doivent

(28)

1.2. Perceptron multicouche

représenter un problème de classification (ou de régression), afin de laisser le perceptron trou-ver automatiquement la séparation linéaire applicable.

Un dernier paramètre du perceptron correspond au biais (θ). Il s’agit du potentiel d’acti-vation d’un neurone et est un poids pouvant être mis à jour. Il sera soustrait au résultat de la somme pondérée des entrées. De cette manière, la fonction d’activation sera appliquée sur le résultat de l’opération :Pn

i=1WiXiθ.

En s’appliquant sur le résultat de la somme pondérée juste avant l’application de la fonction d’activation, le biais influe sur la capacité d’un neurone à s’activer. Il permet ainsi de rendre une unité neuronale plus flexible.

De nos jours, le perceptron est une architecture très simpliste. Sa limite concerne sa capacité à ne résoudre que des problèmes linéairement séparables. Elle a pu être surmontée par la mise en réseau de plusieurs neurones simples.

1.2

Perceptron multicouche

Le principe du perceptron multicouche (MultiLayer Perceptron, MLP) [Rumelhart et al. 1985], est d’organiser en collaboration plusieurs perceptrons simples de manière à utiliser la sortie d’un neurone comme entrée d’un ou plusieurs autres. Plusieurs neurones peuvent être présents côte à côte, on parle ainsi de couche neuronale et ils peuvent être connectés à plusieurs neurones d’une couche suivante.

Un perceptron multicouche est nécessairement doté d’une couche neuronale d’entrée et d’une couche de sortie. Il peut également être complété par une ou plusieurs couches intermé-diaires, appelées couches cachées.

Comme les sorties des unités neuronales sont connectées aux entrées des unités de la couche suivante, l’information se propagera obligatoirement de la couche d’entrée vers la couche de sortie. Il s’agit donc d’un réseau neuronal à propagation directe vers l’avant. Les entrées d’une unité neuronale correspondent à l’ensemble des sorties des unités de la couche la précédent.

Nous fournissons une représentation schématique d’un perceptron multicouche dans la figure 1.3.

L’architecture de ce type de système dépend directement de la tâche à laquelle nous l’ap-pliquons. Chacune des couches cachées possède un nombre variable d’unités, tandis que pour les couches d’entrées et de sorties, ce nombre dépend de la tâche.

Ce système peut être considéré comme le premier réseau neuronal profond. Le nombre de couches cachées définit la profondeur du réseau. Plus un réseau est profond, plus il sera en mesure de résoudre des tâches complexes, mais plus il sera difficile à apprendre efficacement.

Après la définition de son architecture, un réseau nécessite d’apprendre à résoudre la tâche visée. Il lui est nécessaire d’exploiter des données et des méthodes d’apprentissage automa-tique, que nous détaillons dans la section suivante.

(29)

Partie I, Chapitre 1 –Réseau neuronal profond

L L-1

L-2 L-3

Figure1.3 – Schéma d’un perceptron multicouche quelconque.

1.3

Apprentissage Automatique

L’apprentissage d’un système neuronal consiste en l’ajustement de ses paramètres pour trouver une combinaison résolvant efficacement la problématique d’une tâche. Cet ajustement s’appuie sur des données annotées selon la tâche visée. Il est important que les données uti-lisées représentent le plus fidèlement possible la tâche devant être résolue par le système. En présentant des données dont la réponse attendue est connue à l’avance, il est possible de modi-fier ses paramètres en favorisant les mises à jour maximisant le nombre de réponses correctes. L’apprentissage d’un système se base ainsi sur l’architecture d’un modèle, des données et des algorithmes.

Nous pouvons mentionner l’algorithme de descente du gradient qui permet l’apprentissage des paramètres neuronaux, mais aussi l’algorithme de rétropropagation du gradient [Rumel-hartet al.1985], qui rend possible le calcul efficace des gradients d’erreurs.

Nous expliquons davantage le fonctionnement de la descente de gradient dans la prochaine section, puis l’algorithme de rétropropagation dans la section suivante.

1.3.1 Algorithme de descente du gradient

Pour expliquer cet algorithme, il est d’abord nécessaire de définir le gradient. Il s’agit d’un vecteur composé de l’ensemble des dérivées partielles de la fonction de coût. C’est-à-dire des implications des paramètres du système à la production de l’erreur : ∂C(w)∂w . De plus, le gradient pointe nécessairement dans la direction du plus grand taux d’augmentation de la fonction considérée.

(30)

1.3. Apprentissage Automatique

et de par la nature du gradient, il se base sur la fonction de coût (C) appliquée.

Comme cette fonction quantifie l’écart entre une valeur émise par le système et la valeur attendue, il apparait naturel que l’objectif de la descente de gradient soit de minimiser cette fonction C. Cela permet de s’assurer que le système émet des valeurs les plus proches des valeurs attendues et donc maximise ses performances.

L’initialisation des paramètres d’un système permet de placer le point de départ de la des-cente de gradient. Minimiser la fonction, consiste donc à faire varier ses paramètres jusqu’à l’obtention d’un minimal. La descente de gradient correspond à la stratégie mise en œuvre pour s’assurer que la variation des paramètres se dirige vers un minimum.

Cette stratégie met en place une variation des paramètres de C par itérations successives. Nous appelons taux d’apprentissage (α) la taille du pas itératif appliqué pour le calcul des paramètres du temps t au temps t + 1.

Nous donnons une représentation1d’une fonction de coût à deux paramètres, ainsi qu’une descente de gradient possible dans la figure 1.4.

Figure1.4 – Représentation de la descente de gradient sur une fonction de coût à deux para-mètres.

Afin d’effectuer la descente de gradient vers un minimum, il est nécessaire de connaitre l’orientation de la pente de la fonction C. En connaissant son orientation, il est possible de mettre à jour les paramètres de façon à aller dans le sens inverse de la pente. Cette pente correspond en réalité à la dérivée de la fonction C.

Nous allons donc modifier les paramètres x en effectuant un pas itératif (α, compris entre 0 et 1) dans le sens inverse de la pente. Pour chaque paramètre d’un système, l’équation de la

(31)

Partie I, Chapitre 1 –Réseau neuronal profond

descente de gradient s’exprime ainsi :

xt+1= xtα∂C(x)

∂x (1.1)

Un inconvénient de la descente de gradient réside dans le risque de converger vers un mau-vais minimum local. La fonction de coût considérée ne possède pas forcément un seul minimal. Il est très probable qu’elle possède des minimums locaux impliquant des performances sous-optimales par rapport à son minimum global. Notons toutefois que la descente de gradient ne garantit pas à un système de converger vers le minimum global. Il est donc important de minimiser les risques de convergence dans un mauvais minimum.

De plus, la vitesse de convergence a un rôle important dans l’apprentissage d’un réseau neuronal. Il existe plusieurs variantes de la descente de gradient permettant de converger plus où moins rapidement vers un minimum.

La première variante consiste à mettre les paramètres à jour après l’utilisation de chaque exemple d’apprentissages. Nous parlons dans ce cas d’une descente de gradient stochastique.

Une seconde variante consiste à les mettre à jour après l’utilisation de la totalité des exemples d’apprentissages. Dans ce cas, nous parlons d’une descente de gradient par lot (batch). Il s’agit

d’exploiter la moyenne des gradients du lot, accélérant grandement la vitesse de convergence. Enfin, une dernière variante consiste à utiliser n exemples avant de mettre à jours les pa-ramètres. Nous parlons d’une descente de gradient par mini-lot (mini-batch). C’est une

combi-naison des deux méthodes précédentes qui est désormais la plus communément utilisée.

1.3.2 Algorithme de Rétropropagation

En fournissant un échantillon en entrée d’un système, les calculs effectués à partir de celui-ci vont se propager au fil des couches permettant ainsi d’obtenir une sortie. Cette sortie réelle est directement comparable à une sortie attendue et à l’aide d’une fonction de coût dérivable (C). L’objectif de cette fonction est de quantifier l’écart entre la sortie réelle et la sortie attendue. Ainsi, plus la valeur de cette fonction est grande, plus la sortie réelle est éloignée de la sortie attendue. Cet écart représente l’erreur en sortie du système, qui est nécessaire au calcul de l’implication d’un poids synaptique, noté ∂C(w)∂w .

L’algorithme de rétropropagation s’appuie sur le théorème de dérivation en chaîne des fonc-tions composées. Par emploi de ce théorème, il est possible de calculer efficacement l’implica-tion des paramètres de la couche de sortie (L). Puis, suite à ce calcul, il est possible de détermi-ner l’erreur des unités neuronales de cette couche (δLi).

À ce stade de l’algorithme, nous connaissons le gradient de la fonction de coût par rapport aux poids des unités de la couche (L), ainsi que les calculs ayant mené aux entrées de ces unités pendant la propagation avant. Il est donc possible de déterminer l’implication des paramètres

(32)

1.3. Apprentissage Automatique

de la couche L − 1, ainsi que le gradient de ses unités neuronales. Il sera ensuite possible d’en faire de même pour la couche L − 2 et ainsi de suite jusqu’à la couche d’entrée. Le calcul de l’implication des paramètres et du gradient des unités neuronales s’effectue donc de la couche de sortie vers la couche d’entrée, d’où le nom d’algorithme de rétropropagation.

L’ensemble des neurones du système possède un paramètre de biais qui a lui aussi un im-pact sur la production de l’erreur de sortie. Ce paramètre doit être traité de la même manière que les autres poids.

En soi, les biais peuvent être considérés comme des poids associés à des vecteurs qui partent d’un seul nœud situé en dehors du réseau principal et dont l’activation est systématiquement 1. Cette valeur d’activation permet à un système de toujours avoir des neurones actifs, quelles que soient les valeurs d’entrées. Elle induit également une simplification des calculs de l’algorithme de rétropropagation pour les biais.

Cet algorithme est régi par 4 équations essentielles : 1. δLi = C0(aLi) ∗ σ0(zLi) 2. δli= (P k δl+1kwl+1 ki ) ∗ σ 0 (zli) 3. ∂C ∂wl ij = al−1jδl i 4. ∂C ∂bl i = δil

Avec C0 la dérivée de la fonction de coût, a la valeur d’activation, σ0la dérivée de la fonction d’activation et z la valeur d’agrégation. Ces équations correspondent respectivement à :

1. Le gradient de l’unité i sur la couche de sortie L. 2. Le gradient de l’unité i sur la couche cachée l.

3. L’implication du poids entre l’unité i de la couche l et l’unité j de la couche l − 1. 4. L’implication du biais de l’unité i de la couche l.

Le calcul de l’implication des paramètres conditionne leur mise à jour lors d’une étape d’apprentissage. Ils sont mis à jour en suivant l’algorithme de descente de gradient permettant la minimisation la fonction de coût (C) appliquée.

Un système neuronal est un ensemble d’algorithmes permettant d’adapter des milliers, voir des millions, de paramètres pour trouver une configuration maximisant ses bonnes réponses. Les données exploitées pour son apprentissage doivent représenter au mieux la tâche visée, puisqu’au-delà des algorithmes, ce sont elles qui conditionnent la mise à jour des paramètres. Toutefois, des méthodes d’optimisation de l’apprentissage permettent de pousser les limites de l’apprentissage automatique. Nous décrivons les méthodes les plus communes dans la section suivante.

(33)

Partie I, Chapitre 1 –Réseau neuronal profond

1.4

Optimisation de l’apprentissage

L’optimisation de l’apprentissage vise à pousser les limites, mais aussi à répondre à cer-taines problématiques. Comme la problématique des minimums locaux déjà évoquée. Au fil des années, différentes méthodes d’optimisation [Ruder 2016] ont été mises au point pour outrepasser cette difficulté, ainsi qu’optimiser la descente de gradient et l’apprentissage auto-matique. Nous décrivons certaines pratiques d’optimisation dans les sections suivantes.

1.4.1 Momentum

Cette méthode [Qian1999] a pour objectif d’accélérer la descente de gradient et limite les risques de converger dans un mauvais minimum local de la fonction de coût. Concrètement, elle exploite la mise à jour précédente des paramètres du système pour optimiser la mise à jour suivante. Elle ajoute un coefficient de vélocité permettant d’accélérer la descente de gradient et réduire les oscillations. Ce coefficient augmentera le pas d’apprentissage si le gradient au temps

t et au temps t − 1 vont dans la même direction et le diminuera s’ils vont dans des directions

opposées. La méthode du momentum peut être imagée comme l’action de la gravité sur une bille descendant le long d’une surface concave.

D’un point de vue mathématique, cette méthode transforme la mise à jour des paramètres de la manière suivante :

xt+1= xt+ vt+1 (1.2)

vt+1= µvtα ∂C(x)

∂x (1.3)

Avec vtle coefficient de vélocité et µ le paramètre du momentum.

Ainsi, comme pour la descente de gradient traditionnelle cette méthode calcule le gradient présent puis effectue un déplacement dans la direction minimisant la fonction de coût. Elle possède toutefois un inconvénient, puisqu’elle n’est pas en mesure d’anticiper un changement de direction du gradient et donc de ralentir préventivement le coefficient de vélocité pour ne pas dépasser le minimum. Une extension de cette méthode corrige cet inconvénient.

Gradient accéléré Nesterov

Cette méthode [Nesterov2013] est une évolution de la méthode du momentum. Elle consiste à effectuer un premier déplacement propre au terme du momentum, puis calculer le gradient présent pour effectuer un déplacement dans la direction minimisant la fonction de coût. Le déplacement effectué sur la fonction de coût s’effectue donc en deux temps. De plus, le terme du momentum ne pointe pas obligatoirement dans la direction minimisant la fonction de coût

(34)

1.4. Optimisation de l’apprentissage

contrairement au gradient. Ce qui signifie qu’avec un momentum à l’opposé du gradient cette méthode permet de ralentir préventivement le déplacement final.

Elle se traduit mathématiquement par les équations suivantes :

xt+1= xt+ vt+1 (1.4)

vt+1= µvtα

∂C(x + µvt) ∂x + µvt

(1.5) Avec vt le coefficient de vélocité et µ le paramètre du momentum.

Les méthodes s’appuyant sur le momentum ne sont pas les seules exploitées pour optimiser la descente de gradient. Une famille d’algorithmes y est spécifiquement dédiée.

1.4.2 Algorithmes d’optimisation adaptatifs

Il s’agit d’une catégorie d’algorithmes qui vise à adapter la mise à jour de chacun des para-mètres d’un système pendant l’apprentissage. Les stratégies mises en place par ces algorithmes permettent un apprentissage plus robuste par l’intermédiaire d’une descente de gradient plus efficace. Nous décrivons ci-dessous certains des algorithmes les plus communs, bien qu’il ne s’agisse pas d’un paysage exhaustif.

AdaGrad

L’algorithme AdaGrad (Adaptative gradient) [Duchi et al.2011] est un algorithme dont l’in-tuition est d’adapter le taux d’apprentissage de chaques paramètres proportionnellement à leur historique de mise à jour. Il s’agit en soi de réaliser des mises à jour plus importantes pour les paramètres peu fréquents et des mises à jour moins importantes pour les paramètres plus fré-quents. L’intérêt de cette approche réside dans le cas de données éparses, puisque le système sera capable de tirer bénéfice plus efficacement de l’information des données moins fréquentes. Pour être mise en place, cette méthode modifie le taux d’apprentissage global en modifiant la règle de mise à jour des paramètres. La nouvelle règle mise en place est la suivante :

xt+1= xtα pvx t +  ∂C(x) ∂x (1.6)

x représente le paramètre en cours de mise à jour, α le taux d’apprentissage, vtxl’historique accumulé du gradient de x et  une constante très faible évitant la division par 0. Pour effectuer l’accumulation du gradient de x, vtxest défini ainsi :

vxt = vt−1x +∂C(x)

∂x

2

(35)

Partie I, Chapitre 1 –Réseau neuronal profond

Un autre avantage important de cette méthode d’optimisation est qu’elle règle automati-quement le taux d’apprentissage. Les avantages d’AdaGrad permettent un apprentissage plus efficace et plus robuste. Toutefois, cette méthode à l’inconvénient d’accumuler un gradient carré au dénominateur. Ainsi, la somme accumulée peut croitre très rapidement et rendre le taux d’apprentissage appliqué à certains paramètres extrêmement faible. Ce qui pourra rendre impossible l’apprentissage de connaissances supplémentaires pour le système. L’algorithme présenté ci-dessous est un des algorithmes visant à atténuer ce problème.

Adam

La méthode Adam (Adaptative Moment Estimation) [Kingma et Ba2015] est une autre mé-thode ayant pour objectif d’adapter le taux d’apprentissage de chaque paramètre. Elle est com-plémentaire à la méthode AdaGrad, dans la mesure où elle corrige l’inconvénient de l’accumu-lation carré au dénominateur. Pour le corriger, elle définit une autre accumul’accumu-lation du gradient pour un paramètre x : vtx= β2vt−1x + (1 − β2) ∂C(x) ∂x 2 (1.8) Avec β2un taux de décroissance compris en 0 et 1.

En complément de l’accumulation carré des gradients (vtx), la méthode Adam préconise aussi la mise en place d’une accumulation simple des gradients (mxt) permettant un effet simi-laire à la méthode du momentum.

mxt = β1mxt−1+ (1 − β1)

∂C(x)

∂x (1.9)

Avec β1un taux de décroissance aussi compris entre 0 et 1.

Une particularité de cette méthode concerne l’initialisation à 0 des vecteurs mtet vt. Il a été noté par les auteurs que ces vecteurs sont biaisés vers 0 lorsque les taux de décroissances sont faibles (soit β1et β2proche de 1). Ils ont ainsi proposé de contourner ce problème par le calcul

d’une correction m0tx et vt0xde la manière suivante :

m0tx= m x t 1 − β1t (1.10) vt0x= vtx 1 − β2t (1.11)

Ainsi avec cette méthode la mise à jour d’un paramètre x est définie ainsi :

xt= xt−1α m0tx

q

v0tx+ 

(36)

1.4. Optimisation de l’apprentissage

Avec α le taux d’apprentissage appliqué et  une constante faible pour éviter la division par 0.

Il existe plusieurs autres variantes d’algorithmes d’optimisations, nous pouvons par exemple citer AdaDelta [Zeiler2012], RMSprop et NAdam [Dozat2016]. Cependant, ce sont les avan-tages de l’algorithme Adam qui en font actuellement un des algorithmes les plus communs. Les valeurs suggérées par défaut des taux de décroissances β1et β2sont respectivement 0.9 et 0.999.

Il est important d’optimiser la mise à jour des paramètres neuronaux pour optimiser l’ap-prentissage automatique. Cependant, la descente de gradient est aussi très dépendante de l’ini-tialisation des paramètres qui en place le point de départ. La sous-section suivante nous permet de décrire certaines méthodes d’initialisation pouvant être exploitées.

1.4.3 Initialisation des paramètres neuronaux

L’initialisation des paramètres d’un modèle définit le point de départ de l’algorithme de descente du gradient. Même s’il est courant d’utiliser une initialisation aléatoire, cela ne per-met pas systématiquement un point de départ favorisant une descente de gradient plus efficace. Pour s’en assurer, il est judicieux d’exploiter une stratégie d’initialisation spécifique.

Initialisation de Xavier

Nous pouvons notamment citer l’initialisation de Xavier [Glorot et Bengio2010], du nom d’un des auteurs, qui est très largement suggérée pour l’apprentissage automatique. Dans ces travaux, les auteurs préconisent une initialisation respectant deux critères. Le premier concerne la moyenne des activations, qui doit être de 0. Le second concerne la variance des activations, qui doit rester la même pour chacune des couches neuronales.

Cette méthode d’initialisation conserve une part d’aléatoire, qui est toutefois caractérisée par les critères mentionnés. Les valeurs initiales des paramètres sont sélectionnées aléatoire-ment dans une distribution normale. Sa moyenne est 0 et sa variance estn1l−1 avec n le nombre de neurones de la couche l − 1 et l la couche actuellement considérée.

Certaines méthodes n’utilisent pas la notion d’aléatoire, mais exploitent des données et le résultat d’un préapprentissage pour l’initialisation d’un réseau.

Transfert d’apprentissage

Cette méthode [Pan et Yang2009] consiste à tirer bénéfice d’un système préentrainé pour une tâche proche, mais pas identique à la tâche qui sera apprise par le système. Le modèle pré-entrainé a logiquement atteint une configuration de poids stables suite à sa convergence pour

(37)

Partie I, Chapitre 1 –Réseau neuronal profond

la première tâche (A). Le transfert d’apprentissage consiste en l’utilisation de cette configura-tion stable comme initialisaconfigura-tion d’un système similaire. Suite à cette initialisaconfigura-tion, le système peut être appris pour une autre tâche (B) en utilisant les données propres à celle-ci.

Les avantages de cette méthode sont multiples. Elle permet notamment d’accélérer la conver-gence d’un modèle. Les deux tâches exploitées étant proches, les paramètres optimisés pour la tache A modélisent nécessairement une information utile à la tâche B. Elle a également l’avan-tage de contrer le manque de données annotées pour une tâche finale, par l’utilisation de don-nées tierces proches.

1.4.4 Régularisation des réseaux

La régularisation des réseaux est une optimisation globale de l’apprentissage automatique. Il s’agit de méthodes permettant de réguler l’apprentissage pour produire un système plus stable, plus robuste et plus efficace. De plus, les techniques de régularisation répondent à des problématiques qui peuvent concerner l’exploitation des caractéristiques d’entrées d’un sys-tème, ainsi que son fonctionnement interne pendant l’apprentissage.

La plupart des régularisations répondent à la problématique du sur-apprentissage [Diet-terich 1995]. Ce problème consiste, pour un système en apprentissage, à trop optimiser ses paramètres pour un jeu de données précis. Cela signifie que le modèle aura capturé les infor-mations généralisables du jeu de données, mais aussi le bruit présent. Un modèle subissant le sur-apprentissage connaît chacun de ses exemples d’apprentissages, mais est incapable de fournir des réponses satisfaisantes sur des données qui lui sont inconnues. Il perd par consé-quent sa capacité de généralisation et devient inexploitable. Il est ainsi important de détecter le phénomène de sur-apprentissage et de s’en prémunir.

L’utilisation d’un ensemble de données indépendant permet de détecter un cas de sur-apprentissage. Il s’agit de l’ensemble de développement dont les exemples ne sont pas vus par le modèle pendant la phase d’apprentissage. Il est possible de comparer les résultats de la fonction de coût, sur l’ensemble d’apprentissage et de développement.

Dans un cas d’apprentissage nominal, le résultat de la fonction de coût va naturellement décroitre jusqu’à un minimum, que ce soit pour l’ensemble d’apprentissages, comme pour l’en-semble de développement. Cependant, lorsqu’il y a sur-apprentissage, le modèle s’optimise plus que nécessaire sur les exemples d’apprentissage, provoquant une réduction de sa capacité de généralisation. Il est ainsi possible d’observer une augmentation du coût sur l’ensemble de développement, tandis que le système continue de s’optimiser sur l’ensemble d’apprentissage. Nous donnons dans la figure 1.5, les courbes types du coût en fonction du nombre d’itérations des ensembles d’apprentissage et de développement, en cas de sur-apprentissage.

Il existe deux façons simples de se prémunir de ce phénomène. La première consiste à conserver la configuration de poids ayant la meilleure généralisation, c’est-à-dire le meilleur

Références

Documents relatifs

Soit X = x 1 , ..., x T une séquence d’observations acoustiques représentant le signal de parole ; le système de reconnaissance de la parole recherche la séquence de mots la

Avec l’avènement de l’ère de l’apprentissage profond, les systèmes d’apprentissage automatique issus de la recherche en intelligence artiicielle (Artiicial inteligence, AI)

Lors du d´ ecodage, une fois la liste des n-meilleures interpr´ etations obtenue avec les sp´ ecifieurs pr´ esent´ es en Section 2, chaque s´ equence de mots/concepts est analys´

Dans cette contribution, nous introduisons une régularisation qui, lorsqu’elle est mise en place pendant la phase d’entraîne- ment, permet de considérablement accroître la

Sachant que la fonctionnalité du Système Efférent Olivo-Cochléaire Médian (SEOCM) est elle-même extrêmement variable entre normo-entendants, nous avons mesuré le fonctionnement des

Nous garantissons la stabilit´ e (ergodicit´ e et stationnarit´ e) du mod` ele sous certaines conditions de type Lipschitz pour les fonctions d’autor´ egression et de volatilit´

Nous avons aussi intégré notre module de compréhension dans un système de reconnaissance automatique de la pa- role afin de réaliser une application interactive complète qui a

Nous avons propos e une nouvelle m ethode pour l'extration automatique des onepts, ainsi. qu'une approhe d' etiquetage et de g en eration automatique des requ^ etes