Les avancรฉes scientifiques rรฉcentes dans le domaine de lโapprentissage profond ainsi que la disponibilitรฉ de grandes quantitรฉs de donnรฉes et de dispositifs de calcul puissants ont provoquรฉ ces derniรจres annรฉes un grand bouleversement dans le domaine de lโintelligence artificielle et ses applications. Dans le domaine du traitement automatique des langues, les mรฉthodes dโapprentissage profond doivent entre autres leur succรจs ร leur facultรฉ de construire des reprรฉsentations continues de mots ou word embeddings pertinentes. Ces reprรฉsentations continues, qui constituent la base des modรจles de langage neuronaux, sont des vecteurs denses ร valeurs rรฉelles construits pour chacun des mots dโun vocabulaire. Elles constituent une projection de ces mots dans un espace continu de faible dimension. Les word embeddings sont au coeur de lโintรฉrรชt de nombreux travaux de recherche ces derniรจres annรฉes et plusieurs approches ont รฉtรฉ proposรฉes pour construire ces reprรฉsentations. Elles sโappuient gรฉnรฉralement sur la prise en compte des contextes dโapparition dโun mot, reprรฉsentรฉs sous diffรฉrentes formes, comme les sacs de mots continus, les dรฉpendances syntaxiques, les co-occurrences de mots, …, et voire mรชme sur le signal audio. Ainsi, ces word embeddings peuvent capturer diffรฉrents types dโinformation entre les mots : similaritรฉs sรฉmantiques, syntaxiques, acoustiques, etc. Ces reprรฉsentations se sont rรฉvรฉlรฉes รชtre un atout dans de nombreuses tรขches de traitement automatique des langues naturelles (TALN) telles que lโรฉtiquetage morpho-syntaxique, le regroupement en syntagmes, la reconnaissance dโentitรฉs nommรฉes, lโรฉtiquetage de rรดles sรฉmantiques, etc.
Techniques dโapprentissage profond
Lโapprentissage profond (deep learning en anglais) a provoquรฉ ces derniรจres annรฉes un grand bouleversement dans le domaine de lโintelligence artificielle (IA), ainsi que ses applications. Lโapprentissage profond a permis le franchissement de palliers importants dans de nombreuses applications, comme la reconnaissance et la classification dโimages [LeCun et al., 2010, Tompson et al., 2014, Zbontar et LeCun, 2016], la modรฉlisation acoustique, [Hinton et al., 2012, Jaitly et al., 2012, Abdel Hamid et al., 2012], la modรฉlisation du langage [Mikolov et al., 2011b, Schwenk, 2013], le traitement automatique des langues naturelles (TALN ou NLP pour Natural Language Processing) [Turian et al., 2010, Collobert et al., 2011, Bansal et al., 2014a], etc.
Ces performances sโexpliquent par les avancรฉs rรฉcentes dans le domaine de lโapprentissage automatique ainsi que par la disponibilitรฉ de grandes quantitรฉs de donnรฉes dโapprentissage et de dispositifs de calcul puissants. Ces avancรฉes se traduisent par des mรฉthodes plus efficaces pour lโapprentissage de rรฉseaux de neurones profonds. Ces derniers sont capables ร travers leurs architectures de modรฉliser des abstractions de haut niveau au sein des donnรฉes. En effet, lโarchitecture profonde reprรฉsente une cascade de modules (reprรฉsentations) qui sont entrainรฉs simultanรฉment pour rรฉsoudre une tรขche donnรฉe. Ceci permet au rรฉseau de neurones de construire des abstractions les unes ร la suite des autres : des plus simples aux plus complexes [Hinton et al., 2006, Bengio et al., 2007a]. Par exemple, dans le cas du traitement dโimages, le premier module vise ร extraire des caractรฉristiques basiques, comme la prรฉsence ou lโabsence dโun contour, dโorientations particuliรจres, etc. Ensuite, le module suivant peut permettre de dรฉtecter des conjonctions de ces contours pour former des formes รฉlรฉmentaires comme des cercles, des angles, etc. Enfin, les derniers modules manipulent ces formes รฉlรฉmentaires sur un exemple pour dรฉtecter des objets [Lee et al., 2011, Zeiler et Fergus, 2014].
Rรฉseaux de neuronesย
Les rรฉseaux de neurones constituent aujourdโhui une des techniques de classification les plus utilisรฉes et les plus performantes dans diffรฉrentes tรขches, y compris les tรขches de TALN [Turian et al., 2010, Collobert et al., 2011, Bansal et al., 2014a].
Dรฉfinition
Lโidรฉe de construire des rรฉseaux de neurones artificiels remonte ร la fin des annรฉes 50. Elle sโinspire du fonctionnement du cortex visuel des animaux. Les premiers rรฉseaux de neurones artificiels apparaissent sous le terme de perceptron, introduit en 1958 par Rosenblatt [Rosenblatt, 1958]. Le perceptron est la forme la plus simple dโune architecture neuronale, puisquโil est composรฉ dโun seul neurone. Il a รฉtรฉ ร lโorigine dรฉveloppรฉ pour la reconnaissance de formes. ร cause de son architecture simple, le perceptron ne peut rรฉsoudre que des problรจmes linรฉairement sรฉparables et nโest pas capable de traiter des problรจmes de classification complexes, comme lโont prouvรฉ Marvin Minsky et Papert dans leur รฉtude [Minsky et Papert, 1969]. Ce problรจme a รฉtรฉ rรฉsolu ร la suite du dรฉveloppement de nouveaux types de rรฉseaux de neurones formels [Hopfield, 1982, Hopfield, 1984] et de nouvelles mรฉthodes dโapprentissage : Le Cun [LeCun et al., 1988, LeCun, 1985], Rumelhart [Rumelhart et al., 1985, Rumelhart et al., 1988], etc.
Architectures
Lโarchitecture dโun rรฉseau de neurones dรฉtermine la faรงon par laquelle les neurones sont ordonnรฉs et connectรฉs au sein dโun mรชme rรฉseau. Quelque soit lโarchitecture, un rรฉseau de neurones est composรฉ de plusieurs couches de neurones successives: les entrรฉes, les couches suivantes dites couches cachรฉes (du fait quโelles nโont aucun contact direct avec lโextรฉrieur du rรฉseau) jusquโร la couche de sorties. La profondeur dโune telle architecture dรฉpend du nombre de couches cachรฉes. Nous allons dans cette section nous intรฉresser aux familles de rรฉseaux de neurones utilisรฉes dans cette thรจse, ร savoir le perceptron multicouches [Rumelhart et al., 1988], les rรฉseaux de neurones convolutifs [LeCun et al., 1990], ainsi que les auto encodeurs [Rumelhart et al., 1985]. ร noter toutefois quโil existe dโautres types de rรฉseaux de neurones, par exemple les rรฉseaux de neurones rรฉcurrents [Medsker et Jain, 1999], le Deep Belief Network [Hinton et al., 2006], Restricted Boltzmann Machine [Salakhutdinov et Hinton, 2009], Recursive Neural Network [Socher et al., 2011] qui ne seront pas abordรฉs. Nous suggรฉrons au lecteur intรฉressรฉ de se rรฉfรฉrer aux ouvrages suivants [Bishop, 2006, Bengio, 2009a, Ian Goodfellow et Courville, 2016].
Rรฉseaux de neurones convolutifsย
Les rรฉseaux de neurones convolutifs (CNN pour Convolutional Neural Network) sont un type spรฉcialisรฉ de rรฉseaux de neurones gรฉnรฉralement utilisรฉs quand lโentrรฉe est structurรฉe selon une grille (grid-like topology [Ian Goodfellow, 2016]), par exemple une grille de pixels pour une image. Ces rรฉseaux ont รฉtรฉ inspirรฉs par les travaux de Hubel et Wiesel [Hubel et Wiesel, 1962] sur le systรจme visuel du chat, et plus particuliรจrement sur leurs propriรฉtรฉs : les champs rรฉcepteurs locaux et le partage des poids. Les CNNs sont apparus dans les annรฉes 1980 avec les travaux de K. Fukushima [Fukushima, 1980] sur le Necognitron, et ont รฉtรฉ popularisรฉs avec les travaux de Y. LeCun [LeCun et al., 1990] sur la reconnaissance des caractรจres dans les annรฉes 1990.
Une convolution est une opรฉration mathรฉmatique qui consiste ร multiplier, ou ยซconvoluer ยป une matrice (qui reprรฉsente par exemple une image) par une autre appelรฉe matrice de convolution, ou ยซ filtre ยป. Les paramรจtres de la couche de convolution consistent en un ensemble de filtres apprenables. Chaque filtre est petit spatialement (le long de la largeur et de la hauteur), mais sโรฉtend ร travers toute la profondeur de lโimage dโentrรฉe. Pendant lโapprentissage, chaque filtre est convoluรฉ avec lโimage. Ceci produit une carte de caractรฉristiques (features map) de 2 dimensions qui donnent les rรฉponses de ce filtre ร chaque position spatiale dans lโimage. Intuitivement, le rรฉseau va apprendre des filtres qui sโactivent lorsquโils voient un type de caractรฉristique visuelle comme le contour, les orientations, etc., dans la premiรจre couche du rรฉseau. Lโensemble de filtres dans la couche de convolution produisent chacun une carte de caractรฉristiques, qui sont ensuite empilรฉes le long de la dimension de profondeur pour former la sortie.
Les rรฉseaux de neurones convolutifs sont caractรฉrisรฉs par les critรจres suivants :
โ Des champs rรฉcepteurs locaux (local receptive fields) associรฉs ร des convolutions qui permettent dโextraire des formes รฉlรฉmentaires sur les donnรฉes en entrรฉes (image, son, texte, etc.), formant ainsi une features map. Autrement dit, chaque neurone dans cette carte nโest connectรฉ quโร une sous-rรฉgion (champ rรฉcepteur local), correspondant ร un certain nombre de neurones voisins dans la couche de neurones prรฉcรฉdente.
โ Un partage de poids dโune convolution est proposรฉ afin de rรฉduire le nombre de paramรจtres ร apprendre dans le rรฉseau. Il consiste ร partager les poids entre tous les neurones dโune features map, cโest-ร -dire appliquer les mรชmes poids dโune convolution (filtre) pour toutes les positions sur lโentrรฉe. Celuici est convoluรฉ sur toute lโentrรฉe en utilisant une fenรชtre glissante, qui doit apprendre ร capturer des caractรฉristiques locales.
โ Des opรฉrations de sous-รฉchantillonnage (pooling) qui permettent dโune part de rรฉduire le nombre de paramรจtres en rรฉduisant la taille des features map et dโautre part, dโintroduire de lโinvariance aux (faibles) rotations et translations pouvant apparaรฎtre en entrรฉe. Lorsquโune opรฉration de sous-รฉchantillonnage est appliquรฉe sur une rรฉgion, la sortie reste approximativement la mรชme, mรชme si lโimage est dรฉcalรฉe ou pivotรฉe de quelques pixels. Ceci sโexplique par le fait que les opรฉrations de sous-รฉchantillonnage choisissent la mรชme valeur dans une rรฉgion (le maximum ou la moyenne) indรฉpendamment de la position de lโimage. Cette propriรฉtรฉ est intรฉressante en traitement dโimage, รฉtant donnรฉ que la classification doit รชtre invariante aux rotations et aux translations. Habituellement, deux opรฉrations de pooling peuvent รชtre utilisรฉes : le maximum (max-pooling) ou la somme pondรฉrรฉe. Pour un voisinage donnรฉ, le max-pooling consiste ร transfรฉrer en entrรฉe de la couche suivante les valeurs des maxima locaux, alors que la somme pondรฉrรฉe consiste ร transfรฉrer la moyenne pondรฉrรฉe. Ainsi le choix de lโopรฉration dรฉpend de la tรขche elle-mรชme. Par exemple pour des tรขches de TALN, les auteurs dans [Collobert et Weston, 2008] ont utilisรฉ le max-pooling. Ils considรจrent que lโutilisation de la moyenne a pour consรฉquence un lissage peu opportun sur lโensemble des mots dโune phrase, alors que le maximum tend ร donner plus dโimportance aux mots les plus saillants.
Cette architecture est utilisรฉe avec succรจs dans diffรฉrentes tรขches, notamment la reconnaissance de caractรจres [LeCun et al., 1990, LeCun et al., 1998, Sermanet et al., 2012], la modรฉlisation acoustique [Hinton et al., 2012, Abdel-Hamid et al., 2012, Bengio et Heigold, 2014], ou comme dรฉjร รฉvoquรฉ, pour des tรขches de TALN [Collobert et Weston, 2008, Collobert et al., 2011], etc.
|
Table des matiรจres
Introduction
I Contexte de travail et รฉtat de lโart
1 Techniques dโapprentissage profond
1.1 Rรฉseaux de neurones
1.1.1 Dรฉfinition
1.1.2 Architectures
1.1.2.1 Perceptron multicouches
1.1.2.2 Rรฉseaux de neurones convolutifs
1.1.2.3 Rรฉseaux de neurones rรฉcurrents
1.1.2.4 Auto-encodeurs
1.1.3 Apprentissage des rรฉseaux de neurones
1.2 Reprรฉsentations continues de mots
1.2.1 Clustering
1.2.2 Reprรฉsentations distributionnelles
1.2.3 Reprรฉsentations distribuรฉes : Word embeddings
1.2.3.1 Modรจles de langage neuronaux
1.2.3.2 Collobert et Weston
1.2.3.3 Word2vec
1.2.3.4 Word2vec-deps
1.2.3.5 GloVe
1.2.4 Techniques de visualisation
1.3 Conclusion
2 La reconnaissance automatique de la parole continue
2.1 Architecture dโun systรจme de reconnaissance automatique de la parole
2.2 Paramรฉtrisation acoustique
2.3 Modรฉlisation acoustique
2.3.1 Modรจles de Markov Cachรฉs
2.3.1.1 Les mรฉlanges de modรจles gaussiens
2.3.1.2 Rรฉseaux de neurones profonds (DNN)
2.3.2 Adaptation acoustique
2.4 Modรฉlisation linguistique
2.4.1 Modรจle de langage n-gramme
2.4.2 Techniques de lissage
2.4.3 Adaptation linguistique
2.4.4 Les modรจles de langages neuronaux
2.4.5 รvaluation du modรจle de langage
2.5 Dictionnaire de prononciation
2.6 รvaluation dโun systรจme de reconnaissance de la parole
2.7 Conclusion
3 Dรฉtection automatique des erreurs dans les transcriptions automatique de la parole
3.1 Mesures de confiance
3.1.1 Intรฉrรชts
3.1.2 Rapport de vraisemblance
3.1.3 Probabilitรฉ a posteriori
3.1.4 Approche par classification
3.1.4.1 Ensemble de descripteurs
3.1.4.2 Classifieurs
3.1.5 รvaluation des mesures de confiance
3.2 Approches ร lโรฉtat de lโart pour la dรฉtection automatiques des erreurs dโun SRAP
3.2.1 Approches fondรฉes sur les CRF
3.2.2 Approches fondรฉes sur les rรฉseaux de neurones
3.3 Conclusion
II Contributions
4 Systรจme neuronal pour la dรฉtection dโerreurs : รtude prรฉliminaire
4.1 Systรจme de dรฉtection dโerreurs
4.1.1 Architectures neuronales
4.1.2 Descripteurs utilisรฉs
4.2 Protocole expรฉrimental
4.2.1 Systรจme de reconnaissance du LIUM
4.2.1.1 Apprentissage
4.2.1.2 Transcription
4.2.2 Donnรฉes expรฉrimentales
4.2.3 Mรฉtriques dโรฉvaluation
4.3 Performance du systรจme prรฉliminaire
4.4 Conclusion
5 รtude des word embeddings linguistiques
5.1 รvaluation des word embeddings
5.1.1 Tรขches dโรฉvaluation : Benchmarks
5.1.1.1 Tรขches classiques du traitement automatique des langues naturelles (TALN)
5.1.1.2 Tรขche dโanalogie
5.1.1.3 Tรขche de similaritรฉ
5.1.2 Rรฉsultats dโรฉvaluation
5.1.2.1 Protocole expรฉrimental
5.1.2.2 Tรขches classiques du TALN
5.1.2.3 Tรขche dโanalogie
5.1.2.4 Tรขche de similaritรฉ
5.1.3 Discussions
5.2 Combinaison de word embeddings
5.2.1 Approches de combinaison
5.2.1.1 Concatenation simple
5.2.1.2 Analyse en Composantes Principales
5.2.1.3 Auto-encodeur
5.2.2 Performances des word embeddings combinรฉs
5.2.2.1 Tรขches classiques du TALN
5.2.2.2 Tรขche dโanalogie
5.2.2.3 Tรขche de similaritรฉ
5.2.2.4 Tรขche de dรฉtection dโerreurs
5.3 Conclusion
Conclusion
Tรฉlรฉcharger le rapport complet