How To Train Your Dragon with Python

Ankur Shukla (~ankur67)


A 100% accurate title would have been 'How To Train Your Neural Network with Python' but then training a neural network can sometimes be more daunting than training a dragon :P.

This workshop aims at giving you an update/upgrade on how can you train different neural network architectures in Python using awesome libraries such as Keras/Tensorflow. If you have been in the business of taming these beasts before it will be an update for you as a lot has changed in the recent past and it will be an upgrade if you are a new guy/girl in this territory.

The workshop aims at covering:

  • Section 1 : 15 min
  • Brief Introduction to Neural Networks
  • Section 2 : 30 min
  • The Framework of training a Neural Network in Python. In this section we look at the process of training a NN as a task of putting together blocks of code and winding them together. The blocks are namely
    • A Dataset (DeepSat (SAT-4) Airborne Dataset)
    • A Beast (Neural Network Architecture)
    • A Task
  • Section 3 : 20 min
  • Quickly putting a data generation pipeline into place.
  • A look at different variants of this code block present in Tensorflow
  • Section 4 : 45 min
  • A modular approach to building a neural network
  • A high level overview and some tips and tricks for the following sub-block
    • Layers
    • Optimizer
    • Loss
    • Bringing the dragon to life: Computation Graph and Eager Execution
  • Section 5 : 10 min
  • Understanding how much training is enough

  • Exercise : 15 min. This workshop would have some hands on exercises for the attendees on following topics for better intuition

  • Pros and Cons of different loss functions
  • Hands-on exercise to understand a popular training algorithm Gradient Descent

Key Take Away:

  • The attendees will have a clear and modular idea about training a neural network using Tensorflow
  • They will have clear intuition about different optimizers and losses and how they can be leveraged for different tasks
  • They will get a clear understanding about what computation graphs are and what is Eager execution
  • All these concepts will be demonstrated with help of a satellite image classification use case throughout the workshop

Environment Setup:


Working knowledge of the following is essential for this workshop:

  • Python
  • Tensorflow/Keras
  • Object oriented programming in Python

Speaker Info:

I am a Data Scientist at Deloitte Consulting. I consult clients from different industries on their data science problems. Python is my bread and butter and I use it extensively for my day to day machine learning and data analysis tasks. I am postgraduate from CSRE, IIT Bombay in Geoinformatics and Natural Resources Engineering. Majority of my work at CSRE was focused in satellite image processing using Python.

Speaker Links:

Following are some links to my social media accounts:

Id: 1174
Section: Data Science, Machine Learning and AI
Type: Workshop
Target Audience: Beginner
Last Updated: