On the Convergence of Students through MLF, MLT and MLP A senior's field guide to the machine learning courses of the IIT Madras BS Diploma in Data Science

Angad Jangir* BS in Data Science and Applications, IIT Madras github.com/angadseth

Abstract

Three courses carry most of the Diploma in Data Science: Machine Learning Foundations (MLF), Machine Learning Techniques (MLT) and Machine Learning Practice (MLP), with the MLP Project run as a Kaggle competition. This guide explains what each course asks of you week by week, how the courses depend on each other, and exactly how each final score is computed, with every formula taken from the official grading document. It then gives a method for each kind of assessment (weekly assignments, quizzes, programming exams, Kaggle assignments, the project vivas and the end term), a marks calculator, the Sep 2026 term on one chart, and every resource I could open and check: the official lecture playlists (about 92 hours across the three courses), the course teams' notes, free textbooks and the best lectures elsewhere.

There are no answers to graded work here. Every rule cites its source, and when this guide and an official page disagree, the official page wins.

Keywords: gradient descent, linear algebra, PCA, SVM, scikit-learn, OPPE, Kaggle, viva, end term.

Click the plot to choose a start.
Figure 1: Gradient descent on a loss surface, which is MLF Week 8 and, more or less, the whole diploma. Click or tap anywhere on the plot to start a new run from there. Raise the learning rate η to see what rushing does: the run overshoots and can fly off the surface. Momentum β is consistency: with it, the run rolls through the shallow basins instead of stopping in the first one.

Table 1: The four courses at a glance. Sources: the course pages [1]–[4] and the grading document [5].

CourseCreditsTaught byWhat it isHow it is examined
MLF BSCS20044Harish Guruprasad Ramaswamy, Arun Rajkumar, Prashanth L.A.The maths under ML: calculus, linear algebra, optimisation, probabilityWeekly assignments, two quizzes and the end term, all but the assignments in person
MLT BSCS20074Arun RajkumarThe algorithms, derived: PCA and clustering through SVMs and neural networksWeekly assignments, two quizzes and the end term, all but the assignments in person
MLP BSCS20084Ashish Tendulkar (Google Research)Doing all of it in Python with scikit-learnWeekly assignments, two online proctored programming exams (OPPEs), three Kaggle assignments and the end term. No quizzes.
MLP Project BSCS2008P2Ashish TendulkarA Kaggle competition among studentsA leaderboard cutoff, five milestones, then a Level 1 and a Level 2 viva
  1. * I took these courses as a student of this programme: an S grade in MLT with 100/100 in the end term, and 11th of 2,593 on the Kaggle leaderboard of the MLP course's competition. This guide is not an official IIT Madras page. ↩

1

1Introduction

MLF, MLT and MLP are three different kinds of course that happen to share the letters ML. MLF is a mathematics course: no model is trained, and nearly every question is a calculation you do by hand. MLT is a theory course about algorithms: you learn what each model assumes, what it minimises and how it is trained, and the exams test whether you can reason about that on paper. MLP is a programming course: you do the same things in Python with scikit-learn, and it is assessed through code and numbers, not derivations [1, 2, 3].

The MLP Project is different again. It runs as a real Kaggle competition among students. You must beat a score cutoff, submit only from one named notebook, and then defend your work in two vivas with an industry examiner [4, 6].

Most of the confusion around these courses comes from treating them as one subject. They reward different habits. MLF rewards solving problems by hand every single week. MLT rewards being able to derive a method and explain why it works. MLP rewards clean code that produces exactly the number the grader expects. Section 2 shows how the courses depend on each other, Sections 4–7 take each course in turn, and Section 8 gives a method for every kind of assessment.

How to read this.If you are taking MLF and MLT together, which is the usual first machine learning term, read Sections 2–5 and 8. If you are taking MLP, read Sections 6 and 8. If you have the project, Section 7 is written for you. The marks calculator is in Section 9, the term calendar in Section 10, every resource in Section 11, and short answers to common doubts in Appendix A.

Remark 1.1 (Sep 2026 term). Course registration for the Sep 2026 term runs on 22 and 23 September 2026, the term starts on Friday 2 October, and the end term is on Sunday 10 January 2027 [7]. The course-level details for Sep 2026 (assignment deadlines, Kaggle assignment and project dates) come out in that term's grading document. Until then this guide quotes the May 2026 document [5], and says so wherever a date or a weight is involved.

2How the courses fit together

Proposition 1 (Requisites). MLF is a co-requisite of MLT: take it before MLT or in the same term. MLT is a prerequisite of MLP: finish it before MLP. MLP is a co-requisite of the MLP Project and of Tools in Data Science.

Proof. The requisites table in the May 2026 grading document [5]. The course pages list them a little differently (the MLP page names both MLF and MLT as prerequisites [3]); where they disagree, go by the grading document, which is rewritten every term.

MLF is a co-requisite of MLT. MLT is a prerequisite of MLP. MLP is a co-requisite of the MLP Project and of TDS. co-req. prereq. co-req. co-req. MLF MLT MLP MLP Project TDS must come first the same term is fine
Figure 2: What depends on what, from the grading document [5]. The only hard ordering in the chain is MLT before MLP. Everything else can share a term.

2.1Which order to take them in

The grading document gives its own plans for a student doing only the Data Science diploma [5]. Table 2 copies the three that use the Business Analytics track; the Deep Learning track swaps BA for the Introduction to Deep Learning and Generative AI course and its project. Look at what the three plans agree on: MLF comes in the first term, MLP always comes after MLT, and TDS always sits in the same term as MLP.

Table 2: Single-diploma plans from the May 2026 grading document [5], with its own labels. Machine learning courses in bold.

PlanTerm 1Term 2Term 3Term 4
2 terms
“not recommended unless you have some background”
MLF, MLT, BDM, BDM projectMLP, BA, TDS, MLP project––
3 terms
“moderate pathway”
MLF, BDM, BDM projectMLT, BAMLP, TDS, MLP project–
4 terms
“extremely comfortable and relaxed”
MLF, BDMMLT, BDM projectMLP, TDSBA, MLP project

Remark 2.1 (MLF and MLT in the same term). This is the most common pairing, and it has one wrinkle. MLT starts with PCA in its first week [2], while the MLF lectures reach eigenvalues in Week 4 and PCA in Week 7 [9]. For about a month, MLT runs ahead of the maths it uses. Watch the MLF eigenvalue lectures early, or keep 3Blue1Brown's short chapter on eigenvectors [31] at hand, and the gap closes.

Remark 2.2 (MLP and its project in the same term). The project guideline says it plainly: “If you are new to ML, you should complete the MLP course in one term and the MLP project in a later term.” The milestones do not follow the course's week order, so taking both together means learning some topics before the lectures reach them [6].

2

3Before you start

None of the three courses teaches its prerequisites again. MLF opens with a week of calculus and then goes straight into subspaces and projections; MLT assumes you can differentiate a loss and multiply matrices without thinking about it; MLP starts with pandas in Week 1 and assumes you can already write Python [9, 10, 11]. Table 3 lists what each course leans on from the Foundation level, so you know what to revise and when.

Table 3: What the ML courses assume, and where they first use it. Week numbers follow the lecture playlists [9–11].

You should be comfortable withLearned inFirst needed in
Vectors, matrices, matrix products, solving Ax = bMaths 1 and 2MLF Week 3; MLT Week 1 (PCA)
Derivatives, partial derivatives, the gradientMaths 1 and 2MLF Week 2; every loss in MLT
Eigenvalues and eigenvectors of a small matrixMaths 2MLT Week 1; MLF Week 4
Probability, random variables, expectation, the normal distributionStats 1 and 2MLT Week 4 (MLE, GMM); MLF Weeks 10–12
Python: functions, loops, lists and dictionariesPythonMLP Week 1; MLT programming assignments
Reading and filtering a table in pandasYour own practiceMLP Week 1 (the whole week is pandas)

3.1A ten-line readiness check

Tick what is true today. Nothing you tick leaves your browser; it is remembered on this device only.

Table 4: Readiness check. One line per skill that the first four weeks use.

Where to fix the gaps.For lines 1–4, 3Blue1Brown's two short series on linear algebra and calculus [31, 32] are the fastest way back in, and Strang's MIT course [30] is the thorough one. For lines 5–6, Seeing Theory [34] shows probability visually. For lines 7–9, the pandas and Intro to Machine Learning courses on Kaggle Learn [38] take an evening each.

3

4Machine Learning Foundations (MLF)

MLF is taught by Harish Guruprasad Ramaswamy, Arun Rajkumar and Prashanth L.A. The course page describes it honestly: it “lays the groundwork for the upcoming ML courses by covering various fundamentals that do not necessarily fall under Machine Learning but are quite necessary for a comprehensive understanding of Machine Learning” [1]. In practice that means calculus, linear algebra, optimisation and probability, each tied back to a machine learning problem. The lecture playlist has 93 videos and runs to about 37 hours [9].

4.1The twelve weeks

Table 5: MLF week by week, from the lecture titles in the official playlist [9]. The course page's list [1] orders the middle weeks slightly differently; follow the week order on your course portal.

WkTopicsWhy it matters later
1What machine learning is: regression, classification, dimensionality reduction, density estimationThe map for the whole diploma
2Calculus: continuity, derivatives, linear approximation, functions of many variablesEvery gradient in MLT
3The four fundamental subspaces, orthogonality, projections, least squaresLinear regression is a projection
4Linear and polynomial regression; eigenvalues, eigenvectors, diagonalisationPCA, spectral methods
5Complex, Hermitian and unitary matrices; diagonalising Hermitian matricesWhy symmetric matrices have real eigenvalues
6Singular value decomposition; positive definite matricesPCA, low-rank approximation
7Principal component analysis, as maximising varianceMLT Weeks 1–2
8Unconstrained optimisation, gradient descent, Taylor seriesHow every model is trained (Figure 1)
9Constrained optimisation, Lagrange multipliers, convex sets and functionsSVMs, regularisation
10Convexity in ML; primal and dual problems; KKT conditionsThe SVM dual in MLT Week 10
11Probability: continuous random variables; uniform, exponential, normalMLE and Naive Bayes
12Multivariate normal, parameter estimation, Gaussian mixtures and EM, laws of large numbersMLT Week 4

4.2What makes it hard

The linear algebra block, Weeks 3 to 6, is the steepest stretch. It moves fast, it builds on itself, and Week 5's complex and Hermitian matrices feel far from machine learning until you see that they are the reason PCA and the SVD work. A doubt left over from Week 3 becomes three doubts by Week 6.

The optimisation weeks are where MLF turns into machine learning. Gradient descent, convexity, Lagrange multipliers and the KKT conditions are exactly the tools MLT uses for regression, logistic regression and support vector machines, so time spent here pays twice.

Almost every question is numerical. In a numeric-entry question a slip in the last line costs the whole question, which makes checking your arithmetic a skill worth practising on its own.

4.3A week that works

Algorithm 1: One MLF week

  1. for each week w do
  2. watch the lectures of w with a notebook open; pause at every worked example and redo it before the lecturer does
  3. attempt the practice assignment without notes
  4. for each question you got wrong do
  5. find the minute of the lecture that explains it, and write the idea in one line
  6. end for
  7. attempt the graded assignment; check each numeric answer a second way e.g. verify an eigenvector by computing Av
  8. write the week on one page: definitions, results, one example
  9. end for
  10. before each quiz, redo the assignments of the weeks in scope, then past papers against the clock Quiz 1 covers Weeks 1–4, Quiz 2 covers Weeks 1–8 [8]

Books that match the course.Chapters 2 to 7 of Mathematics for Machine Learning [22] (linear algebra, geometry, matrix decompositions, vector calculus, probability, optimisation) follow MLF almost chapter for chapter, and the book is free. For convexity, duality and KKT, Boyd and Vandenberghe [23] is the standard text, also free. The subspace and projection weeks are Strang's approach, so his lectures [30] are the natural companion.

4.4How MLF is marked

The May 2026 grading document gives the total course score T as [5]

T = 0.05 GAA + max( 0.6 F + 0.25 max(Qz1, Qz2), 0.4 F + 0.25 Qz1 + 0.3 Qz2 )
(1)
whereGAA is the average of the best 10 of your 11 scores for the Week 1–10 graded assignments and Mock Quiz 1,
Qz1, Qz2 are the quiz scores (0 if you did not attend), and F is the end term score, all out of 100.

The grader takes the better of two formulas. The first counts only your better quiz, so a missed or bad quiz does not sink you; the second rewards doing well in both, and gives Quiz 2 the larger weight. You never have to choose: the maximum is taken for you.

A worked example.With GAA = 80, Qz1 = 50, Qz2 = 70 and F = 60, the first formula gives 36 + 17.5 = 53.5 and the second gives 24 + 12.5 + 21 = 57.5. So T = 4 + 57.5 = 61.5. Try your own numbers in Section 9.

Proposition 2 (End term eligibility, MLF and MLT). You may sit the end term only if the average of your best 5 of 8 scores (the Week 1–7 graded assignments and Mock Quiz 1) is at least 40, and you attended at least one of the two quizzes. To receive a grade at all, you must then sit the end term.

Proof. Grading document [5], MLF and MLT sections, as updated on 15 July 2026. Mock Quiz 1 appears on your dashboard as “Mock Assignment”.

Trap.The Week 11 and 12 assignments are not part of GAA, so it is tempting to skip them. Their content is in the end term, and the grading document says so in as many words [5]. Do them.

4

5Machine Learning Techniques (MLT)

MLT is taught by Arun Rajkumar. Its stated aim is “to introduce the main methods and models used in machine learning problems of regression, classification and clustering” and to study “their suitability for different problems” [2]. The lectures run as one numbered sequence, L1 to L74, about 27 hours in all [10]. It is the course where the diploma's maths becomes algorithms you can explain, and it is the course the MLP Project viva draws on most.

5.1The twelve weeks

Table 6: MLT week by week, from the course page [2]. The lecture ranges are my grouping of the playlist's titles [10]; the playlist has no week labels.

WkTopicsLectures
1Unsupervised learning: representation learning, PCAL1–L9
2Kernel PCAL10–L12
3Clustering: K-means and kernel K-meansL13–L18
4Estimation: MLE, Bayesian estimation, Gaussian mixtures and EML19–L26
5Regression: least squares and its Bayesian viewL27–L35
6Ridge and LASSOL36–L40
7Classification: k-nearest neighbours, decision treesL41–L44
8Generative models: Naive BayesL45–L51
9Discriminative models: perceptron, logistic regressionL52–L56
10Support vector machinesL57–L65
11Ensembles: bagging and boosting (AdaBoost)L66–L71
12Neural networks; multiclass classificationL72–L74

5.2The one habit: five components for every algorithm

For every method, be able to say five things: what data it expects, what model (family of functions) it can represent, what loss it minimises, how it is trained, and how it is evaluated. This is not my framing; it is the exact list the MLP Project's Level 2 viva asks for, for “every machine learning model that you have learnt and/or used” [6]. The programme even has a short official series on this framework, “MLT to MLP” [15]. MLT is where you practise it. Table 7 is a start; write your own, in your own words, as the course goes.

Table 7: The MLT algorithms in the five-component frame. Data is omitted where it is just labelled points; evaluation is accuracy for classifiers and squared error for regressors unless noted.

MethodModelLoss or objectiveTrained by
PCAProjection onto the top k eigenvectors of the covarianceReconstruction error (equivalently, maximise variance)Eigendecomposition
Kernel PCAPCA in a feature space given by a kernelSame, in feature spaceEigendecomposition of the kernel matrix
K-meansk centroids; each point goes to the nearestWithin-cluster sum of squared distancesLloyd's algorithm: assign, then update, repeat
Gaussian mixtureWeighted sum of k GaussiansNegative log-likelihoodEM
Linear regressionw⊤xSquared errorNormal equations, or gradient descent
Ridge / LASSOw⊤xSquared error + λ‖w‖22 / + λ‖w‖1Closed form (ridge); subgradient methods (LASSO)
k-NNVote of the k nearest training pointsNone; nothing is fittedStore the data
Decision treeAxis-aligned splits into regionsImpurity (entropy or Gini) at each splitGreedy splitting
Naive BayesFeatures independent given the classLikelihoodCounting (MLE), with Laplace smoothing
Perceptronsign(w⊤x)Number of mistakesUpdate w on each mistake
Logistic regressionσ(w⊤x), a probabilityLog lossGradient descent
SVMsign(w⊤x + b) with the widest marginHinge loss + ‖w‖2The dual problem; kernels for non-linear data
Bagging, random forestAverage of trees on bootstrap samplesEach tree's ownTrain the trees independently
AdaBoostWeighted vote of weak learnersExponential lossReweight the misclassified points each round
Neural networkLayers of weighted sums and non-linearitiesCross-entropy or squared errorBackpropagation and gradient descent

5.3Books and notes

The course page prescribes three books: Duda, Hart and Stork's Pattern Classification [27], Bishop's Pattern Recognition and Machine Learning [24], and Hastie, Tibshirani and Friedman's The Elements of Statistical Learning [25] [2]. The last two are free from their authors. Bishop lines up well with the course: linear regression is his Chapter 3, linear classifiers Chapter 4, neural networks Chapter 5, SVMs Chapter 7, mixtures and EM Chapter 9, PCA Chapter 12 and boosting Chapter 14.

If those feel heavy, An Introduction to Statistical Learning [26] is the gentle version of ESL, and Stanford's CS229 notes [28] derive most of the same algorithms in a few pages each. Closest of all to the course are the notes written for it: the MLT notes on the programme's GitHub [19] and a second set of weekly MLT notes [20].

5.4How MLT is marked

MLT uses the same formula as MLF [5]:

T = 0.05 GAA + max( 0.6 F + 0.25 max(Qz1, Qz2), 0.4 F + 0.25 Qz1 + 0.3 Qz2 )
(2)

with the same GAA (best 10 of Weeks 1–10 and Mock Quiz 1) and the same end term eligibility as Proposition 2. MLT adds one thing: a bonus of 3 marks for submitting the programming assignments, if the average of all your assignments is at least 40 [5]. Like every bonus in the programme, it is added only if you pass, and it can lift your grade but not turn a fail into a pass.

Remark 5.1 (live sessions). The MLT course team runs its own YouTube channel with TA sessions for each week, instructor sessions, workshops and a past-paper session every term [13].

5

6Machine Learning Practice (MLP)

MLP is taught by Ashish Tendulkar of Google Research. The course page calls it the “companion course to the ML Theory course”, one that “introduces the student to scikit-learn … to provide hands-on problem solving experience for all the methods and models learnt in the Theory course” [3]. The playlist has 98 videos, about 28 hours [11], and many of them are notebooks run live on real datasets: California housing, MNIST, MovieLens.

6.1The twelve weeks

Table 8: MLP week by week, from the lecture titles in the official playlist [11]. The course page's list [3] no longer matches the lectures (it shows Graph Theory for Week 2), so trust the portal.

WkTopicsIn scikit-learn terms
1pandas: Series and DataFrames, selecting, dropping, summary statisticsBefore any model
2Data loading, preprocessing, missing values, categorical and numeric transformers, scaling, outliers, feature selection, PCASimpleImputer, OneHotEncoder, StandardScaler
3Chaining transformers into pipelines; composite transformers; class imbalancePipeline, ColumnTransformer
4A tour of the models: linear and polynomial regression, evaluation, regularisation, tuning, Naive Bayes, k-NN, SVM, trees, bagging, boosting, neural networksGridSearchCV
5Regression end to end on California housing: baseline, SGD, k-NN, trees, ensembles, MLP regressorSGDRegressor
6Classification on MNIST and others: perceptron, logistic and softmax regression, ridge classifier, Naive Bayes, k-NN, SVC, trees, ensemblesLogisticRegression, SVC
7Large-scale learning; confusion matrix, accuracy, precision, recall, F1, multiclass metricsclassification_report
8Not in the public playlist; see your portal
9Clustering (k-means, hierarchical); an end-to-end project from framing to fine-tuningKMeans
10Recommender systems: content-based and collaborative filtering, matrix factorisationMovieLens
11Time series in pandas: resampling, decomposition, stationaritypandas
12Transfer learning; a recap of neural networks

6.2How MLP is marked

MLP has no quizzes. Its score comes from weekly assignments, two online remote-proctored programming exams (OPPE 1 and OPPE 2), three Kaggle assignments (KA) and the in-person end term [5]:

T = 0.1 GAA + 0.3 F + 0.2 OPPE1 + 0.2 OPPE2 + 0.2 KA
(3)
whereGAA is the best 10 of Weeks 1–10 and Mock Quiz 1, as in MLF, and KA is the average of the three Kaggle assignments.

Read the weights once more: 60% of MLP is the two OPPEs and the Kaggle assignments, all of them code. Only 30% is the end term. The course is a programming course in the way it is marked, not only in what it teaches.

Proposition 3 (Getting an MLP grade). You may sit the MLP end term if the average of your best 5 of 8 scores (Weeks 1–7 and Mock Quiz 1) is at least 40; no quiz is needed. To receive a grade you must then sit the end term and score at least 40/100 in at least one of the two OPPEs. OPPE 1 is scheduled only if you complete the System Compatibility Test (SCT) first.

Proof. Grading document [5], MLP section and the OPPE eligibility rules.

Table 9: What happens after the OPPEs and the end term, from the grading document's own table [5]. “Best OPPE” is the better of your two scores.

OPPEsEnd termTotal TResult
Absent or ineligibleAbsent or ineligible–U: repeat the course
Absent from bothPresent≥ 35I_OP: take the OPPEs alone next term
Absent from bothPresent< 35U
Best OPPE below 40Present≥ 40I_OP: take the OPPEs alone next term
Best OPPE below 40Present< 40U
Best OPPE below 40Absent–I_BOTH: OPPEs and end term next term
Best OPPE 40 or moreAbsent–I: the end term alone next term
Best OPPE 40 or morePresent–Graded on T

Whenever you redo the OPPEs, both are scheduled again, and the rest of your marks carry over. You can always choose to repeat the whole course instead [5].

6.3The Kaggle assignments

Each KA is a small Kaggle competition with a notebook you submit and a peer review after it. In May 2026 they ran 10–22 July, 27 July–4 August and 10–18 August, each with a peer-review deadline a few days later [5]. Together they are 20% of the course, as much as either OPPE.

What I learned doing them.Three habits mattered more than the choice of model. First, optimise the metric you are scored on: when a task is scored by F1, the probability threshold you cut at moves the score more than switching models does, and 0.5 is rarely the right cut. Second, distrust a perfect validation score: in one assignment, random cross-validation gave nearly every model a perfect score, yet the test rows came from whole groups that never appear in training. A split that held out entire groups showed the real spread between models. Third, keep the notebook boring: give it the exact title the instructions ask for (its URL comes from the title and goes into the submission form, so never rename it afterwards), and make sure it always writes submission.csv.

6

7The MLP Project

The project is a separate two-credit course, run as a Kaggle competition for 12 to 15 weeks and split into milestones [4]. Every student works alone on the same problem, a regression or a classification task that changes every term. You need to beat a leaderboard cutoff, and then pass two vivas with an industry examiner. Everything below is from the May 2026 guideline [6]; read your own term's guideline the day it is released, because the cutoff, the dates and the notebook name change.

7.1Registering correctly

Most project problems in the first weeks are registration problems. The guideline's seven steps, in order:

Algorithm 2: Project registration [6]

  1. create a Kaggle account, and join the competition from the link in the guideline
  2. in the competition's Code tab, create a notebook named <rollno>-notebook-<term>, all lowercase May 2026 example: 21f1001234-notebook-2026t2
  3. share it with the Kaggle user iitmbscs2008p (view access is enough), and keep it private
  4. make a first submission from that notebook; a dummy model is fine
  5. paste the notebook's link into the Competition Registration Form before the deadline late registration costs 1 mark a week
  6. check the registration status sheet it updates every 72 hours
  7. never rename that notebook, and never submit from any other

7.2Rules that end a project

Table 10: Conditions under which the project is discarded, failed or disqualified, from the guideline [6].

RuleWhat it means in practice
Only the FinalNotebook countsA CSV you upload by hand, or a submission from any other notebook, is not counted.
At least three different modelsRelying on a single model disqualifies the project.
No external dataTrain only on the competition's files.
CPU onlyDo not turn on Kaggle's GPU or TPU accelerators.
Private notebookIf your code is found public, you are disqualified.
Allowed libraries onlyNumPy, pandas, Matplotlib, scikit-learn, XGBoost, Seaborn, imbalanced-learn, SciPy, regex, LightGBM, Plotly, statsmodels, WordCloud, CatBoost, and Python's built-ins. Not TensorFlow, PyTorch, NLTK, pickle, AutoML tools or spaCy.
No plagiarismSharing notebooks or snippets with anyone, copying another student's work, and using solutions or notebooks from outside are all malpractice.
Five submissions a dayUnused submissions do not carry over to the next day.

7.3Milestones, cutoff and marks

There are five milestones, each a form on the course portal; you must submit at least two, and a milestone counts only once the response copy reaches your email. In May 2026 they fell on 21 June, 28 June, 5 July, 12 July and 21 July, the competition closed on 29 July, and students who did the MLP course that term had until 23 August to finish both vivas. The leaderboard cutoff that term was a score below 0.20 [6]. The final mark out of 100 is

Final = NB + M + L + S + V
(4)
whereNB (10) is your notebook, marked by the examiner for EDA, model training and selection, and model comparison;
M (5) is for completing all milestones; L (30) scales your leaderboard position; S (5) scales your number of submissions; V (50) is the Level 2 viva.

Proposition 4 (Passing the project). You pass if the viva score V is at least 25 out of 50 and the final mark is at least 50 out of 100. A viva score between 15 and 24 may be passed with a D or E grade at the instructor's discretion; below 15, the project must be repeated next term.

Proof. Project guideline, May 2026 [6]. Students who did the MLP course in Jan or May 2026 were marked out of 105, with up to 5 bonus marks by viva batch: Batch 1 earned 5 and a reattempt, Batch 2 earned 2 and a reattempt, Batch 3 earned neither.

Remark 7.1. The bonus goes to the earlier viva batches, so being ready early pays: Batch 1 is worth 5 marks and a second chance at the viva. Check your own term's guideline for how batches are assigned.

7.4The two vivas

Level 1is a checklist, not a score. The examiner checks that you understood the problem and loaded the data correctly; that your EDA covers single features and pairs of features with readable plots; that missing values, scaling and encoding are handled with reusable pipelines or functions applied identically to train and test; that you engineered features; that you tried at least three models from different families, tuned them, and compared them with suitable metrics; and that the notebook is clean and contains your best model [6].

Level 2decides your marks. It covers conceptual understanding, the mathematics, the practical side and programming. You may be asked to walk through your notebook in five minutes, to explain the five components of any model you used or learned (Section 5.2), and to write code from scratch or change your code on the spot. The examiner can ask about anything in the diploma, including MLF, MLT and statistics, even if the competition was a classification problem and the question is about regression. The guideline puts it bluntly: “Only using an API (e.g. DecisionTreeClassifier, SVC, etc.) is not sufficient, you should also know how it works internally” [6].

7.5What worked for me

None of this is code or a solution, and the competition changes each term. These are the habits that moved my score, in the order I would try them again.

  1. Train on the metric. My term's competition was scored on a log error, so I trained on the logarithm of the target. That one change made the training loss equal the metric and tamed a skewed target.
  2. Encode big categories carefully. For columns with thousands of categories, target encoding works only if it is computed out of fold (a row's own label never feeds its own value) and smoothed towards the overall mean; without that, it leaks. Letting LightGBM or CatBoost handle the categories natively turned out just as good, and simpler.
  3. Average, don't over-tune. Averaging the same few models over several random seeds improved my real leaderboard score. A long hyperparameter search looked better in my cross-validation and then scored worse on the leaderboard.
  4. Believe the leaderboard over your laptop. When local validation and the leaderboard disagreed, the leaderboard was right, including about pseudo-labelling, which helped locally and hurt on the leaderboard.
  5. Write submission.csv early. Long notebooks time out. Write the file after each stage so a timeout still leaves a valid submission.
  6. Rehearse the viva as code. I prepared a five-minute walkthrough and practised writing PCA, a pipeline, target encoding, k-means and ridge regression without notes.

7

8Assessments, one by one

8.1Weekly graded assignments

Every week of every course has a graded assignment with a fixed deadline, listed in the grading document. The May 2026 document adds, in capitals, that none of the deadlines will be moved [5]. The assignments carry a small weight in the total (5% in MLF and MLT, 10% in MLP), but Weeks 1–7 decide whether you may sit the end term at all (Proposition 2), so treat the early weeks as the ones that matter most.

MLF and MLT.The questions are multiple choice, multiple select and numeric entry. In a multiple-select question, treat each option as its own true-or-false question. In a numeric question, read the rounding instruction first, carry full precision through the working and round only once, at the end. When a definition has two common versions (dividing by n or by n − 1 in a variance, for instance), use the one the lectures use.

MLP.Most questions give you a dataset and a precise recipe, and ask for a number: train this model with these parameters and report this metric on this split, to three decimal places. The marks go to the exact number, so the method is about matching the recipe, not about modelling well.

Algorithm 3: Answering an MLP assignment question

  1. load the data exactly as the question says: same file, same columns, same train–test split and random_state
  2. set every parameter the question names; leave every other one at its scikit-learn default
  3. fit transformers and models on the training set only, then apply them to the test set
  4. compute the metric the question asks for, on the set it asks for
  5. round to the requested number of decimals only at the end
  6. if your number does not match any option then
  7. re-read the split and the parameters, then check your scikit-learn version defaults change between versions
  8. end if

8.2Am I eligible for the end term?

Enter your scores for Weeks 1–7 and Mock Quiz 1. The check takes the best 5 of the 8, as Propositions 2 and 3 say. Leave a box empty if that assignment is not out yet; it counts as zero.

8.3Quizzes (MLF and MLT)

Both quizzes are written in person at an exam centre. Quiz 1 covers Weeks 1–4 and Quiz 2 covers Weeks 1–8. A quiz is one sitting for all your courses: 2 hours if you have one or two quiz courses, 3 hours for three and 4 hours for four. There is no make-up quiz; a quiz you miss scores zero [8]. In the Sep 2026 term, Quiz 1 is on Sunday 15 November and Quiz 2 on Saturday 5 December [7].

Each course runs a mock quiz before Quiz 1, and it counts: it is the “Mock Assignment” in both GAA and the eligibility check. Where a course runs mocks before both quizzes, an average of at least 40 across them earns up to 2 bonus marks [5]. Past papers are the best preparation there is; Section 11 lists where students have solved them on video.

8.4OPPEs (MLP)

The Online Programming Exams are remote-proctored and taken on your own computer. Before OPPE 1 you must pass the System Compatibility Test; skip it and OPPE 1 is not scheduled at all [5]. In the Sep 2026 term, OPPE 1 runs on 21–22 November, and OPPE 2 on 19–20 December and 2–3 January [7]; your slot is allotted closer to the date.

The practice that transfers best is to redo the weekly MLP assignments against a clock, with nothing open but your notebook and the scikit-learn documentation, until loading, splitting, fitting and scoring is muscle memory. A community-made OPPE 1 mock on Kaggle [43] gives you the format. Read the exam's own instructions for what may be open on screen; do not assume.

8.5The end term

The end term is written in person, and in the Sep 2026 term it is on Sunday 10 January 2027 [7]. It covers all twelve weeks, including Weeks 11 and 12 whose assignments do not count towards GAA. It carries 40–60% of MLF and MLT, depending on which branch of Equation (1) wins, and 30% of MLP. In MLF and MLT, a strong end term can rescue a weak quiz through the first branch of the formula; in MLP no end term score can stand in for passing an OPPE (Table 9).

8

9Marks calculator

Pick a course and fill in what you know. The calculator applies Equations (1)–(4) exactly, draws your total as a function of the score you do not know yet, and tells you the end term (or viva) score each grade needs. Numbers you type stay in this browser.

GradeTotal neededEnd term needed
Figure 3: Your total T as the end term score F (or, for the project, the viva score V) goes from zero to full marks, with the grade bands drawn as horizontal lines. The dot is where you are with the score you entered. Grade bands follow the programme's usual scale (S ≥ 90, A ≥ 80, B ≥ 70, C ≥ 60, D ≥ 50, E ≥ 40); confirm them in the student handbook for your term. Bonus marks are added only if you pass without them [5].

Trap.A total of 40 is not enough on its own. You also need end term eligibility (Proposition 2), for MLP an OPPE score of at least 40 (Proposition 3), and for the project a viva of at least 25 and a total of at least 50 (Proposition 4). The calculator checks these too.

9

10The term on one chart

The dates below are the programme's academic calendar [7], which already covers the next three terms. Course-level dates (weekly deadlines, Kaggle assignments, project milestones) arrive with each term's grading document and project guideline.

DateWhatFor
Tue 22 – Wed 23 Sep 2026Course registrationEveryone
Fri 2 Oct 2026Term startsEveryone
Fri 23 – Sun 25 Oct 2026Drop course windowEveryone
Sun 15 Nov 2026Quiz 1MLF, MLT
Sat 21 – Sun 22 Nov 2026OPPE 1MLP
Sat 5 Dec 2026Quiz 2MLF, MLT
Sat 19 Dec 2026 – Sun 3 Jan 2027OPPE 2 (four days)MLP
Sun 10 Jan 2027End termMLF, MLT, MLP
Mon 18 – Sat 23 Jan 2027End term resultsEveryone
Figure 4: Exam dates for the selected term, from the academic calendar [7]. Diamonds are single days, bars are windows, and the red line is today. The calendar calls the OPPEs “programming quizzes”; your own OPPE slot within each window is allotted closer to the date [5].

10

11Every resource worth opening

I opened every link here before adding it. The official material comes first, because the exams are written from it; everything else is there to explain the same ideas a second way. Full entries, with addresses, are in the References.

Left out on purpose.Repositories and videos that post answers to graded assignments or programming exams, and sites that sell “solutions”. They are easy to find and they cost more than they give: the assignments decide your end term eligibility, and the project rules treat outside solutions as malpractice [6].

11.1Official, for all three courses

ResourceWhat you get
Lecture playlists [9]–[11]All the lectures: MLF 93 videos (37 h), MLT 74 (27 h), MLP 98 (28 h). Watch at 1.25× once you know the lecturer's pace.
IIT Madras BS YouTube channel [12]Revision sessions and live sessions, including MLF revision for Weeks 1–4 and MLP “solve with instructor” sessions.
Grading document [5] and academic calendar [7]The only source of truth for formulas, eligibility and dates. Re-read the grading document when a new term's version appears.
Discourse forum [49]Where the course teams answer doubts. Reading time also earns participation badges [5].

11.2For MLF

ResourceBest for
MLF course notes [18]Written notes for the course, on the programme's own GitHub.
Mathematics for Machine Learning [22]The textbook closest to MLF; free. Chapters 2–7 cover the course.
Strang, MIT 18.06SC [30]Weeks 3–6: subspaces, projections, eigenvalues, SVD. MLF Week 3's “four fundamental subspaces” are Strang's own framing.
3Blue1Brown [31, 32]Pictures for linear algebra and calculus when the algebra stops meaning anything.
Boyd and Vandenberghe [23]Weeks 9–10: convex sets, duality and KKT, properly; free.
Seeing Theory [34]Weeks 11–12: probability and estimation, visually.
Past papers on video [40, 41, 42]Students solving MLF Quiz 1 and end term papers, and a last-minute revision of the course. Unofficial: check the working yourself.

11.3For MLT

ResourceBest for
MLT course channel [13]Weekly TA sessions, instructor sessions, workshops and past-paper sessions, organised by term.
MLT notes [19, 20]Two sets of week-by-week notes written for this course, with slides, notebooks and derivations.
MLT Workshop, Jan 2024 [17]“Implementing Machine Learning Techniques”: four days of turning the MLT algorithms into code.
Bishop, PRML [24] and ESL [25]The prescribed books, both free. Bishop's chapter map is in Section 5.3.
ISLP [26] and CS229 notes [28]Gentler versions of the same algorithms, with the derivations kept.
StatQuest [33]Ten-minute explanations of PCA, k-means, Naive Bayes, SVMs, boosting and more.
NPTEL: Introduction to Machine Learning, IIT Madras [35]A second full course on the same material from IIT Madras.
Past papers on video [40], notes on Medium [45]Student-made: MLT Quiz 1 papers solved, and a set of summary notes. Unofficial.

11.4For MLP and the project

ResourceBest for
MLT to MLP [15]A short official series on the ML component framework: data, model, loss, optimisation, evaluation. The viva's framework, taught directly.
MLP Tutorials and MLP Workshop [14, 16]Official pandas and plotting tutorials (merge, pivot, apply, Seaborn, Matplotlib) and a starter workshop on pandas, visualisation and Colab.
scikit-learn User Guide [36]The real reference for every estimator and its defaults. Many MLP answers hinge on a default value.
scikit-learn MOOC [37]A free course by scikit-learn's own developers: pipelines, cross-validation, tuning, done properly.
Géron's notebooks [29]The end-to-end project notebook is the shape of MLP's Week 9 lectures and of the project itself.
Kaggle Learn [38] and Playground competitions [39]Short courses on pandas and feature engineering; practice competitions the project guideline itself recommends [6].
ML Handbook [21]Case studies and notebooks on preprocessing, metrics and EDA, from the programme's GitHub. Good viva preparation.
OPPE mock [43], summaries [44, 46], notebooks [47]Student-made: an OPPE 1 mock on Kaggle, two sets of MLP summary notes, and week-by-week practice notebooks for MLT and MLP. Unofficial.
TDS Field Guide [48]TDS is a co-requisite of MLP; this is the same kind of guide for it.

11

12If you remember nothing else

  1. MLF is maths, MLT is algorithms, MLP is code. Study each the way it is examined.
  2. MLT must come before MLP. MLF can share a term with MLT, and TDS always sits with MLP.
  3. Weeks 1–7 and Mock Quiz 1 decide whether you may sit the end term: best 5 of 8, average 40. In MLF and MLT you must also attend a quiz.
  4. In MLF and MLT the formula forgives one bad quiz; it does not forgive a bad end term.
  5. In MLP, 60% of the marks are the OPPEs and Kaggle assignments, and no grade comes without an OPPE score of 40. Take the SCT early.
  6. For every model you meet, know its five components: data, model, loss, training, evaluation. The project viva will ask.
  7. For the project: register exactly as the guideline says, submit only from the FinalNotebook, keep it private, and finish early.
  8. When this guide and an official page disagree, the official page is right.

Acknowledgements.Made by Angad Jangir. Thanks to the MLF, MLT and MLP course teams, whose public lectures and notes this guide points to, and to every student who solved a past paper on camera for the next batch. Found a mistake or something out of date? Open an issue on GitHub.

12

References

All links were opened and checked on 22 September 2026. Entries marked unofficial are made by students or third parties; use them to learn, and check anything that matters against the official sources.

Official documents

  1. [1]IIT Madras BS Degree. BSCS2004: Machine Learning Foundations, course page. study.iitm.ac.in/ds/course_pages/BSCS2004.html
  2. [2]IIT Madras BS Degree. BSCS2007: Machine Learning Techniques, course page. study.iitm.ac.in/ds/course_pages/BSCS2007.html
  3. [3]IIT Madras BS Degree. BSCS2008: Machine Learning Practice, course page. study.iitm.ac.in/ds/course_pages/BSCS2008.html
  4. [4]IIT Madras BS Degree. BSCS2008P: Machine Learning Practice – Project, course page. study.iitm.ac.in/ds/course_pages/BSCS2008P.html
  5. [5]IIT Madras BS Degree. BS-DS May 2026 Grading Document (Student). Sections “Machine Learning foundations”, “Machine Learning Techniques”, “Machine Learning Practice”, the requisites table and the single-diploma pathways. docs.google.com/document/d/e/2PACX-1vT5PBO…/pub
  6. [6]IIT Madras BS Degree. MLP Project Guideline [May-26]. docs.google.com/document/d/e/2PACX-1vQM1Di…/pub
  7. [7]IIT Madras BS Degree. Academic Calendar (Sep 2026, Jan 2027, May 2027 and Sep 2027 terms). study.iitm.ac.in/ds/academic_calendar.html
  8. [8]IIT Madras BS Degree. Academics: assessments. Quiz coverage (Weeks 1–4 and 1–8), quiz durations, no make-up quiz. study.iitm.ac.in/ds/academics.html

Official video

  1. [9]Harish Guruprasad Ramaswamy, Arun Rajkumar, Prashanth L.A. Machine Learning Foundations, lecture playlist, 93 videos. youtube.com/playlist?list=PLZ2ps__7DhBammhVmBE9f5eezTj2kDfTN
  2. [10]Arun Rajkumar. Machine Learning Techniques, lecture playlist, 74 videos. youtube.com/playlist?list=PLZ2ps__7DhBbA_e6_G3FI-BA1f7lCINUu
  3. [11]Ashish Tendulkar. Machine Learning Practice, lecture playlist, 98 videos. youtube.com/playlist?list=PLZ2ps__7DhBb3ovNQam2c_WcGeiW9OhQo
  4. [12]IIT Madras – B.S. Degree Programme, YouTube channel: revision and live sessions. youtube.com/channel/UCvKzzGO37oT83K0FwnUucxw
  5. [13]Machine Learning Techniques, the course team's YouTube channel: TA sessions, instructor sessions, workshops, past-paper sessions. youtube.com/channel/UCDfGVHEjpmm9ReQ4S2W_vAg
  6. [14]MLP Tutorials, playlist. youtube.com/playlist?list=PLZ2ps__7DhBZLcKmaNjTBWILjG8q1p_Ms
  7. [15]MLT to MLP, playlist on the ML component framework. youtube.com/playlist?list=PLZ2ps__7DhBYtYINAb1qm8Um8f4DegtMa
  8. [16]MLP Workshop, May 2024, playlist. youtube.com/playlist?list=PLZ2ps__7DhBYzCsuCMIXgDlaP8lfZm_6g
  9. [17]MLT Workshop, Jan 2024: Implementing Machine Learning Techniques, playlist. youtube.com/playlist?list=PLZ2ps__7DhBZZi8I7Thy5fJWAG_E8zQwD

Notes written for these courses

  1. [18]MLF Course Notes. bsc-iitm.github.io/machine-learning-foundations
  2. [19]CS2007: Machine Learning Techniques, notes with videos, slides and Colab notebooks per week. bsc-iitm.github.io/MLT_notes
  3. [20]karthik-iitm, GitHub. MLT Notes, weekly notes. karthik-iitm.github.io/MLT
  4. [21]Alape Aniruddha, Sherry Thomas, Vivek Sivaramakrishnan. ML Handbook. bsc-iitm.github.io/ML_Handbook

Books, free from their authors unless noted

  1. [22]M. P. Deisenroth, A. A. Faisal, C. S. Ong. Mathematics for Machine Learning. Cambridge University Press, 2020. mml-book.github.io
  2. [23]S. Boyd, L. Vandenberghe. Convex Optimization. Cambridge University Press, 2004. web.stanford.edu/~boyd/cvxbook
  3. [24]C. M. Bishop. Pattern Recognition and Machine Learning. Springer, 2006. microsoft.com/en-us/research/publication/pattern-recognition-machine-learning
  4. [25]T. Hastie, R. Tibshirani, J. Friedman. The Elements of Statistical Learning, 2nd ed. Springer, 2009. hastie.su.domains/ElemStatLearn
  5. [26]G. James, D. Witten, T. Hastie, R. Tibshirani, J. Taylor. An Introduction to Statistical Learning, with Applications in Python. Springer, 2023. statlearning.com
  6. [27]R. O. Duda, P. E. Hart, D. G. Stork. Pattern Classification, 2nd ed. Wiley, 2001. Not free.
  7. [28]A. Ng, T. Ma. CS229 Lecture Notes. Stanford University. cs229.stanford.edu/main_notes.pdf
  8. [29]A. Géron. Hands-On Machine Learning with Scikit-Learn, Keras and TensorFlow, 3rd ed. O'Reilly, 2022. The book is not free; its notebooks are. github.com/ageron/handson-ml3

Lectures and courses elsewhere

  1. [30]G. Strang. 18.06SC Linear Algebra. MIT OpenCourseWare, 2011. ocw.mit.edu/courses/18-06sc-linear-algebra-fall-2011
  2. [31]3Blue1Brown. Essence of Linear Algebra, 16 videos. youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab
  3. [32]3Blue1Brown. Essence of Calculus, 12 videos. youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr
  4. [33]J. Starmer. StatQuest, YouTube channel. youtube.com/@statquest
  5. [34]D. Kunin et al. Seeing Theory. Brown University. seeing-theory.brown.edu
  6. [35]NPTEL. Introduction to Machine Learning, IIT Madras. nptel.ac.in/courses/106106139
  7. [36]scikit-learn developers. User Guide. scikit-learn.org/stable/user_guide.html
  8. [37]Inria. Machine learning in Python with scikit-learn (MOOC). inria.github.io/scikit-learn-mooc
  9. [38]Kaggle. Kaggle Learn. kaggle.com/learn
  10. [39]Kaggle. Playground competitions. kaggle.com/competitions?hostSegmentIdFilter=8

Unofficial, made by students

  1. [40]Shagun Singh IITM, YouTube: MLF Quiz 1 PYQs Solved and Explained (video) and MLT Quiz 1 PYQs Solved (video). youtube.com/channel/UCVRhC3uhjjZcaiYr9itutfg
  2. [41]MyCampus, YouTube. MLF ET PYQ, May 2023. youtube.com/watch?v=Y09hVsvytMs
  3. [42]Unknown IITians, YouTube. Machine Learning Foundations (MLF) in Last Minutes. youtube.com/watch?v=VMSxwuTvy8c
  4. [43]param302, Kaggle. IITMBS MLP OPPE 1 Mock 1. kaggle.com/code/param302/iitmbs-mlp-oppe-1-mock-1
  5. [44]MLP Notes: BSCS2008 Machine Learning Practice. mlp-summary.pages.dev
  6. [45]P. Bhalla, Medium. Machine Learning Techniques (MLT) Notes. medium.com/@prathambhalla7/…-mlt-notes-6ee203e4687d
  7. [46]P. Bhalla, Medium. Machine Learning Practice (MLP) Notes. medium.com/@prathambhalla7/…-mlp-notes-7f926e0120c7
  8. [47]esviswajith95, GitHub. Notebooks from the ML Techniques (MLT) and ML Practice (MLP) courses.

Related

  1. [48]TDS Field Guide, a guide to Tools in Data Science. angadseth.github.io/tds-field-guide
  2. [49]IIT Madras BS Degree. Discourse forum (sign-in required). discourse.onlinedegree.iitm.ac.in

13

ACommon doubts

A.1Can I take MLF and MLT in the same term?

Yes. MLF is a co-requisite of MLT, so the same term is allowed, and most plans do exactly that (Table 2). Expect MLT to use eigenvectors before MLF teaches them (Remark 2.1).

A.2Can I take MLT and MLP together?

The grading document lists MLT as a prerequisite of MLP, so plan MLP for the term after MLT [5]. If your registration page lets you do otherwise, ask the programme office before relying on it.

A.3Do MLF and MLT have OPPEs? Does MLP have quizzes?

No to both. MLF and MLT have two in-person quizzes and an end term; MLP has two OPPEs, three Kaggle assignments and an end term [5].

A.4What happens if I miss a quiz?

It scores zero, and there is no make-up [8]. Equation (1) takes the better of two formulas, and the first uses only your better quiz, so one missed quiz costs less than you fear. But you must attend at least one quiz to sit the end term (Proposition 2).

A.5Does the mock quiz count for anything?

Yes. Mock Quiz 1 is the “Mock Assignment” on your dashboard, and it is one of the scores in both the end term eligibility check and GAA [5].

A.6Do the Week 11 and 12 assignments count?

Not towards GAA, which uses Weeks 1–10 and the mock. Their content is in the end term, and the grading document asks you to do them anyway [5].

A.7What is the SCT, and do I need it?

The System Compatibility Test checks that your computer can run the proctored OPPE. For MLP you need it: without it, OPPE 1 is not scheduled for you [5]. Do it the first week it opens.

A.8I failed the OPPEs. Do I repeat all of MLP?

Not necessarily. If you sat the end term and your total is high enough, you get I_OP and take only the OPPEs next term, with your other marks carried over (Table 9).

A.9Are the Kaggle assignments the same thing as the MLP Project?

No. The three Kaggle assignments are part of the MLP course and worth 20% of it. The MLP Project is a separate two-credit course with its own competition, milestones and vivas.

A.10Can I use a GPU for the project?

No. The guideline requires a CPU-only notebook; do not switch on Kaggle's accelerators [6].

A.11Can I use PyTorch or TensorFlow in the project?

No. Only the listed libraries are allowed: NumPy, pandas, Matplotlib, scikit-learn, XGBoost, Seaborn, imbalanced-learn, SciPy, regex, LightGBM, Plotly, statsmodels, WordCloud, CatBoost and Python's built-ins [6].

A.12Can I upload a submission file I made on my laptop?

You can upload it, but it will not count. Only submissions made from your registered FinalNotebook count, and the guideline says experiments run on your own machine are not considered for evaluation [6].

A.13How many project submissions do I get?

Five a day, and unused ones do not carry over [6]. The number of submissions you make is itself worth up to 5 marks (S in Equation (4)).

A.14What is the project cutoff?

It is set every term. In May 2026 it was a leaderboard score below 0.20, and your FinalNotebook, when run, has to reach it too [6].

A.15Can I finish the project this term and do the viva next term?

No. The project and both vivas must be completed in the same term; the problem statement changes every term [6].

A.16What will the viva ask?

Anything from the diploma, including MLF, MLT and statistics; the five components of every model you used or learned; a walk-through of your notebook; and possibly code written on the spot [6]. See Section 7.4.

A.17Do I need to buy the textbooks?

No. Bishop, ESL, ISLP, Mathematics for Machine Learning and Boyd are free from their authors (References [22]–[26]). Only Duda, Hart and Stork is not.

A.18How much maths does MLP need?

Less than MLT to pass the assignments, but the viva and the Kaggle work reward knowing what each model does inside. That is MLT's job; MLP assumes it.

A.19Can I share my assignment answers or my project notebook?

Don't. Assignments are individual work, and the project guideline lists sharing notebooks or snippets with anyone as malpractice [6]. Discussing ideas is fine; this guide is built on that line.

A.20Where do I ask a doubt?

On Discourse [49], where the course teams answer, and in the live and TA sessions [12, 13].

A.21What marks do I need for each grade?

The usual scale is S ≥ 90, A ≥ 80, B ≥ 70, C ≥ 60, D ≥ 50, E ≥ 40, and U below 40; confirm it in the student handbook for your term. Use the calculator in Section 9 to see what end term score gets you there.

A.22When does the Sep 2026 term start?

Registration is on 22–23 September 2026, the term starts on 2 October, and the end term is on 10 January 2027 [7]. All the dates are in Section 10.

14

BGlossary

GA, GAA
Graded assignment (the weekly one); the graded assignment average used in the total, best 10 of Weeks 1–10 and Mock Quiz 1 in these three courses.
Mock Assignment
How Mock Quiz 1 appears on your dashboard. It counts in GAA and in end term eligibility.
Qz1, Qz2
The two in-person quizzes of MLF and MLT, covering Weeks 1–4 and 1–8.
F, T
End term score; total course score, out of 100.
OPPE
Online (remote-proctored) programming exam. MLP has two; the academic calendar calls them programming quizzes.
SCT
System Compatibility Test. Required before OPPE 1 is scheduled.
KA
Kaggle assignment. MLP has three, each with a peer review, together 20% of the course.
PA
Programming assignment. In MLT, submitting them earns a 3-mark bonus if your assignment average is at least 40.
FinalNotebook
The one Kaggle notebook you register for the project. Only its submissions count.
NB, M, L, S, V
The five parts of the project mark: notebook, milestones, leaderboard, submissions, viva (Equation (4)).
Level 1, Level 2 viva
The project's two vivas: a checklist, then the marked viva out of 50.
I, I_OP, I_BOTH
Incomplete: redo only the end term, only the OPPEs, or both, next term, with your other marks carried over.
U, WA, WQ
Fail grades. U after an attempt; WA and WQ when you were not eligible for the end term.
Co-requisite, prerequisite
A course you may take in the same term, and one you must finish first.

15