Cours 4 - Autoencodeurs

1 Autoencoders

2 Autoencoders - Applications

  • Réduction de dimensions
  • Compression
  • Débruitage
  • Génération de données (images, …)
  • Détection d’anomalies

3 Autoencoders - Exemples

  • Débruitage des images, p.ex. MNIST
  • Débruitage audio, par.ex. bruit de fond
  • Génération/interpolation de visages
  • Compression d’images
  • Détection de fraudes de carte bancaire …

4 Types d’apprentissage

  • apprentissage supervisé (supervised learning) : les données et les sorties sont connues

  • apprentissage non-supervisé (unsupervised learning): les données sont connues mais pas les sorties, par contre on dispose d’une mesure de similarité qui va permettre de regrouper des données proches

  • apprentissage auto-supervisé (self-supervised learning) : utilise les données d’entrée elles-mêmes, au lieu de se fier aux étiquettes éxternes

  • par renforcement : les données et un signal soit au cours du traitement, soit à la fin (Q-Learning, R-Learning, TD-learning)

5 Autoencoders - types

  • Simple Autoencoder
  • Deep Autoencoder
  • Convolutional Autoencoder
  • Variational Autoencoder (VAE)

6 Autoencoders - définitions

Il s’agit de l’apprentissage auto-supervisé (self-supervised learning).

  • Les couches dans ces réseaux de neurones peuvent être pleinement connectées (fully connected), et aussi impliquer d’autres types de couches, comme par exemple les couches convolutionnelles (convolutional layers)

  • Les Autoencodeurs reconstruisent donc une fonction \[ f(X) = X \]

avec \(X \in R^m\), en passant par un espace latent \(Z \in R^n\) avec \(m>>n\). La fonction f(X) est composée de deux fonctions :

  • une fonction d’encodage \(E: R^{m} \rightarrow Z\), et
  • une fonction de décodage \(D: Z \rightarrow R^{m}\).

et donc \[ f(X) = D(E(X)) \]

Les Autoencodeurs sont particulièrement performants - car ils sont capables réduire le nombre de dimensions de données tout en gardant des caractéristiques clées des données, - ce qui compacte les données dans des données dans l’espace latent, - ce qui peut servir de modifier l’espace latent pour en créer de nouvelles données.

7 Denoising Autoencoders

Autoencodeur pour le débruitage

  • par exemple, pour enlever du bruit dans les images
  • pour l’entrainement, ajout du bruit pour les images d’entrée, et images originales à la sortie

  • pour la prédiction (inférence), on peut donner une image bruitée à l’entrée, et le Autoencodeur peut enlever le bruit