What this book covers
Chapter 1, Getting Started with Deep Learning, gives an introduction to deep learning and neural networks. It also gives a brief introduction on how to set up your R environment.
Chapter 2, Training a Prediction Model, begins with building neural network models using the existing packages in R. This chapter also discusses overfitting, which is an issue in most deep learning models
Chapter 3, Deep Learning Fundamentals, teaches how to build a neural network in R from scratch. We then show how our code relates to MXNet, a deep learning library.
Chapter 4, Training Deep Prediction Models, looks at activations and introduces the MXNet library. We then build a deep learning prediction model for a real-life example. We will take a raw dataset of transactional data and develop a data pipeline to create a model that predicts which customers will return in the next 14 days.
Chapter 5, Image Classification Using Convolutional Neural Networks, looks at image classification tasks. First, we will introduce some of the core concepts, such as convolutional and pooling layers, and then we will show how to use these layers to classify images
Chapter 6, Tuning and Optimizing Models, discusses how to tune and optimize deep learning models. We look at tuning hyperparameters and using data augmentation.
Chapter 7, Natural Language Processing Using Deep Learning, shows how to use deep learning for Natural Language Processing (NLP) tasks. We show how deep learning algorithms outperform traditional NLP techniques, while also being much easier to develop
Chapter 8, Deep Learning Models Using TensorFlow in R, looks at using the TensorFlow API in R. We also look at some additional packages available within TensorFlow that make developing TensorFlow models simpler and help in hyperparameter selection.
Chapter 9, Anomaly Detection and Recommendation Systems, shows how we can use deep learning models to create embeddings that are lower order representations of data. We then show how to use embeddings for anomaly detection and to create a recommendation system.
Chapter 10, Running Deep Learning Models in the Cloud, covers how to use AWS, Azure, and Google Cloud services to train deep learning models. This chapter shows how to train your models at low-cost in the cloud.
Chapter 11, The Next Level in Deep Learning, introduces an end-to-end solution for image classification. We take a set of image files, train a model, reuse that model for transfer learning and then show how to deploy that model to production. We also briefly discuss Generative Adversarial Networks (GANs) and reinforcement learning.
Chapter 12, Handwritten Digit Recognition Using Convolutional Neural Networks, we begin with a recap of logistic regression and multilayer perceptron. We'll solve the problem with these two algorithms. We will then move on to the biologically inspired variants of multilayer perceptron—convolutional neural networks (CNNs).
Chapter 13, Traffic Sign Recognition for Intelligent Vehicles, explains how to use CNNs for another application—traffic sign detection. We will also cover several important concepts of deep learning in this chapter and get readers familiar with other popular frameworks and libraries, such as Keras and TensorFlow. We will also introduce the dropout technique as a regularization approach and utilize data augmentation techniques to deal with a lack of training data.
Chapter 14, Fraud Detection with Autoencoders, introduces a type of deep learning model that can be used for anomaly detection. Outliers can be found within a collection of images, a text corpus, or transactional data. We will dive into applications of autoencoders and how they can be used for outlier detection in this domain.
Chapter 15, Text Generation Using Recurrent Neural Networks, introduces different models of neural networks that try to capture the elusive properties of memory and abstraction to produce powerful models. We will apply different methods to tackle the text generation problem and suggest directions of further exploration.
Chapter 16, Sentiment Analysis with Word Embeddings, shows how to use the popular GloVe algorithm for sentiment analysis, as well as other, less abstract tools. Although this algorithm is, strictly speaking, not a deep learning application, it belongs to the modern toolkit of the data scientist, and it can be combined with other deep learning techniques.