Get in Touch

Course Outline

Part 1 – Deep Learning and DNN Concepts

Introduction to AI, Machine Learning & Deep Learning

  • History, basic concepts, and typical applications of artificial intelligence beyond the myths surrounding the field
  • Collective Intelligence: aggregating knowledge shared by many virtual agents
  • Genetic algorithms: evolving a population of virtual agents through selection
  • Standard Learning Machine: definition
  • Types of tasks: supervised learning, unsupervised learning, reinforcement learning
  • Types of actions: classification, regression, clustering, density estimation, dimensionality reduction
  • Examples of Machine Learning algorithms: Linear regression, Naive Bayes, Random Forest
  • Machine learning vs. Deep Learning: problems where Machine Learning remains the state of the art (e.g., Random Forests & XGBoosts)

Basic Concepts of a Neural Network (Application: multi-layer perceptron)

  • Review of mathematical foundations
  • Definition of a neuron network: classical architecture, activation, and
  • Weighting of previous activations, network depth
  • Definition of neural network learning: cost functions, back-propagation, Stochastic Gradient Descent, maximum likelihood
  • Modeling a neural network: modeling input and output data based on the problem type (regression, classification, etc.). The curse of dimensionality.
  • Distinction between multi-feature data and signals. Selecting a cost function based on the data.
  • Function approximation by a neuron network: presentation and examples
  • Distribution approximation by a neuron network: presentation and examples
  • Data Augmentation: balancing a dataset
  • Generalization of results from a neuron network.
  • Initialization and regularization of a neural network: L1 / L2 regularization, Batch Normalization
  • Optimization and convergence algorithms

Standard ML / DL Tools

A simple presentation outlining advantages, disadvantages, ecosystem positioning, and usage is planned.

  • Data management tools: Apache Spark, Apache Hadoop Tools
  • Machine Learning: Numpy, Scipy, Scikit-learn
  • High-level DL frameworks: PyTorch, Keras, Lasagne
  • Low-level DL frameworks: Theano, Torch, Caffe, TensorFlow

Convolutional Neural Networks (CNN).

  • Presentation of CNNs: fundamental principles and applications
  • Basic operation of a CNN: convolutional layer, use of a kernel,
  • Padding & stride, feature map generation, pooling layers. Extensions 1D, 2D, and 3D.
  • Presentation of various CNN architectures that achieved state-of-the-art results in classification
  • Images: LeNet, VGG Networks, Network in Network, Inception, Resnet. Presentation of innovations brought by each architecture and their broader applications (Convolution 1x1 or residual connections)
  • Use of attention models.
  • Application to a common classification case (text or image)
  • CNNs for generation: super-resolution, pixel-to-pixel segmentation. Presentation of
  • Main strategies for increasing feature maps for image generation.

Recurrent Neural Networks (RNN).

  • Presentation of RNNs: fundamental principles and applications.
  • Basic operation of the RNN: hidden activation, back propagation through time, Unfolded version.
  • Evolutions towards Gated Recurrent Units (GRUs) and LSTM (Long Short-Term Memory).
  • Presentation of different states and evolutions brought by these architectures
  • Convergence and vanishing gradient problems
  • Classical architectures: Time series prediction, classification, etc.
  • RNN Encoder-Decoder architecture. Use of an attention model.
  • NLP applications: word / character encoding, translation.
  • Video Applications: predicting the next generated image in a video sequence.

Generative models: Variational AutoEncoder (VAE) and Generative Adversarial Networks (GAN).

  • Presentation of generative models, connection with CNNs
  • Auto-encoder: dimensionality reduction and limited generation
  • Variational Auto-encoder: generative model and approximation of a given distribution. Definition and use of latent space. Reparameterization trick. Applications and observed limits
  • Generative Adversarial Networks: Fundamentals.
  • Dual Network Architecture (Generator and discriminator) with alternating learning, available cost functions.
  • Convergence of a GAN and difficulties encountered.
  • Improved convergence: Wasserstein GAN, BegGAN. Earth Mover's Distance.
  • Applications for generating images or photographs, text generation, super-resolution.

Deep Reinforcement Learning.

  • Presentation of reinforcement learning: controlling an agent in a defined environment
  • Through state and possible actions
  • Use of a neural network to approximate the state function
  • Deep Q-Learning: experience replay, and application to video game control.
  • Optimization of learning policy. On-policy && off-policy. Actor-Critic architecture. A3C.
  • Applications: control of a single video game or a digital system.

Part 2 – Theano for Deep Learning

Theano Basics

  • Introduction
  • Installation and Configuration

Theano Functions

  • Inputs, outputs, updates, givens

Training and Optimization of a neural network using Theano

  • Neural Network Modeling
  • Logistic Regression
  • Hidden Layers
  • Training a network
  • Computing and Classification
  • Optimization
  • Log Loss

Testing the model

Part 3 – DNN using TensorFlow

TensorFlow Basics

  • Creation, Initializing, Saving, and Restoring TensorFlow variables
  • Feeding, Reading and Preloading TensorFlow Data
  • How to use TensorFlow infrastructure to train models at scale
  • Visualizing and Evaluating models with TensorBoard

TensorFlow Mechanics

  • Prepare the Data
  • Download
  • Inputs and Placeholders
  • Build the Graphs
    • Inference
    • Loss
    • Training
  • Train the Model
    • The Graph
    • The Session
    • Train Loop
  • Evaluate the Model
    • Build the Eval Graph
    • Eval Output

The Perceptron

  • Activation functions
  • The perceptron learning algorithm
  • Binary classification with the perceptron
  • Document classification with the perceptron
  • Limitations of the perceptron

From the Perceptron to Support Vector Machines

  • Kernels and the kernel trick
  • Maximum margin classification and support vectors

Artificial Neural Networks

  • Nonlinear decision boundaries
  • Feedforward and feedback artificial neural networks
  • Multilayer perceptrons
  • Minimizing the cost function
  • Forward propagation
  • Back propagation
  • Improving the way neural networks learn

Convolutional Neural Networks

  • Goals
  • Model Architecture
  • Principles
  • Code Organization
  • Launching and Training the Model
  • Evaluating a Model

Basic Introductions to be given to the below modules (Brief Introduction to be provided based on time availability):

Tensorflow - Advanced Usage

  • Threading and Queues
  • Distributed TensorFlow
  • Writing Documentation and Sharing your Model
  • Customizing Data Readers
  • Manipulating TensorFlow Model Files

TensorFlow Serving

  • Introduction
  • Basic Serving Tutorial
  • Advanced Serving Tutorial
  • Serving Inception Model Tutorial

Requirements

Background in physics, mathematics, and programming. Involvement in image processing activities.

Delegates should have prior understanding of machine learning concepts and experience with Python programming and libraries.

 35 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories