Intro to Deep Learning With TensorFlow & Keras (3 days)
Overview
The abundance of data and affordable cloud scale has led to an explosion of interest in Deep Learning. Google has open sourced a library called TensorFlow which has become the de-facto standard, allowing state-of-the-art machine learning done at scale, complete with GPU-based acceleration.
This course introduces Deep Learning concepts and TensorFlow and Keras libraries to students.
What you will learn:
- Deep Learning concepts
- TensorFlow and Keras
- Create neural networks with Tensorflow and Keras
- Learn to use tools like Tensorboard to help with training neural networks
- We will build neural networks to solve the following problems
- Regression
- Classification
- Computer vision / Image analytics
- Text analytics
- Time series
Duration:
Three Days
Audience:
Developers, Data analysts, data scientists
Skill level
Introductory to Intermediate
Industry Use Cases Covered
We will study and solve some of most common industry use cases; listed below
- Finance
- Predicting loan defaults at Prosper
- Predicting house prices
- Health care
- Predicting diabetes outcome
- Customer service
- Predicting customer turnover
- Computer vision
- Various image analysis
- Time series
- Analyze stock behavior
Prerequisites
- Basic knowledge of Python language and Jupyter notebooks is assumed.
Even if you haven’t done any Python programming, Python is such an easy language to learn quickly. We will provide Python resources.
Lab environment
- Cloud based lab environment will be provided to students, no need to install anything on the laptop
Students will need the following
- A reasonably modern laptop with unrestricted connection to the Internet. Laptops with overly restrictive VPNs or firewalls may not work properly
- Chrome browser
Detailed Course Outline
Section 1: Introduction to Deep Learning
- Understanding Deep Learning use cases
- Understanding AI / Machine Learning / Deep Learning
- Data and AI
- AI vocabulary
- Hardware and software ecosystem
- Understanding types of Machine Learning (Supervised / Unsupervised / Reinforcement)
Section 2: Introducing TensorFlow
- TensorFlow intro
- TensorFlow features
- Execution graph
- TensorFlow on GPU and TPU
- TensorFlow API
- Lab: Setting up and Running TensorFlow
Section 3: Introducing Keras
- Keras Intro
- Keras concepts (models, layers)
- Using Keras API
- Lab
Section 4: Deep Learning Concepts
- Introducing Perceptrons
- Linear Perceptrons
- Activation Functions (Sigmoid, Tanh, Relu, Softmax)
- Backpropagation
- Optimizers (Gradient Descent, Adam, RMSProp)
- Loss functions for regressions and classifications
- Vanishing/exploding gradient problem
- Lab: Tensorflow playground
Section 5: Feedforward Network
- FFNN architecture
- Input layer, output layer
- Hidden layers and Deep neural networks
- Sizing neural networks
- Lab: Feedforward Neural Networks
Section 6: Computer Vision
- Introducing Convolutional Neural Networks (CNN)
- CNN architecture
- CNN concepts
- Lab: Image recognition using CNNs
Section 7: Recurrent Neural Networks
- Introducing RNNs
- RNN architecture
- RNN concepts
- LSTM (Long Short Term Memory) networks
- LSTM architecture
- Lab: RNNs for text and sequence prediction
Section 8: Transfer Learning
- Understanding transfer learning
- Customizing available models
- Lab: transfer learning lab
- Lab: Benchmarking performance on CPU and GPU
Workshop (Time permitting)
- Students will work in teams to solve a real world use case