Book Image

Deep Learning with R Cookbook

By : Swarna Gupta, Rehan Ali Ansari, Dipayan Sarkar
Book Image

Deep Learning with R Cookbook

By: Swarna Gupta, Rehan Ali Ansari, Dipayan Sarkar

Overview of this book

Deep learning (DL) has evolved in recent years with developments such as generative adversarial networks (GANs), variational autoencoders (VAEs), and deep reinforcement learning. This book will get you up and running with R 3.5.x to help you implement DL techniques. The book starts with the various DL techniques that you can implement in your apps. A unique set of recipes will help you solve binomial and multinomial classification problems, and perform regression and hyperparameter optimization. To help you gain hands-on experience of concepts, the book features recipes for implementing convolutional neural networks (CNNs), recurrent neural networks (RNNs), and Long short-term memory (LSTMs) networks, as well as sequence-to-sequence models and reinforcement learning. You’ll then learn about high-performance computation using GPUs, along with learning about parallel computation capabilities in R. Later, you’ll explore libraries, such as MXNet, that are designed for GPU computing and state-of-the-art DL. Finally, you’ll discover how to solve different problems in NLP, object detection, and action identification, before understanding how to use pre-trained models in DL apps. By the end of this book, you’ll have comprehensive knowledge of DL and DL packages, and be able to develop effective solutions for different DL problems.
Table of Contents (11 chapters)

Implementing variational autoencoders

In Chapter 4, Implementing Autoencoders with Keras, we learned about autoencoders. We know that an autoencoder learns to represent input data in a latent feature space of reduced dimensions. It learns an arbitrary function to express input data in a compressed latent representation. A variational autoencoder (VAE), instead of learning an arbitrary function, learns the parameters of the probability distribution of the compressed representation. If we can sample points from this distribution, we can generate new data. A VAE consists of an encoder network and a decoder network.

The structure of a VAE is illustrated in the following diagram:

Let's understand the roles of encoder and decoder networks in a VAE:

  • Encoder: This is a neural network that takes an input, , and outputs a latent representation, . The goal of an encoder...