[PYTHON] Modèle généré par Variational Autoencoder (VAE)

Cet article est l'article du 13ème jour du calendrier de l'avent de Machine Learning. Résumons les résultats de l'essai du modèle généré avec Variational Autoencoder.

Dites-moi à quoi ressemble la théorie!

-Déduire la variable latente Z des données de test X( Z|X ), X basé sur Z et étiquette Y|Z,Il s'agit de régénérer Y. ――Je pense qu'il est intéressant que vous puissiez générer X avec l'étiquette Y en entrant une variable latente arbitraire.

Par exemple, veuillez regarder cette vidéo.

Ceci est le résultat d'une expérience qui a généré des données étiquetées de 0 à 9 en entrant de manière aléatoire des variables latentes arbitraires dans le modèle entraîné. Ce sont des données MNIST familières, mais elles ne sont pas coupées de l'ensemble de données, elles sont générées par VAE. En utilisant la variable latente obtenue pour une certaine entrée, il est possible de générer des données d'étiquette similaires à cette entrée.

Par exemple, une telle image. 4.jpg 3.jpg

Le nombre à l'extrême gauche est une image prise de MNIST et est utilisé comme entrée. Les images de 0 à 9 sont utilisées comme entrée X, et la variable latente Z obtenue à partir d'elles est utilisée pour générer X | Z, Y. Vous pouvez voir que l'image de 0 à 9 est obtenue en imitant le style de l'image d'entrée (lignes épaisses, comment faire une courbe, etc.). Quand j'ai lu l'article, j'ai d'abord mal compris que les images de 0 à 9 ne sont pas les images de styles similaires apportées par MNIST, mais les données d'image générées par NN. C'est assez intéressant, n'est-ce pas?

Théorie interne

«Je pensais l'écrire, mais il est devenu gênant d'écrire la formule, et ce sera 14 jours dans 15 minutes, donc si vous êtes intéressé, veuillez lire l'article! http://papers.nips.cc/paper/5352-semi-supervised-learning-with-deep-generative-models.pdf

Applications possibles

--Génération d'un ensemble de données pour l'apprentissage supervisé (apprentissage semi-supervisé)

Bonne raison

«En fait, je voulais lire un autre article ou l'essayer avec Tensorflow, mais je n'ai pas pu prendre le temps, et le thé est devenu boueux comme ça. (L'expérience VAE a été réalisée vers août.) «Je veux apprendre les techniques de gestion du temps.

référence

Recommended Posts

Modèle généré par Variational Autoencoder (VAE)
Implémenter le deep learning / VAE (Variational Autoencoder)
Autoencoder variationnel Explication approfondie
Modèle de prédiction de langage par TensorFlow
Modèle de commutation de Markov par Python