Machine Learning Practice

A hands-on course using Python's scikit-learn library to implement the machine learning models and methods learned in theory.

This course was the essential practical companion to the machine learning theory courses, focusing on implementation and real-world problem-solving. Using Python and the popular scikit-learn library, we learned how to execute an end-to-end machine learning project. The curriculum provided hands-on experience for a wide range of algorithms, including implementing linear, polynomial, and logistic regression, building binary and multiclass classifiers, and deploying advanced models like Support Vector Machines, Decision Trees, Random Forests, and basic Neural Networks. The course emphasized not just the “how” but also the “how-to” of applying machine learning in practice.


Instructor

Prof. Ashish Tendulkar, Research Software Engineer, Google AI & Visiting Assistant Professor, CSE, IIT Madras


Course Schedule & Topics

The course is structured over 12 weeks, providing hands-on implementation experience with scikit-learn for various ML models.

Week(s) Primary Focus Key Topics Covered
1 End-to-End ML Project Setting up and executing a complete machine learning project using scikit-learn.
2 Graph Theory (VOL 3) Exploration of graph theory concepts relevant to machine learning.
3 Linear Regression & Gradient Descent Implementing Linear Regression and understanding Batch and Stochastic Gradient Descent.
4 Polynomial & Regularized Regression Building polynomial regression models and implementing regularized models like Ridge/Lasso.
5 Logistic Regression Implementing logistic regression for classification tasks.
6 Binary Classification Techniques and metrics for building and evaluating binary classifiers.
7 Multiclass Classification Techniques and metrics for building and evaluating multiclass classifiers.
8 Support Vector Machines (SVMs) Implementing SVMs for classification problems using scikit-learn.
9-10 Decision Trees & Ensemble Learning Building Decision Trees, and using ensemble methods like Random Forests.
11 Neural Networks with Scikit-learn Implementing basic neural network models using the scikit-learn library.
12 Unsupervised Learning Practical implementation of unsupervised learning algorithms like clustering and PCA.

Material used