
# Vector-Quantized Variational Autoencoders (VQ-VAE)

## Model description
Learning latent space representations of data remains to be an important task in machine learning. This model, the Vector-Quantized Variational Autoencoder (VQ-VAE) builds upon traditional VAEs in two ways.
- The encoder network outputs discrete, rather than continous, codes.
- The prior is learned rather than static.

To learn discrete latent representations, ideas from vector quantisation (VQ) are used. Using the VQ method allows the model to avoid issues of ["posterior collapse"](https://datascience.stackexchange.com/questions/48962/what-is-posterior-collapse-phenomenon). By pairing these representations with an autoregressive prior, VQ-VAE models can generate high quality images, videos, speech as well as doing high quality speaker conversion and unsupervised learning of phonemes, providing further evidence of the utility of the learnt representations.

Full Credits for this example go to [Sayak Paul](https://twitter.com/RisingSayak)

### Further learning
This model has been trained using code from this [example](https://keras.io/examples/generative/vq_vae/), and a result of this [paper.](https://arxiv.org/pdf/1711.00937.pdf)

## Model 
Below we have a graphic from the paper above, showing the VQ-VAE model architecture and quantization process.
![VQ-VAE Model](vq.png)

## Intended uses & limitations

This model is intended to be used for educational purposes. To train your own VQ-VAE model, follow along with this [example](https://keras.io/examples/generative/vq_vae/)

## Training and evaluation data

This model is trained using the popular MNIST dataset.
This dataset can be found/used with the following command 
```
keras.datasets.mnist.load_data()
 ```

## Hyperparameters
The model was trained usign the following 
- Latent Dimension = 16
- Number of Embeddings = 128
- Epochs = 30

The author of the example encourages toying with both the number and size of the embeddings to see how it affects the results.

## Reconstruction 
Below, we can see a few examples of MNIST digits being reconstructed after passing through our model.
![Reconstructed](reconstruct.png)


## Discrete Latent Space 
Below, we can see a few examples of MNIST digits being mapped to a discrete latent space.
![Discrete](discrete_code.png)

## Next Steps
The keras example details of this model shows it can be paired with a PixelCNN for novel image generation. Check out the example linked above to try it yourself.
{"library_name": "keras", "tags": ["feature extraction", "autoencoder"]}
keras tensorboard feature extraction autoencoder arxiv:1711.00937 region:us
TAGS
#keras #tensorboard #feature extraction #autoencoder #arxiv-1711.00937 #region-us 


# Vector-Quantized Variational Autoencoders (VQ-VAE)

## Model description
Learning latent space representations of data remains to be an important task in machine learning. This model, the Vector-Quantized Variational Autoencoder (VQ-VAE) builds upon traditional VAEs in two ways.
- The encoder network outputs discrete, rather than continous, codes.
- The prior is learned rather than static.

To learn discrete latent representations, ideas from vector quantisation (VQ) are used. Using the VQ method allows the model to avoid issues of "posterior collapse". By pairing these representations with an autoregressive prior, VQ-VAE models can generate high quality images, videos, speech as well as doing high quality speaker conversion and unsupervised learning of phonemes, providing further evidence of the utility of the learnt representations.

Full Credits for this example go to Sayak Paul

### Further learning
This model has been trained using code from this example, and a result of this paper.

## Model 
Below we have a graphic from the paper above, showing the VQ-VAE model architecture and quantization process.
!VQ-VAE Model

## Intended uses & limitations

This model is intended to be used for educational purposes. To train your own VQ-VAE model, follow along with this example

## Training and evaluation data

This model is trained using the popular MNIST dataset.
This dataset can be found/used with the following command 


## Hyperparameters
The model was trained usign the following 
- Latent Dimension = 16
- Number of Embeddings = 128
- Epochs = 30

The author of the example encourages toying with both the number and size of the embeddings to see how it affects the results.

## Reconstruction 
Below, we can see a few examples of MNIST digits being reconstructed after passing through our model.
!Reconstructed


## Discrete Latent Space 
Below, we can see a few examples of MNIST digits being mapped to a discrete latent space.
!Discrete

## Next Steps
The keras example details of this model shows it can be paired with a PixelCNN for novel image generation. Check out the example linked above to try it yourself.
# Vector-Quantized Variational Autoencoders (VQ-VAE) ## Model description
Learning latent space representations of data remains to be an important task in machine learning. This model, the Vector-Quantized Variational Autoencoder (VQ-VAE) builds upon traditional VAEs in two ways.
- The encoder network outputs discrete, rather than continous, codes.
- The prior is learned rather than static.

To learn discrete latent representations, ideas from vector quantisation (VQ) are used. Using the VQ method allows the model to avoid issues of "posterior collapse". By pairing these representations with an autoregressive prior, VQ-VAE models can generate high quality images, videos, speech as well as doing high quality speaker conversion and unsupervised learning of phonemes, providing further evidence of the utility of the learnt representations.

Full Credits for this example go to Sayak Paul ### Further learning
This model has been trained using code from this example, and a result of this paper. ## Model 
Below we have a graphic from the paper above, showing the VQ-VAE model architecture and quantization process.
!VQ-VAE Model ## Intended uses & limitations

This model is intended to be used for educational purposes. To train your own VQ-VAE model, follow along with this example ## Training and evaluation data

This model is trained using the popular MNIST dataset.
This dataset can be found/used with the following command ## Hyperparameters
The model was trained usign the following 
- Latent Dimension = 16
- Number of Embeddings = 128
- Epochs = 30

The author of the example encourages toying with both the number and size of the embeddings to see how it affects the results. ## Reconstruction 
Below, we can see a few examples of MNIST digits being reconstructed after passing through our model.
!Reconstructed ## Discrete Latent Space 
Below, we can see a few examples of MNIST digits being mapped to a discrete latent space.
!Discrete ## Next Steps
The keras example details of this model shows it can be paired with a PixelCNN for novel image generation. Check out the example linked above to try it yourself.
TAGS
#keras #tensorboard #feature extraction #autoencoder #arxiv-1711.00937 #region-us 
 # Vector-Quantized Variational Autoencoders (VQ-VAE) ## Model description
Learning latent space representations of data remains to be an important task in machine learning. This model, the Vector-Quantized Variational Autoencoder (VQ-VAE) builds upon traditional VAEs in two ways.
- The encoder network outputs discrete, rather than continous, codes.
- The prior is learned rather than static.

To learn discrete latent representations, ideas from vector quantisation (VQ) are used. Using the VQ method allows the model to avoid issues of "posterior collapse". By pairing these representations with an autoregressive prior, VQ-VAE models can generate high quality images, videos, speech as well as doing high quality speaker conversion and unsupervised learning of phonemes, providing further evidence of the utility of the learnt representations.

Full Credits for this example go to Sayak Paul ### Further learning
This model has been trained using code from this example, and a result of this paper. ## Model 
Below we have a graphic from the paper above, showing the VQ-VAE model architecture and quantization process.
!VQ-VAE Model ## Intended uses & limitations

This model is intended to be used for educational purposes. To train your own VQ-VAE model, follow along with this example ## Training and evaluation data

This model is trained using the popular MNIST dataset.
This dataset can be found/used with the following command ## Hyperparameters
The model was trained usign the following 
- Latent Dimension = 16
- Number of Embeddings = 128
- Epochs = 30

The author of the example encourages toying with both the number and size of the embeddings to see how it affects the results. ## Reconstruction 
Below, we can see a few examples of MNIST digits being reconstructed after passing through our model.
!Reconstructed ## Discrete Latent Space 
Below, we can see a few examples of MNIST digits being mapped to a discrete latent space.
!Discrete ## Next Steps
The keras example details of this model shows it can be paired with a PixelCNN for novel image generation. Check out the example linked above to try it yourself.
passage: TAGS
#keras #tensorboard #feature extraction #autoencoder #arxiv-1711.00937 #region-us 
# Vector-Quantized Variational Autoencoders (VQ-VAE)## Model description
Learning latent space representations of data remains to be an important task in machine learning. This model, the Vector-Quantized Variational Autoencoder (VQ-VAE) builds upon traditional VAEs in two ways.
- The encoder network outputs discrete, rather than continous, codes.
- The prior is learned rather than static.

To learn discrete latent representations, ideas from vector quantisation (VQ) are used. Using the VQ method allows the model to avoid issues of "posterior collapse". By pairing these representations with an autoregressive prior, VQ-VAE models can generate high quality images, videos, speech as well as doing high quality speaker conversion and unsupervised learning of phonemes, providing further evidence of the utility of the learnt representations.

Full Credits for this example go to Sayak Paul### Further learning
This model has been trained using code from this example, and a result of this paper.## Model 
Below we have a graphic from the paper above, showing the VQ-VAE model architecture and quantization process.
!VQ-VAE Model## Intended uses & limitations

This model is intended to be used for educational purposes. To train your own VQ-VAE model, follow along with this example## Training and evaluation data

This model is trained using the popular MNIST dataset.
This dataset can be found/used with the following command## Hyperparameters
The model was trained usign the following 
- Latent Dimension = 16
- Number of Embeddings = 128
- Epochs = 30

The author of the example encourages toying with both the number and size of the embeddings to see how it affects the results.## Reconstruction 
Below, we can see a few examples of MNIST digits being reconstructed after passing through our model.
!Reconstructed