COL774: Machine Learning



General Information

Semester: Sem II, 2024-25.

Instructor: Parag Singla (email: parags AT cse.iitd.ac.in)

Class Timings (Slot F):
  • Tue, 11:00 am - 11:50am
  • Thu, 11:00 am - 11:50am
  • Fri, 11:00 am - 11:50am
Venue: LHC 318

Sign up for Piazza
Code: As (will be) announced in class.

TA Assignment: Coming soon!

Announcements

  • [Apr 30, 2025]: Assignment 4 (submissions instructions) are updated. Due Date: Friday May 9th, 2025. 11:59 pm.
  • [Apr 13, 2025]: Assignment 4 is now released. Due Date: Friday May 9th, 2025. 11:59 pm.
  • [Mar 31, 2025]: Assignment 3 (both parts) are now released. Due Date (for entire assignment): Thursday April 10, 2025. 11:59 pm.
  • [Mar 24, 2025]: Assignment 3 (Part A) is now released. Part B will be released later in the week. Due Date (for entire assignment): Thursday April 10, 2025. 11:59 pm.
  • [Mar 15, 2025]: Assignment 2 is now updated on the course page (was released on Piazza/course list on March 5th). Due Date: Monday March 17, 2025. 11:59 pm.
  • [Feb 18, 2025]: Assignment 2 is out now. Due Date: Monday March 17, 2025. 11:59 pm.
  • [Feb 4, 2025]: Assignment 1 is now updated with the all the questions included! Due Date (as earlier): Feb 14, 2025. 11:59 pm.
  • [Jan 28, 2025]: Assignment 1 is out! Due Date: Feb 14, 2025. 11:59 pm.
  • [Jan 27, 2025]: Course Website is finally up!

    Course Objectives

    (a) To familiarize with/develop the understanding of fundamental concepts of Machine Learning (ML)
    (b) To develop the understanding of working of a variety of ML algorithms (both supervised as well as unsupervised)
    (c) To learn to apply ML algorithms to real world data/problems
    (d) To update with some of the latest advances in the field

    Course Content

    NOTE: The exact list of topics below is tentative (until we are past that week). We will update it as we go through the lectures in each week. So, stay tuned!

    Week Topic Supplementary Notes
    (by Andrew Ng and Others)
    Class Notes/Other Resources
    1 Introduction Jan 2, Jan 3, Jan 7 (Refer to last year's notes on ML applications)
    2 Supervised Learning Basics - Linear Regression, Gradient Descent lin-log-reg.pdf Jan 9 (Refer to last year's notes on Linear Regression), Jan 10, Jan 16
    3 Gradient Descent (Including Convergence Properties), Stochastic Gradient Descent lin-log-reg.pdf
    Jan 17, Jan 21, Jan 23, Jan 24
    4 Linear Regression - alternate intepretation (probabilistic), Logistic Regression, GLMs lin-log-reg.pdf
    Jan 28, Jan 30, Jan 31
    5 Gaussian Discriminant Analysis (GDA) gda_nb.pdf Feb 4, Feb 6, Feb 7
    6 Naive Bayes, MAP estimate (continued in next week) gda_nb.pdf
    Feb 11, Feb 13, Feb 14
    7,8 Support Vector Machines svm.pdf
    Feb 18, Feb 20, Feb 28, Mar 4 (including extra class), Mar 6
    9 Decision Trees, Random Forests Mitchell, Chapter 3.
    dtrees.pdf.
    Online Resources: Random Forests,
    Gradient Boosting - Wikipedia,
    Paper by Friedman (2001) (up to Section 4.5)
    Mar 18, Mar 20, Mar 21, Mar 25
    10 Neural Networks Mitchell, Chapter 4.
    nnets.pdf nnets-hw.pdf
    Mar 27, Mar 28, Mar 29
    11 Deep Learning cnn.pdf Online Resource:
    Convolutional Neural Networks,
    Alexnet Paper by Krizhevksy et al. (NIPS 2012)
    Apr 1, Apr 3, Apr 4-slides, Apr 4, Apr 8
    12 K-Means, Gaussian Mixture Models kmeans.pdf gmm.pdf Apr 11, Apr 12, Apr 15
    13 Expectation Maximiation (EM), Principal Component Analysis (PCA) em.pdf pca.pdf Apr 17, Apr 22, Apr 24
    14 Learning Theory, Model Selection Mitchell, Chapter 7.
    theory.pdf model.pdf
    Apr 25, Apr 26

    Class Notes/Videos (Date-Wise):

    For week-wise notes, see the Content Table Above.

    Video Lectures:
    March 4 (Evening) Extra Class
    March 29 (Extra Class on Backpropagation)
    April 26 (Learning Theory)

    Video Lectures from Previous offering can be acccessed here
    COL 774, Sem I, 2023-24 Course Page (Search for Videos)
    COL 774, Sem I, 2021-22 Course Page (Search for Videos)

    Additional Resources

    Review Material

    Topic Notes
    Probability prob.pdf
    Linear Algebra linalg.pdf
    Gaussian Distribution gaussians.pdf
    Convex Optimization (1) convex-1.pdf

    References (latest)

    References (older)

    Assignment Submission Instructions

    1. You are free to discuss the assignment problems with other students in the class. But all your code should be produced independently without looking at/referring to anyone else's code.
    2. Python is the default programming languages for the course. You should use it for programming your assignments unless otherwise explicitly allowed.
    3. Code should be submitted using Moodle Page. Make sure to include commenrs for readability.
    4. Create a separate directory for each of the questions named by the question number. For instance, for question 1, all your submissions files should be put in the directory named Q1 (and so on for other questions). Put all the Question sub-directories in a single top level directory. This directory should be named as "yourentrynumber_firstname_lastname". For example, if your entry number is "2022cs19535" and your name is "Nitika Rao", your submission directory should be named as "2022cs19535_nitika_rao". You should zip your directory and name the resulting file as "yourentrynumber_firstname_lastname.zip" e.g. in the above example it will be "2022cs19535_nitika_rao.zip". This single zip file should be submitted online.
    5. Honor Code: Any cases of copying will be awarded a zero on the assignment and an additional penalty equal to the negative of the total weightage of the assignment. More severe penalties may follow.
    6. Late Policy: You are allowed a total of 5 late (buffer) days acorss the first 3 assignments. You are free to decide how you would like to use them. The late policy (if any) for the last assignment will be announced separately. You will get a penalty of 10% deduction in marks (per day) for every additional late day in submission used beyond the allowed 5 buffer days (applicable to first 3 assignments only).
    7. Audit Policy: To get an Audit Pass in the course, you are required to get a score equivalent to getting a C grade (or more) in the course. Additionally, you are required to satisfy any attendance requirements as stipulated by the institute, which is 75% or more attendance in the class.

    Practice Questions

    Assignments

    1. Assignment 4 (Updated April 30, 2025)
      Due Date: Friday May 9, 2025. 11:59 pm
    2. Assignment 3 (Updated March 31st, 2025)
      Due Date (for entire assignment): Thursday April 10, 2025. 11:59 pm
    3. Assignment 2 (Part 2 released on March 5, 2025 over Email/Piazza).
      Due Date: Monday March 17, 2025. 11:59 pm
    4. Assignment 1 (Updated: Feb 4, 2025).
      Due Date: Friday February 14, 2025. 11:59 pm

    Grading Policy (Tentative)

    Assignments (4) Ass1: 7%. Ass2: 9%, Ass3: 9%, Ass4: 10 %. [Total Assignment Weight: 35%]
    Minor 25%
    Major 40%