Leonardo De Marchi's Deep Learning Fundamentals

Topics covered at DEEP-LEARNING-01-02
View Schedule & Book More dates available

Next up:


Gain the tools and knowledge you need to begin developing your own Deep Learning projects in this two-day introduction with Leonardo De Marchi.

Take a look at Deep Learning concepts with Keras by analysing an image recognition project and learning to develop the model from start to finish. Examine the business needs of a project and design a solution, create a multi layer network and get an intro to some more sophisticated practices including implementing different types of networks for image recognition, using dropouts and random noise to improve results, selecting the proper architecture and using pre-trained models.

Learn how to:

  • Understand the theory behind neural networks
  • Work with Keras and Pytorch
  • Create a basic Deep Learning setup
  • Complete an image recognition task end to end
  • Debug and tune the network
  • Use some more advanced concepts and tricks of the trade

What the community says

"Very well! As someone who knew the least coming in to the course, Leo had all of the answers and was happy to help too. The theory was very well taught specifically."

Anglina on 18th Mar 2019

"It was great being taught by an expert in the field. Leo has such deep knowledge for the subject and this enthusiasm for the topics was infectious"

Attendee on 18th Mar 2019

About the Author

Leonardo De Marchi

Leonardo De Marchi is Lead Data Scientist for Badoo, the World's largest dating website, and is a consultant for the European Union Commission, helping to develop a European strategy for Big Data. He holds a Master's Degree in Artificial Intelligence and has worked as a Data Scientist with the New York Knicks, and Manchester United FC, as well as large social networks including JustGiving.


Day 1

DL Basics

  • Introduction to Deep Learning
  • Key ML concepts and terminology
  • Examples in industry and research
  • Formalizing your own DL problem

Feedforward Neural Networks

  • Training neural networks, optimization methods, error back-propagation
  • Introduction to Keras and Pytorch

Lab 0: Getting Started with GPUs and cloud computing

  • Quickly set up a machine with Deep Learning and NVIDIA Docker
  • Set up additional libraries like keras-viz
  • Quick demo on how to use tensorboard

TensorFlow, Keras and Pytorch

  • Introduction
  • Overview
  • Pros and Cons
  • How to use the right tool

Lab 1: Getting Started with Keras

  • Basic concepts
  • Terminology
  • Exercise

Lab 2: Implement and train a feed-forward neural network in Keras

  • Tackling the problem of facial expression recognition

Convolutional Neural Networks (CNNs)

  • Understanding the convolutional architecture
  • Convolutional and pooling layers
  • Applications to image classification

Lab 3: Implementing CNN using Keras A

  • Extending a feed-forward network with convolutional and pooling layers
  • Using CNNs for image data

Day 2

Lab 3 continued: Implementing CNN using Keras B

  • Recap of the main concepts
  • Lab solutions

Recurrent Neural Networks

  • Understanding recurrent architectures
  • Elman, LSTM and GRU units
  • Bi-directional architectures
  • Combining RNNs with convolutional and feed-forward layers
  • Applications to speech
  • Biological sequences and information retrieval

Lab 4: Implementing RNNs using Keras

  • Implementing and training RNNs using LSTM units on a simple natural language processing task

Practical tricks of the trade

  • Using pre-trained networks
  • Transfer learning
  • Visual debugging of DNNs

Lab 5: Practical tricks of the trade

  • Practicing concepts of the previous theoretical session

Closing remarks and feedback

  • Introduction to Multi-Armed bandit and Reinforcement Learning



This course is intended for Data Scientists, Analysts and Developers who are interested in Deep Learning as way to save time and resources. It will provide all basic information to get started straight away.


Delegates should have basic python knowledge. Machine Learning knowledge is advantageous, but not required.

Bring your own hardware

In order to participate in this workshop, delegates are required to bring their own laptop, with a modern web browser and text editor installed.

If you are unable to bring your own laptop and you let us know at least 2 weeks prior to your attendance of this course, our team will be able to provide you with a laptop pre-installed with the above environment.