Book description
Although interest in machine learning has reached a high point, lofty expectations often scuttle projects before they get very far. How can machine learning—especially deep neural networks—make a real difference in your organization? This hands-on guide not only provides the most practical information available on the subject, but also helps you get started building efficient deep learning networks.
Authors Adam Gibson and Josh Patterson provide theory on deep learning before introducing their open-source Deeplearning4j (DL4J) library for developing production-class workflows. Through real-world examples, you’ll learn methods and strategies for training deep network architectures and running deep learning workflows on Spark and Hadoop with DL4J.
- Dive into machine learning concepts in general, as well as deep learning in particular
- Understand how deep networks evolved from neural network fundamentals
- Explore the major deep network architectures, including Convolutional and Recurrent
- Learn how to map specific deep networks to the right problem
- Walk through the fundamentals of tuning general neural networks and specific deep network architectures
- Use vectorization techniques for different data types with DataVec, DL4J’s workflow tool
- Learn how to use DL4J natively on Spark and Hadoop
Publisher resources
Table of contents
- Preface
- 1. A Review of Machine Learning
- 2. Foundations of Neural Networks and Deep Learning
- 3. Fundamentals of Deep Networks
- 4. Major Architectures of Deep Networks
-
5. Building Deep Networks
- Matching Deep Networks to the Right Problem
- The DL4J Suite of Tools
- Basic Concepts of the DL4J API
- Modeling CSV Data with Multilayer Perceptron Networks
- Modeling Handwritten Images Using CNNs
- Modeling Sequence Data by Using Recurrent Neural Networks
- Using Autoencoders for Anomaly Detection
- Using Variational Autoencoders to Reconstruct MNIST Digits
- Applications of Deep Learning in Natural Language Processing
-
6. Tuning Deep Networks
- Basic Concepts in Tuning Deep Networks
- Matching Input Data and Network Architectures
- Relating Model Goal and Output Layers
- Working with Layer Count, Parameter Count, and Memory
- Weight Initialization Strategies
- Using Activation Functions
- Applying Loss Functions
- Understanding Learning Rates
- How Sparsity Affects Learning
- Applying Methods of Optimization
- Using Parallelization and GPUs for Faster Training
- Controlling Epochs and Mini-Batch Size
- How to Use Regularization
- Working with Class Imbalance
- Dealing with Overfitting
- Using Network Statistics from the Tuning UI
- 7. Tuning Specific Deep Network Architectures
- 8. Vectorization
-
9. Using Deep Learning and DL4J on Spark
- Introduction to Using DL4J with Spark and Hadoop
- Configuring and Tuning Spark Execution
- Setting Up a Maven Project Object Model for Spark and DL4J
- Troubleshooting Spark and Hadoop
- DL4J Parallel Execution on Spark
- DL4J API Best Practices for Spark
- Multilayer Perceptron Spark Example
- Generating Shakespeare Text with Spark and Long Short-Term Memory
- Modeling MNIST with a Convolutional Neural Network on Spark
- A. What Is Artificial Intelligence?
-
B. RL4J and Reinforcement Learning
- Preliminaries
- Different Settings
-
Q-Learning
- From Policy to Neural Networks the following
- Policy Iteration
- Exploration Versus Exploitation
- Bellman Equation
- Initial State Sampling
- Q-Learning Implementation
- Modeling Q(s,a)
- Experience Replay
- Convolutional Layers and Image Preprocessing
- History Processing
- Double Q-Learning
- Clipping
- Scaling Rewards
- Prioritized Replay
- Graph, Visualization, and Mean-Q
- RL4J
- Conclusion
- C. Numbers Everyone Should Know
- D. Neural Networks and Backpropagation: A Mathematical Approach
- E. Using the ND4J API
- F. Using DataVec
- G. Working with DL4J from Source
- H. Setting Up DL4J Projects
- I. Setting Up GPUs for DL4J Projects
-
J. Troubleshooting DL4J Installations
- Previous Installation
- Memory Errors When Installing From Source
- Older Versions of Maven
- Maven and PATH Variables
- Bad JDK Versions
- C++ and Other Development Tools
- Windows and Include Paths
- Monitoring GPUs
- Using the JVisualVM
- Working with Clojure
- OS X and Float Support
- Fork-Join Bug in Java 7
- Precautions
- Different Platforms
- Index
- About the Authors
Product information
- Title: Deep Learning
- Author(s):
- Release date: August 2017
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491914250
You might also like
book
Deep Learning
Ever since computers began beating us at chess, they've been getting better at a wide range …
book
Grokking Deep Learning
Grokking Deep Learning teaches you to build deep learning neural networks from scratch! In his engaging …
book
Generative Deep Learning
Generative modeling is one of the hottest topics in AI. It’s now possible to teach a …
book
Deep Learning with PyTorch
Every other day we hear about new ways to put deep learning to good use: improved …