Autoencoder
Un autoencoder est un type de réseau de Deep Learning entraîné pour répliquer ses données d'entrée. Les autoencoders surpassent les techniques d'ingénierie traditionnelles en précision et en performances sur de nombreuses applications, notamment la détection d'anomalies, la génération de texte, la génération d'images, le débruitage d'images et les communications numériques.
Vous pouvez utiliser Deep Learning Toolbox™ de MATLAB pour implémenter les exemples d'applications d'autoencoders présentées ci-dessous.
Comment les autoencoders fonctionnent-ils?
Les autoencoders produisent en sortie une reconstruction de l'entrée. Un autoencoder est constitué de deux sous-réseaux : un encodeur et un décodeur. Lors de l'apprentissage, l'encodeur apprend un ensemble de caractéristiques à partir des données d'entrées qu'on appelle la représentation latente. Dans le même temps, le décodeur est entraîné à reconstruire les données à partir de ces caractéristiques. L'autoencoder peut alors être appliqué afin de prédire des entrées qui n'ont pas été précédemment observées. Les autoencoders sont très faciles à généraliser et peuvent être utilisés sur différents types de données, notamment des images, des séries temporelles et du texte.
Quelles applications utilisent des autoencoders?
Les autoencoders ignorent naturellement tout bruit d'entrée lors de l'apprentissage de l'encodeur. Cette caractéristique est idéale pour la suppression du bruit ou la détection d'anomalies via la comparaison des entrées et des sorties (voir les figures 2 et 3).
La représentation latente peut également être utilisée pour générer des données synthétiques. Par exemple, vous pouvez créer automatiquement une écriture manuscrite ou un texte avec des phrases d'apparence réaliste (Figure 4).
Les autoencoders basés sur des séries temporelles peuvent également être utilisés pour détecter des anomalies dans des signaux. Par exemple, pour la maintenance prédictive, un autoencoder peut être entraîné sur des données de fonctionnement normal provenant d'une machine industrielle (Figure 5).
L'autoencoder entraîné est ensuite testé sur de nouvelles données d'entrée. Une variation importante dans la sortie de l'autoencoder indique un fonctionnement anormal, qui peut nécessiter une investigation (Figure 6).
Points clés
- Les autoencoders ne nécessitent pas de données d'entrées labellisées pour l'apprentissage : ils sont non supervisés
- Il existe différents types d'autoencoders conçus pour différentes tâches d'ingénierie, en particulier :
- Les autoencoders convolutifs : la sortie du décodeur tente de refléter l'entrée de l'encodeur, ce qui est utile pour le débruitage
- Les autoencoders variationnels : ils créent un modèle génératif, utile pour la détection d'anomalies
- Les autoencoders LSTM : ils créent un modèle génératif pour les applications utilisant des séries temporelles
Exemples et démonstrations
Références logicielles
Voir aussi: introduction au Deep Learning, réseaux LSTM (Long Short-Term Memory), introduction aux réseaux de neurones à convolution, détection d'anomalies