Skip to content

Analyse de données séquentielles avec le deep learning

Programme

Dans ce chapitre nous allons voir :

  • les bases de l'analyse de séquences en deep learning
  • étudier le fonctionnement les réseaux de neurones récurrent (RNN) et de leurs principales variations, les réseaux long short term memory (LSTM) et les gated reccurent unit (GRU)
  • apprendre a entrainer et optimiser des réseaux récurrents pour différents cas d'usages : le traitement du langage et l'analyse de série temporelles

Leçon : Les réseaux de neurones récurrents

Pour aller plus loin dans les maths

En fonction de vos besoins, je vous propose d'approfondir vos connaissances avec plus de détails mathématiques, le fonctionnement des réseaux récurrents pour différents types d'analyse de séquence en suivant quelques leçons du cours dédié d'Open Classroom (en français):

Prétraitements spécifiques à un domaine

Pour le traitement des sons

Dans le domaine du traitement des sons, on travaille souvent sur le contenu fréquentiel d'un signal sonore en transformant le signal en spectrogramme. En particulier, dans les sons d'origine naturelle, on utilise transforme souvent les spectrogramme en utilisant l'échelle Mel et les Mel Frequency Cepstral Coefficients(MFCCs)

Ces prétraitements sont souvent utilisés avec succès en machine learning, dans certaines tâches reliées à la reconnaissance audio, et génèrent des spectrogrammes prenant la forme d'images. Il est donc courant dans ce domaine d'utiliser des CNN plutôt que des RNN.

Tutoriels

Voyons ensemble les tutoriels de Tensorflow sur différents cas d'usages afin de vous servir de base pour vos travaux:

Cas d'usage : classification de texte
Cas d'usages : reconnaissance audio

Pré-traitements

Les librairies utiles pour traitement du langage

L'embedding

En traitement du langage, l'embedding va consister à encoder vos données textuelles en vecteurs dans un nouvel espace de représentation (en général à haute dimension). L'idée générale est de pouvoir encoder la proximité sémantique dans données d'entrée : des notions proches devraient être encodées par des vecteurs proches dans cet espace.

On distingue principalement 3 granularité d'embedding: - le word embedding : chaque mot est encodé par un vecteur - le sentence embedding : chaque phrase est encodée par un vecteur - le document embedding: chaque document est encodée par un vecteur

La propriété et la qualité de votre embedding va influencer les résulats (performances, interprétabilité). Vous pouvez utiliser des benchmark, comme MTEB pour décider de quel embedding utiliser en fonction de votre tâche ou du modèle que vous allez utiliser