Course plan of BM616: Applied Machine Learning
Total lectures: 28.
Total labs: 12
Total credits: 3
Maximum student intake: 50
Priority of student enrollment: BME M.Tech., PhD any branch (except CSE), M.Tech. any branch (Except CSE), B. Tech. any branch except CSE, Any program of CSE.
Lab format: Lab tasks shall be given beforehand as assignments and 1 hour of weekly contact in lab shall be provided. Weightage (35)
Project: Weightage (30 marks). Starts after mid-sem. One problem from kaggle (or similar data science platforms) needs to be solved. One Paper needs to written and one presentation to be given.
Mid-sem: Weightage (15)
End-Sem: Weightage (20)
Students are recommended to have their own laptops/PCs for assignments. GPU access can be given remotely from medical devices lab.
Pre-requisites: Basic familiarity with linear algebra and probability theory. Basic prior exposure to programming in any language will be assumed.
- Machine Learning by Tom Mitchell
- Hands–On Machine Learning with Scikit–Learn and TensorFlow by Aurelien Geron.
- Generative Deep Learning: Teaching Machines to Paint, Write, Compose, and Play by David Foster
List of Lectures:
Lab 1: Installing Anaconda and running ipython notebook on Google colab. (By TAs)
Lecture 2: Linear algebra overview.
Lecture 3: implementation of linear algebra operations on Python
Lab 2: Hands-on practice of matrix handling through basic image processing operations on Python.
Lecture 3: Probability overview.
Lecture 4: Python overview and setting up programming environment.
Lecture 5: Python coding and how to apply most frequent programming and data operations.
Lab 1: Assignment related to data file reading and manipulation. Data frames. Image reading and matrix operations
Lecture 6: Linear regression
Lecture 7: Logistic regression
Lab 2: Implementation of linear regression on house price prediction.
Lecture 8: Bias variance tradeoff and regularization.
Lecture 9: Training, testing and validation sets, Confusion matrix, F-score, Choosing adequate number of training sets, Early stopping.
Lab 3: Logistic regression implementation on cancer diagnostics problem.
Lecture 10: Neurons and Neural Network introduction.
Lecture 11: Backpropagation in neural networks.
Lab 4: Hand-writing recognition from MNIST dataset. Building the neural network from first principle
Lecture 12: Building models using tensorflow and keras.
Lecture 13: DIfferent types of activation functions, softmax layer, batch normalization, dropout regularization.
Lab 5: Implementation of mnist handwriting recognition and cancer diagnostics using tensorflow.
Lecture 14: Unsupervised learning, K-Means, PCA.
Lecture 15: Support vector machines.
Lab 6: Implementation of K-Means algorithm for an unsupervised problem
Lecture 16: Convolutional neural networks, convolution, strides, maxpool, dense layers, activations.
Lecture 18: Optimization algorithms for deep neural networks.
Lab 7: Classification of images of cats and dogs using CNNs implemented in tensorflow.
Lecture 19: Hyperparameter tuning and batch normalization. Popular deep learning architectures.
Lecture 20: Performance evaluation and metrics for evaluating CNNs.
Lab 8: Transfer learning implementation on VGG-16 pretrained model.
Lecture 21: Using pre-trained models, Transfer learning, One shot learning.
Lecture 22: Regression in neural networks, Object localization and segmentation using RCNN and YOLO.
Lab 9: Implementation of Yolo for live detection and bounding box predictions of objects from webcam feed. Generation of a random circle and its detection.
Lecture 23: Recurrent neural networks (RNNS) and LSTMS and their applications.
Lecture 24: Time series and next word prediction using RNNS and LSTMS
Lab 10: Time series prediction of ECG samples, stock market data and music.
Lecture 25: Variational autoencoders
Lecture 26: Generative adversarial networks (GANs)
Lab 11: Encoding MNIST handwriting samples and CIFAR images followed by reconstruction and new image generation.
Lecture 27: Applications of GANs
Lecture 28: Conclusion and advanced applications of machine learning under research.
Lab 12: GAN based human speech generation.