talon Que sont les RNN et les LSTM dans le Deep Learning ? - Unite.AI
Suivez nous sur
Classe de maître IA :

AI 101

Que sont les RNN et les LSTM dans le Deep Learning ?

mm
Le kit de préparation mis à jour on

Bon nombre des avancées les plus impressionnantes en matière de traitement du langage naturel et de chatbots IA sont motivées par Réseaux de neurones récurrents (RNN) et les réseaux de mémoire à long terme et à court terme (LSTM). RNN et LSTM sont des architectures de réseaux de neurones spéciales capables de traiter des données séquentielles, des données où l'ordre chronologique est important. Les LSTM sont versions essentiellement améliorées des RNN, capable d'interpréter des séquences de données plus longues. Voyons comment les RNN et les LSTMS sont structurés et comment ils permettent la création de systèmes sophistiqués de traitement du langage naturel.

Que sont les réseaux de neurones Feed-Forward ?

Donc, avant de parler du fonctionnement de la mémoire à long court terme (LSTM) et des réseaux de neurones convolutifs (CNN), nous devrions discuter du format d'un réseau de neurones en général.

Un réseau de neurones est destiné à examiner les données et à apprendre des modèles pertinents, afin que ces modèles puissent être appliqués à d'autres données et que de nouvelles données puissent être classées. Les réseaux de neurones sont divisés en trois sections : une couche d'entrée, une couche cachée (ou plusieurs couches cachées) et une couche de sortie.

La couche d'entrée est ce qui prend les données dans le réseau de neurones, tandis que les couches cachées sont ce qui apprend les modèles dans les données. Les couches cachées de l'ensemble de données sont connectées aux couches d'entrée et de sortie par des "pondérations" et des "biais" qui ne sont que des hypothèses sur la façon dont les points de données sont liés les uns aux autres. Ces poids sont ajustés pendant l'entraînement. Au fur et à mesure que le réseau s'entraîne, les estimations du modèle concernant les données d'entraînement (les valeurs de sortie) sont comparées aux étiquettes d'entraînement réelles. Au cours de la formation, le réseau devrait (espérons-le) devenir plus précis dans la prédiction des relations entre les points de données, afin de pouvoir classer avec précision les nouveaux points de données. Les réseaux de neurones profonds sont des réseaux qui ont plus de couches au milieu/plus de couches cachées. Plus le modèle a de couches cachées et de neurones/nœuds, mieux le modèle peut reconnaître des modèles dans les données.

Les réseaux de neurones réguliers et à anticipation, comme ceux que j'ai décrits ci-dessus, sont souvent appelés « réseaux de neurones denses ». Ces réseaux de neurones denses sont combinés à différentes architectures de réseau spécialisées dans l'interprétation de différents types de données.

Que sont les RNN (Réseaux de Neurones Récurrents) ?

Les réseaux de neurones récurrents reprennent le principe général des réseaux de neurones à réaction et leur permettent de gérer des données séquentielles en donner au modèle une mémoire interne. La partie « récurrente » du nom RNN vient du fait que les entrées et les sorties sont en boucle. Une fois la sortie du réseau produite, la sortie est copiée et renvoyée au réseau en entrée. Lors de la prise de décision, non seulement les entrées et sorties actuelles sont analysées, mais les entrées précédentes sont également prises en compte. En d’autres termes, si l’entrée initiale du réseau est X et la sortie est H, H et X1 (l’entrée suivante dans la séquence de données) sont introduits dans le réseau pour le prochain cycle d’apprentissage. De cette manière, le contexte des données (les entrées précédentes) est préservé au fur et à mesure que le réseau s'entraîne.

Le résultat de cette architecture est que les RNN sont capables de gérer des données séquentielles. Cependant, les RNN souffrent de quelques problèmes. Les RNN souffrent du problèmes de gradient de fuite et de gradient explosif.

La longueur des séquences qu'un RNN peut interpréter est plutôt limitée, en particulier par rapport aux LSTM.

Que sont les LSTM (Long Short-Term Memory Networks) ?

Les réseaux de mémoire longue à court terme peuvent être considérés comme des extensions des RNN, appliquant une fois de plus le concept de préservation du contexte des entrées. Cependant, les LSTM ont été modifiés de plusieurs manières importantes qui leur permettent d'interpréter les données passées avec des méthodes supérieures. Les modifications apportées aux LSTM traitent du problème du gradient de fuite et permettent aux LSTM de prendre en compte des séquences d'entrée beaucoup plus longues.

Les modèles LSTM sont constitués de trois composants différents, ou portes. Il y a un porte d'entrée, une porte de sortie et une porte d'oubli. Tout comme les RNN, les LSTM prennent en compte les entrées du pas de temps précédent lors de la modification de la mémoire du modèle et des poids d'entrée. La porte d'entrée prend des décisions sur les valeurs qui sont importantes et qui doivent passer par le modèle. Une fonction sigmoïde est utilisée dans la porte d'entrée, qui détermine les valeurs à transmettre à travers le réseau récurrent. Zéro supprime la valeur, tandis que 1 la conserve. Une fonction TanH est également utilisée ici, qui décide de l'importance des valeurs d'entrée pour le modèle, allant de -1 à 1.

Une fois que les entrées actuelles et l'état de la mémoire sont pris en compte, la porte de sortie décide des valeurs à pousser au pas de temps suivant. Dans la porte de sortie, les valeurs sont analysées et affectées d'une importance allant de -1 à 1. Cela régule les données avant qu'elles ne soient transmises au prochain calcul de pas de temps. Enfin, le travail de la porte d'oubli est de supprimer les informations que le modèle juge inutiles pour prendre une décision sur la nature des valeurs d'entrée. La porte d'oubli utilise une fonction sigmoïde sur les valeurs, produisant des nombres entre 0 (oubliez ceci) et 1 (gardez ceci).

Un réseau de neurones LSTM est composé à la fois de couches LSTM spéciales qui peuvent interpréter des données de mots séquentiels et de couches densément connectées comme celles décrites ci-dessus. Une fois que les données se déplacent à travers les couches LSTM, elles passent dans les couches densément connectées.

Blogueur et programmeur spécialisé dans Machine Learning ainsi que le L'apprentissage en profondeur les sujets. Daniel espère aider les autres à utiliser le pouvoir de l'IA pour le bien social.