Book Image

Apache Spark Deep Learning Cookbook

By : Ahmed Sherif, Amrith Ravindra
Book Image

Apache Spark Deep Learning Cookbook

By: Ahmed Sherif, Amrith Ravindra

Overview of this book

Organizations these days need to integrate popular big data tools such as Apache Spark with highly efficient deep learning libraries if they’re looking to gain faster and more powerful insights from their data. With this book, you’ll discover over 80 recipes to help you train fast, enterprise-grade, deep learning models on Apache Spark. Each recipe addresses a specific problem, and offers a proven, best-practice solution to difficulties encountered while implementing various deep learning algorithms in a distributed environment. The book follows a systematic approach, featuring a balance of theory and tips with best practice solutions to assist you with training different types of neural networks such as convolutional neural networks (CNNs) and recurrent neural networks (RNNs). You’ll also have access to code written in TensorFlow and Keras that you can run on Spark to solve a variety of deep learning problems in computer vision and natural language processing (NLP), or tweak to tackle other problems encountered in deep learning. By the end of this book, you'll have the skills you need to train and deploy state-of-the-art deep learning models on Apache Spark.
Table of Contents (21 chapters)
Title Page
Copyright and Credits
Packt Upsell
Foreword
Contributors
Preface
Index

Sequential working of LSTMs


Long Short-Term Memory Unit (LSTM) cells are nothing but slightly more advanced architectures compared to Recurrent Networks. LSTMs can be thought of as a special kind of Recurrent Neural Networks with the capabilities of learning long-term dependencies that exist in sequential data. The main reason behind this is the fact that LSTMs contain memory and are able to store and update information within their cells unlike Recurrent Neural Networks.

Getting ready

The main components of a Long Short-Term Memory unit are as follows:

  • The input gate
  • The forget gate
  • The update gate

Each of these gates is made up of a sigmoid layer followed by a pointwise multiplication operation. The sigmoid layer outputs numbers between zero and one. These values describe  how much information of each component is allowed to pass through the respective gate. A value of zero means the gate will allow nothing to pass through it, while a value of one means the gate allows all the information to...