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