AI for Image Processing
Overview
In the last few years, AI algorithms for image analysis have made tremendous progress. This is mainly due to the abundance of data, affordable computing, and exceptional libraries. Google has open-sourced a library called TensorFlow which has become the de facto standard, allowing the 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
- Deep Neural Networks
- Convolutional Neural Networks (CNN)
- Generative Adversarial Networks (GAN)
- Auto Encoders
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 the most common industry use cases; listed below
- Computer vision
- Image classifications
- Anomaly detection
- Generating computer images
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
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)
Introducing TensorFlow
- TensorFlow intro
- TensorFlow features
- Execution graph
- TensorFlow on GPU and TPU
- TensorFlow API
- Lab: Setting up and Running TensorFlow
Introducing Keras
- Keras Intro
- Keras concepts (models, layers)
- Using Keras API
- Lab
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
Feedforward Network
- FFNN architecture
- Input layer, output layer
- Hidden layers and Deep neural networks
- Sizing neural networks
- Lab: Feedforward Neural Networks
Computer Vision
- Introducing Convolutional Neural Networks (CNN)
- CNN architecture
- CNN concepts
- Lab: Image recognition using CNNs
Generative Adversarial Network (GAN)
- GAN Overview
- Generating Images
- Lab : GAN lab
Auto Encoder
- Auto Encoder overview
- Auto Encoder use cases
- Lab: Auto encoder
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