Deep Learning for Mechanical, Molecular and Materials Engineering with hands-on TensorFlow in Python

Graduate course, Indian Institute of Technology - Gandhinagar, Materials Engineering, 2023

Lead Instructor for the course covering key topics in scientific machine learning focusing on neural networks.

This course is targeted towards students (who completed MA 103 course or equivalent) and researchers from the following fields: Mechanical, Materials, Chemical, Biological, Physics, Chemistry. Example problems from the fields of mechanical, molecular, and materials engineering are included to illustrate the practical applications of the technique. Understanding of basic linear algebra is a pre-requisite. Theoretical lectures are accompanied by intensive hands-on sessions for exercises and python tutorials. Prior familiarity with some programming, though desirable, is not assumed. The aim of the course is to provide the basic understanding to researchers and engineers in using deep learning effectively in various scientific problems, and to familiarize them with using tensorflow, a popular open source tool for deep learning, which will help them get a head-start in using the technology for their future work and research.

Day-wise Course Plan

Day #Learning Objectives
1Introduction to machine learning + how neural networks (NN) learn?
Survey + setting up programming environment + data types and functions in Python.
2The case for non-linearity, activation, forward propagation + NN as ‘theoretically’ universal function approximator.
Python fundamentals: objects and functions, collections.
3Dealing with complexity: Predicting crack path + Cost function, gradient descent, backpropagation.
More on Python: iterators, loops, conditionals.
4Deep dive into data, training and validation, activation function selection + more on optimizers.
Numpy splicing, comprehension, masking techniques, pandas, matplotlib.
5Batch vs. mini-batch vs. stochastic gradient descent + vectorized implementation of NN.
First NN model using tensorflow: understanding data + training and visualization.
6Bias and variance + Understanding regularization.
Handling bias and variance.
7Introduction to deepchem, data featurization, SMILES, molecular fingerprints.
Working with molecular data.
8Convolution: from Math to an incredibly effective tool in NN.
Developing a solubility prediction model.
9Molecular graph convolution.
Convolution NN model.
10Advanced model training, hyper parameters, model architecture, interpretability.