Converge ML field guide, Sep 2026 edition

IIT Madras BS, Diploma in Data Science

Before you start MLF, MLT and MLP, read this.

What a senior would tell you before the machine learning courses: what each one really asks of you, how they fit together, how every mark is counted, and how to get through the quizzes, OPPEs, Kaggle assignments and the project viva. Checked against the official course pages and the grading document.

Not an official course page. Rules and dates change every term, so check your term's grading document. No answers to graded work here, only how to approach it.

Tap the plot to choose a start.
The whole diploma in one picture. Gradient descent, which is MLF Week 8. Tap anywhere on the plot to start a new run. Push the learning rate up and it overshoots; take the momentum away and it gets stuck in the first basin.

Three courses and a project

14 credits

MLF 4, MLT 4, MLP 4 and the MLP Project 2.

Official lectures

About 92 h

MLF 37 h, MLT 27 h, MLP 28 h, all free on YouTube.

Sep 2026 term

Starts 2 Oct

Quiz 1 on 15 Nov. End term on 10 Jan 2027.

MLP is different

No quizzes

Two OPPEs and three Kaggle assignments instead.

Three courses, three different skills

MLF is maths. MLT is algorithms. MLP is code.

MLF

Calculus, linear algebra, optimisation and probability. Nearly every question is a calculation by hand, so practise problems every single week.

MLT

PCA to SVMs to neural networks. Know what each model assumes, what it minimises and how it trains. Derive it; don't memorise it.

MLP

The same models in scikit-learn, marked on code: two OPPEs and three Kaggle assignments. Your numbers have to match exactly.

The Sep 2026 term, drawn to scale

from the official academic calendar

Show the dates as a list
DateWhatFor
Diamonds are single days, bars are windows, and the red line is today. OPPE 2 runs over four days, two before the holidays and two after; your own slot is allotted closer to the date. Weekly deadlines, Kaggle assignment and project dates come with each term's grading document.
Chapters
  1. 01The three courses
  2. 02Which order to take them
  3. 03Before you start
  4. 04MLF: Foundations
  5. 05MLT: Techniques
  6. 06MLP: Practice
  7. 07The MLP Project
  8. 08Every assessment
  9. 09Marks calculator
  10. 10Resources
  11. 11Doubts, answered
  12. 12Glossary
01

The three courses

MLF, MLT and MLP share the letters ML and almost nothing else. One is maths, one is theory, one is code. They reward different habits, and most of the pain in these courses comes from studying all three the same way.

The project is a separate two-credit course with its own registration. Its fee stays valid for two terms.

Together with the MLP Project they make up most of the Diploma in Data Science. Here is what each one is, straight from the official course pages and the grading document.

BSCS2004, 4 credits

Machine Learning Foundations

The maths under machine learning: calculus, linear algebra, optimisation and probability. No model is trained; nearly every question is a calculation.

Taught by
Harish Guruprasad Ramaswamy, Arun Rajkumar, Prashanth L.A.
Exams
Two quizzes and the end term, in person
BSCS2007, 4 credits

Machine Learning Techniques

The algorithms, derived: PCA, clustering, regression, Naive Bayes, SVMs, ensembles and neural networks, and why each one works.

Taught by
Arun Rajkumar
Exams
Two quizzes and the end term, in person
BSCS2008, 4 credits

Machine Learning Practice

The same models in Python with scikit-learn, on real datasets. Marked mostly on code, not on paper.

Taught by
Ashish Tendulkar (Google Research)
Exams
Two online proctored OPPEs, three Kaggle assignments, the end term. No quizzes.
BSCS2008P, 2 credits

MLP Project

A Kaggle competition among students. Beat a score cutoff from one registered notebook, then defend your work in two vivas.

Taught by
Ashish Tendulkar
Marked on
Leaderboard, milestones, notebook and a viva out of 50

Who wrote this

I took these courses in 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. Everything below is either from an official page, linked where it is used, or clearly marked as my own experience.

02

Which order to take them

There is only one hard rule: MLT before MLP. Everything else can share a term.

Rule

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

Source: requisites table, grading document, May 2026. The MLP course page lists MLF and MLT both as prerequisites; the grading document is newer.

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 same term is fine
What depends on what, from the grading document.

The official study plans

The grading document gives its own plans for someone doing only the Data Science diploma. Here are the three that use the Business Analytics track; the Deep Learning track swaps BA for the Deep Learning and Generative AI course and its project. All three agree: MLF first, MLP after MLT, and TDS in the same term as MLP.

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

Two things nobody tells you

Week 4 of MLF is eigenvalues. Watch it in your first week of MLT.

MLF and MLT together, the most common pairing, starts out of sync. MLT opens with PCA in Week 1. The MLF lectures only reach eigenvalues in Week 4 and PCA in Week 7. For about a month MLT uses maths that MLF has not taught you yet. Watch the MLF eigenvalue lectures early, or 3Blue1Brown's short chapter on eigenvectors, and the gap closes.

MLP and its project in the same term is allowed, but the guideline warns against it: "If you are new to ML, you should complete the MLP course in one term and the MLP project in a later term." The project's milestones don't follow the course's week order, so you would be learning some topics before the lectures reach them.

03

Before you start

None of the three courses teaches its prerequisites again. MLF opens with one week of calculus and then goes straight to subspaces. MLP opens with pandas and assumes you can already write Python.

Be comfortable withLearned inFirst needed in
Matrices, matrix products, solving Ax = bMaths 1 and 2MLF Week 3, MLT Week 1
Derivatives, partial derivatives, the gradientMaths 1 and 2MLF Week 2, every loss in MLT
Eigenvalues of a small matrixMaths 2MLT Week 1, MLF Week 4
Probability, expectation, the normal distributionStats 1 and 2MLT Week 4, MLF Weeks 10–12
Python functions, loops, lists, dictionariesPythonMLP Week 1, MLT programming assignments
Reading and filtering a table in pandasYour own practiceMLP Week 1 (the whole week is pandas)

Ten-line readiness check

Tick what is true today. It stays on this device only.

Readiness check

Fixing the gaps. For the maths lines, 3Blue1Brown's Essence of Linear Algebra and Essence of Calculus are the fastest way back in. For probability, Seeing Theory. For pandas, the free course on Kaggle Learn takes an evening.

04

MLF: Machine Learning Foundations

A maths course wearing an ML name tag. In the course page's own words, it covers "fundamentals that do not necessarily fall under Machine Learning but are quite necessary" for it.

93 lectures, about 37 hours. Every one is on YouTube.

Calculus, linear algebra, optimisation and probability, each tied back to a machine learning problem. Taught by Harish Guruprasad Ramaswamy, Arun Rajkumar and Prashanth L.A. Here is the course week by week, from the titles in the official lecture playlist. The course page orders the middle weeks a little differently; follow your portal.

WeekWhat you learnWhere it comes back
1What ML is: regression, classification, dimensionality reduction, density estimationThe map for the whole diploma
2Calculus: continuity, derivatives, linear approximation, many variablesEvery gradient in MLT
3The four fundamental subspaces, projections, least squaresLinear regression is a projection
4Linear and polynomial regression; eigenvalues, eigenvectors, diagonalisationPCA
5Complex, Hermitian and unitary matricesWhy symmetric matrices behave
6Singular value decomposition; positive definite matricesPCA, compression
7Principal component analysis, as maximising varianceMLT Weeks 1–2
8Unconstrained optimisation, gradient descent, Taylor seriesHow every model trains
9Constrained optimisation, Lagrange multipliers, convexitySVMs, regularisation
10Convexity in ML; primal and dual; KKT conditionsThe SVM dual in MLT
11Continuous random variables; uniform, exponential, normalMLE, Naive Bayes
12Multivariate normal, estimation, Gaussian mixtures and EMMLT Week 4

What makes it hard

Weeks 3 to 6, the linear algebra block. It moves fast and builds on itself: a doubt left over from Week 3 becomes three doubts by Week 6. Week 5's Hermitian and unitary matrices feel far from ML until you see they are the reason PCA and the SVD work.

The optimisation weeks are where it turns into ML. Gradient descent, convexity, Lagrange multipliers and KKT are exactly the tools MLT uses for regression, logistic regression and SVMs. Time spent here pays twice.

Almost every question is a number. One slip in the last line costs the whole question, so checking your arithmetic is a skill worth practising on its own.

A week that works

  1. Watch with a notebook open. Pause at every worked example and try it before the lecturer finishes it.
  2. Do the practice assignment without notes. Then, for every miss, find the minute of the lecture that explains it.
  3. Do the graded assignment, and check each number a second way. For example, verify an eigenvector by actually computing Av.
  4. Write the week on one page: definitions, results, one example. Twelve pages is your revision for the end term.
  5. Before each quiz, redo the assignments in scope and then past papers against the clock. Quiz 1 covers Weeks 1–4, Quiz 2 covers Weeks 1–8.

Free book that matches the course: Mathematics for Machine Learning, chapters 2 to 7.

Books that match. Chapters 2–7 of Mathematics for Machine Learning follow MLF almost chapter for chapter, and it is free. For convexity and KKT, Boyd and Vandenberghe is the standard text, also free. The subspace weeks are Gilbert Strang's own framing, so his MIT course is the natural companion.

How MLF is marked

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

GAA is the average of your best 10 of 11 scores (Week 1–10 assignments and Mock Quiz 1). Qz1, Qz2 are the quiz scores, 0 if you missed one. F is the end term. All out of 100. From the May 2026 grading document.

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

Worked example. GAA 80, Quiz 1 50, Quiz 2 70, end term 60. First formula: 36 + 17.5 = 53.5. Second: 24 + 12.5 + 21 = 57.5. So T = 4 + 57.5 = 61.5. Try your own numbers in the calculator.

Rule

To sit the end term: the average of your best 5 of 8 scores (Week 1–7 assignments and Mock Quiz 1) must be at least 40, and you must attend at least one of the two quizzes. The same rule applies to MLT.

Source: grading document, MLF and MLT sections, updated 15 July 2026. Mock Quiz 1 shows up on your dashboard as "Mock Assignment".

Trap: skipping Weeks 11 and 12

Their 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. Do them.

05

MLT: Machine Learning Techniques

The course where the maths becomes algorithms you can explain. It is also the course the MLP Project viva leans on most.

74 lectures, L1 to L74, about 27 hours.

Taught by Arun Rajkumar. The course page sets the aim: "the main methods and models used in machine learning problems of regression, classification and clustering", and "their suitability for different problems". Its week list matches the lecture order.

WeekWhat you learnLectures (my grouping)
1Representation learning and 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
9Perceptron and logistic regressionL52–L56
10Support vector machinesL57–L65
11Ensembles: bagging and boosting (AdaBoost)L66–L71
12Neural networks; multiclass classificationL72–L74

The one habit: five components for every model

For every method, be able to say five things: what data it expects, what model it can represent, what loss it minimises, how it is trained, and how it is evaluated. This is not my framing. It is exactly what the MLP Project's Level 2 viva asks for, for "every machine learning model that you have learnt and/or used", and the programme even has a short official series on it called MLT to MLP. Here is a start. Write your own as the course goes.

MethodModelLoss or objectiveTrained by
PCAProjection onto the top k eigenvectors of the covarianceReconstruction error (same as maximising variance)Eigendecomposition
Kernel PCAPCA in a feature space given by a kernelSame, in feature spaceEigendecomposition of the kernel matrix
K-meansk centroids; each point joins the nearestWithin-cluster sum of squared distancesLloyd's algorithm: assign, update, repeat
Gaussian mixtureWeighted sum of k GaussiansNegative log-likelihoodEM
Linear regressionw·xSquared errorNormal equations or gradient descent
Ridge / LASSOw·xSquared error + λ‖w‖² or + λ‖w‖₁Closed 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, 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‖²The dual problem; kernels for curved boundaries
Bagging, random forestAverage of trees on bootstrap samplesEach tree's ownTrees trained 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

Books and notes

Bishop's chapter map: regression 3, classifiers 4, neural nets 5, SVMs 7, EM 9, PCA 12, boosting 14.

The course page prescribes three books: Duda, Hart and Stork's Pattern Classification, Bishop's Pattern Recognition and Machine Learning, and The Elements of Statistical Learning. The last two are free from their authors. If they feel heavy, An Introduction to Statistical Learning is the gentle version, and Stanford's CS229 notes derive most of the same algorithms in a few pages each. Closest of all are notes written for this course: the MLT notes on the programme's GitHub, with slides and Colab notebooks for each week.

How MLT is marked

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

The same formula, GAA and eligibility as MLF. Plus a bonus of 3 marks for submitting the programming assignments, if your average across all assignments is at least 40.

Like every bonus in the programme, it is added only if you pass. It can lift your grade; it cannot turn a fail into a pass.

The MLT course team also runs its own YouTube channel with weekly TA sessions, instructor sessions, workshops and a past-paper session every term.

06

MLP: Machine Learning Practice

The same models, now in scikit-learn. It is a programming course in the way it is marked, not only in what it teaches: 60% of the course is code.

98 videos, about 28 hours, many of them notebooks run live on California housing, MNIST and MovieLens.

Taught by Ashish Tendulkar of Google Research. The course page calls it the "companion course to the ML Theory course". The week list on that page no longer matches the lectures (it shows Graph Theory in Week 2), so this one comes from the lecture playlist.

WeekWhat you learnIn scikit-learn
1pandas: Series and DataFrames, selecting, dropping, summariesbefore any model
2Loading data, missing values, encoders, scaling, outliers, feature selection, PCASimpleImputer, OneHotEncoder
3Pipelines and composite transformers; class imbalancePipeline, ColumnTransformer
4A tour of the models, evaluation, regularisation, tuningGridSearchCV
5Regression end to end on California housingSGDRegressor
6Classification on MNIST: perceptron to SVC to ensemblesLogisticRegression, SVC
7Large-scale learning; confusion matrix, precision, recall, F1classification_report
8Not in the public playlist; see your portal
9Clustering; an end-to-end project from framing to fine-tuningKMeans
10Recommender systems: content-based, collaborative filtering, matrix factorisationMovieLens
11Time series in pandas: resampling, decomposition, stationaritypandas
12Transfer learning; neural networks recap

How MLP is marked

T = 0.1·GAA + 0.3·F + 0.2·OPPE1 + 0.2·OPPE2 + 0.2·KA

GAA as in MLF (best 10 of Weeks 1–10 and Mock Quiz 1). OPPE1 and OPPE2 are the two online proctored programming exams. KA is the average of the three Kaggle assignments. From the May 2026 grading document.

Rule

You can sit the MLP end term if your best 5 of 8 (Weeks 1–7 and Mock Quiz 1) average at least 40; no quiz is needed. To get a grade, you must sit the end term and score at least 40/100 in at least one OPPE. OPPE 1 is only scheduled if you finish the System Compatibility Test first.

Source: grading document, MLP section and OPPE eligibility.

If an OPPE goes wrong

You don't always repeat the whole course. The grading document's own table:

OPPEsEnd termTotal TWhat you get
Absent or not eligibleAbsent or not eligible–U, repeat the course
Missed bothPresent35 or moreI_OP, take the OPPEs alone next term
Missed bothPresentbelow 35U
Best OPPE below 40Present40 or moreI_OP, take the OPPEs alone next term
Best OPPE below 40Presentbelow 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

The 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. Together they are 20% of the course, as much as either OPPE.

From my own May 2026 assignments. Approach only; the datasets change.

Three habits mattered more than the choice of model.

  1. 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.
  2. 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.
  3. 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.
07

The MLP Project

A real Kaggle competition, 12 to 15 weeks long, where everyone works alone on the same problem. Beat the cutoff, then pass two vivas with an industry examiner.

Everything here is from the May 2026 guideline. Read your own term's the day it comes out: the cutoff, the dates and the notebook name change.

The problem is a regression or a classification task, new every term. Rules below are from the MLP Project Guideline for May 2026.

Register exactly like this

Most project trouble in the first weeks is registration trouble. The guideline's steps, in order:

  1. Make a Kaggle account and join the competition from the link in the guideline.
  2. Create a notebook in the competition's Code tab named rollno-notebook-term, all lowercase. May 2026's 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 link into the 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.

Rules that end a project

RuleWhat it means in practice
Only the FinalNotebook countsA CSV you upload by hand, or a submission from any other notebook, does not count.
At least three different modelsOne model only disqualifies the project.
No external dataTrain only on the competition's files.
CPU onlyDo not switch on Kaggle's GPU or TPU.
Keep it privateCode found public means disqualification.
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, copying anyone, or using outside solutions is malpractice.
Five submissions a dayUnused ones do not carry over.

Milestones, cutoff and marks

Five milestones, each a form on the course portal. You must submit at least two, and one only counts 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, the cutoff was a leaderboard score below 0.20, and both vivas had to be done by 23 August.

Final = NB + M + L + S + V   (out of 10 + 5 + 30 + 5 + 50 = 100)

NB your notebook, marked by the examiner. M all milestones done. L your leaderboard position. S how many submissions you made. V the Level 2 viva.

Rule

You pass if your viva is at least 25/50 and your final mark is at least 50/100. A viva of 15–24 may still pass with a D or E at the instructor's discretion. Below 15, you repeat the project next term.

Source: MLP Project Guideline, May 2026. Jan and May 2026 MLP students were marked out of 105: up to 5 bonus marks by viva batch (Batch 1: +5 and a reattempt, Batch 2: +2 and a reattempt, Batch 3: none).

The bonus goes to the earlier viva batches, so being ready early pays. Check your own term's guideline for how batches are assigned.

The two vivas

Level 1 is a checklist, not a score. The examiner checks that you understood the problem and loaded the data right; that your EDA looks at single features and pairs of features with readable plots; that missing values, scaling and encoding are handled with reusable pipelines applied the same way 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 holds your best model.

Level 2 decides your marks. Concepts, maths, practice 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, or to write code on the spot. The examiner can ask about anything in the diploma, MLF, MLT and statistics included. In the guideline's words: "Only using an API (e.g. DecisionTreeClassifier, SVC, etc.) is not sufficient, you should also know how it works internally."

What worked for me

No code, no solution. The competition is different every term.

  1. Train on the metric. My term's competition was scored on a log error, so I trained on the logarithm of the target. The training loss became the metric, and a skewed target calmed down.
  2. Encode big categories carefully. Target encoding only works for columns with thousands of categories if it is computed out of fold and smoothed towards the overall mean; otherwise it leaks. Letting LightGBM or CatBoost handle categories natively was 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 cross-validation and then scored worse.
  4. Believe the leaderboard over your laptop. When they disagreed, the leaderboard was right, including about pseudo-labelling, which helped locally and hurt on Kaggle.
  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.
08

Every assessment, and how to take it

Weekly assignments carry little weight, but Weeks 1 to 7 decide whether you may sit the end term at all. Treat the early weeks as the ones that matter most.

Weekly graded assignments

Every week of every course has one, with a fixed deadline in the grading document; the May 2026 document says, in capitals, that none of them will move. They are 5% of MLF and MLT and 10% of MLP.

In MLF and MLT you get multiple choice, multiple select and numeric answers. Treat each option of a multiple-select question as its own true-or-false question. In a numeric one, read the rounding instruction first, keep full precision through the working, and round once, at the end. When a definition has two versions (dividing a variance by n or by n−1), use the one the lectures use.

In MLP most questions hand you a dataset and a precise recipe and ask for a number: train this model with these settings, report this metric on this split, to three decimals. The marks go to the exact number, so the job is matching the recipe, not modelling well:

  1. Load the data exactly as asked: same file, same columns, same split and random_state.
  2. Set every parameter the question names; leave the rest at scikit-learn's defaults.
  3. Fit on the training set only, then apply the fitted transformers and model to the test set.
  4. Compute the metric asked for, on the set asked for, and round only at the end.
  5. If no option matches, re-read the split and the parameters, then check your scikit-learn version: defaults change between versions.

Am I eligible for the end term?

Type your Week 1–7 scores and Mock Quiz 1. It takes the best 5 of the 8. Leave a box empty if that assignment isn't out yet; it counts as zero. Nothing leaves your browser.

Quizzes (MLF and MLT)

Written in person at an exam centre. Quiz 1 covers Weeks 1–4 and Quiz 2 covers Weeks 1–8. It is one sitting for all your quiz courses: 2 hours for one or two courses, 3 for three, 4 for four. There is no make-up quiz, and a missed quiz scores zero (Academics page). In the Sep 2026 term, Quiz 1 is on Sunday 15 November and Quiz 2 on Saturday 5 December.

Mock Quiz 1 counts: it is in both GAA and the eligibility check.

Each course runs a mock before Quiz 1, and it counts. Where a course runs mocks before both quizzes, an average of 40 or more across them can earn up to 2 bonus marks. Past papers are the best preparation there is; chapter 10 lists students who have solved them on video.

OPPEs (MLP)

Online, remote-proctored programming exams, on your own computer. Pass the System Compatibility Test first, or OPPE 1 is not scheduled at all. In the Sep 2026 term OPPE 1 runs on 21–22 November, and OPPE 2 on 19–20 December and 2–3 January; your own slot is allotted closer to the date.

The practice that transfers best: redo the weekly MLP assignments against a clock until loading, splitting, fitting and scoring is muscle memory. A student-made OPPE 1 mock on Kaggle shows you the format. Read the exam's own instructions for what may be open on your screen; don't assume.

The end term

In person; in the Sep 2026 term, Sunday 10 January 2027. It covers all twelve weeks, including Weeks 11 and 12. It is 40–60% of MLF and MLT depending on which half of the formula wins, and 30% of MLP. In MLF and MLT a strong end term can rescue a weak quiz. In MLP no end term score can stand in for passing an OPPE.

09

Marks calculator

Pick a course, type what you know, and see your total, your grade and the end term score each grade needs.

It uses the exact formulas from chapters 04 to 07 and draws your total against the one score you don't know yet. Numbers stay in this browser.

GradeTotal neededEnd term needed
Grade bands use the programme's usual scale: S 90, A 80, B 70, C 60, D 50, E 40 and above. Confirm them in your term's student handbook. Bonus marks are added only if you pass without them.
Trap: 40 is not enough on its own

You also need end term eligibility (chapter 04), for MLP an OPPE score of 40 or more (chapter 06), and for the project a viva of 25 or more and a total of 50 (chapter 07). The calculator checks these too.

10

Every resource worth opening

I opened every link here before adding it. Official material first, because the exams are written from it. Everything else explains the same ideas a second way.

Left out on purpose: repos and videos that post assignment or OPPE answers, and paid "solutions" sites.

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.

Official, for all three

For MLF

For MLT

For MLP and the project

11

Doubts, answered

01Can I take MLF and MLT in the same term?

Yes. MLF is a co-requisite of MLT, and most plans pair them (chapter 02). Expect MLT to use eigenvectors before MLF teaches them.

02Can I take MLT and MLP together?

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

03Do 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.

04What happens if I miss a quiz?

It scores zero and there is no make-up. The formula takes the better of two versions, and one of them 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.

05Does the mock quiz count?

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.

06Do 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.

07What is the SCT, and do I need it?

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

08I 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. See the table in chapter 06.

09Are the Kaggle assignments the same as the MLP Project?

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

10Can I use a GPU for the project?

No. The guideline requires a CPU-only notebook; don't switch on Kaggle's accelerators.

11Can I use PyTorch or TensorFlow in the project?

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

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

You can upload it, but it won't count. Only submissions from your registered FinalNotebook count, and experiments run on your own machine are not considered for evaluation.

13How many project submissions do I get?

Five a day, and unused ones do not carry over. How many you make is itself worth up to 5 marks.

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, had to reach it too.

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

No. The project and both vivas must be done in the same term; the problem changes every term.

16What will the viva ask?

Anything from the diploma, MLF, MLT and statistics included; the five components of every model you used or learned; a walk-through of your notebook; possibly code written on the spot. See chapter 07.

17Do I need to buy the textbooks?

No. Bishop, ESL, ISL, Mathematics for Machine Learning and Boyd are all free from their authors. Only Duda, Hart and Stork is not.

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.

19Can I share my assignment answers or project notebook?

Don't. Assignments are individual work, and the project guideline calls sharing notebooks or snippets malpractice. Discussing ideas is fine; this guide stays on that side of the line.

20Where do I ask a doubt?

On Discourse, where the course teams answer, and in the live and TA sessions (chapter 10).

21What do I need for each grade?

The usual scale is S 90, A 80, B 70, C 60, D 50, E 40 and above, U below 40; confirm it in your term's handbook. The calculator shows the end term score each grade needs.

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. All the dates are in the term chart.

12

Glossary, and the short version

GA, GAA
The weekly graded assignment; the assignment average used in your total, best 10 of Weeks 1–10 and Mock Quiz 1 in these courses.
Mock Assignment
How Mock Quiz 1 appears on your dashboard. It counts in GAA and in 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, both out of 100.
OPPE
Online remote-proctored programming exam. MLP has two. The calendar calls them programming quizzes.
SCT
System Compatibility Test. Needed 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 3 bonus marks if your assignment average is 40 or more.
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.
Level 1, Level 2
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 the rest carried over.
U, WA, WQ
Fail grades. U after an attempt; WA and WQ when you were not eligible for the end term.

If you remember nothing else

MLT before MLP. Weeks 1–7 decide the end term. Know five things about every model.

MLF and MLT

Attend at least one quiz. The formula forgives one bad quiz; it does not forgive a bad end term.

MLP

60% is code. No grade without an OPPE of 40. Take the SCT early.

The project

Register exactly as the guideline says, submit only from the FinalNotebook, keep it private, finish early.