Deep Learning With BigDL
Overview
The abundance of data and an affordable cloud-scale has led to an explosion of interest in Deep Learning. Intel has released an excellent library called BigDL to open-source, allowing state-of-the-art machine learning done at scale.
This course introduces Deep Learning concepts and the BigDL library to students.
Why should you use BigDL? Use BigDL if you want to get the power of Deep Learning on your ML workflows on Spark and Hadoop. Do you find yourself using SVMs and Random Forests for everything on Spark MLlib? Wish you could do deep learning instead?
What you will learn
- Introduction to Deep Learning
- Deep Learning concepts
- Introducing the BigDL Library
- RDD API versus Pipeline API
- Using BigDL with Tensorflow and Caffe models.
- Visualizing Deep Learning Data with Tensorboard
- Scaling Deep Learning with massive distributed data
Duration
3 Days
Audience
Developers, Data analysts, data scientists
Prerequisites
- Basic knowledge of Python language and Jupyter notebooks is assumed.
- Basic knowledge of Linux environment would be beneficial
- Some Machine Learning familiarity would be nice, but not necessary.
Lab environment
Cloud servers will be provided to students for installation, administration, and lab work. Students would need a SSH client and a browser to access the cluster. Most labs will be in jupyter notebook format.
Detailed Course Outline
Introduction to Deep Learning
-
- Understanding Deep Learning
- Activation Functions, Loss Functions, and Gradient Descent
- Training and Validation
- Regression vs. Classification
Introducing BigDL
-
- BigDL intro
- BigDL Features
- BigDL Versions
- BigDL and Hadoop
- Apache Spark
- Lab: Setting up and Running BigDL
BigDL Execution Model
-
- Introducing BigDL’s Execution Model
- Understanding Basic BigDL Layers
- Understand how BigDL runs on top of Apache Spark workloads.
- Lab: BigDL Layers
Single Layer Linear Perceptron Classifier With BigDL
-
- Introducing Perceptrons
- Linear Separability and Xor Problem
- Activation Functions
- Softmax output
- Backpropagation, loss functions, and Gradient Descent
- Lab: Single-Layer Perceptron in BigDL
Hidden Layers: Intro to Deep Learning
-
- Hidden Layers as a solution to XOR problem
- Distributed Training with BigDL
- Vanishing Gradient Problem and ReLU
- Loss Functions
- Using Tensorboard to Visualize Training
- Lab: Feedforward Neural Network Classifier in Tensorflow
High-level BigDL: the Pipeline API and Dataframes
-
- Using high-level BigDL
- Developing a model with pipeline API
- Lab: Developing a pipeline API model
Convolutional Neural Networks in BigDL
-
- Introducing CNNs
- CNNs in BigDL
- CNN’s for image classification
- Lab: Convolutional Neural Networks
Tensorflow and Caffe Models in BigDL
-
- How to export and import models in BigDL
- Transfer Learning with BigDL
- ImageNet and other pre-trained models.
- Lab: Example with a Caffe model
Recurrent Neural Networks in BigDL
-
- Introducing RNNs
- RNNs in BigDL
- Lab: RNN
Long Short Term Memory (LSTM) in BigDL
-
- Introducing RNNs
- RNNs in BigDL
- Lab: RNN
Conclusion
-
- Summarize features and advantages of BigDL
- Summarize Deep Learning and How BigDL can help
- Next steps