Introduction to Machine Learning / Winter 2026
Updates
- New Lecture is up: Lecture 20 - Introduction to Reinforcement Learning
- New Lecture is up: Lecture 20 - Introduction to Generative Modeling
- New Lecture is up: Lecture 19 - Introduction to Sequence Processing
- New Lecture is up: Lecture 18 - Convolutional Nets II and Sequence Models
- New Assignment released: [Assignment #5 - CNNs]
- New Lecture is up: Lecture 17 - Part II: Convolutional Nets I
- New Lecture is up: Lecture 17 - Part I: Regularization
For the Quercus page of the course please click here
- All announcement will be sent through Quercus
- You can access the Crowdmark and Piazza page of the course through Quercus
Final Project Submission and Presentation
Presentation Format
This year, we adapt an alternative presentation scheme which makes more flexibility. The procedure is as follows:
- Each couple of groups have been assigned to a cluster with supervised by a TA. Please see the clusters here on Quercus.
- For each cluster a time window of 2 hours on April 6 is dedicated.
- The groups will show up during that time window and will present their project to the TA and Instructor (a Hackathon style).
- Each group will present for 5 minutes and will be asked questions for 5 minutes.
- The presentations are given in Room BA8229 (Bahen).
Please check logistic details on Quercus.
Final Report and Code Submission
The final report and source code are due on April 12. Please note that
- Your report must meet the template and page limit.
- You may (and strongly recommended) to reflect the feedback you get during the presentation in your final report.
Midterm Exam
The midterm exam will be on Tuesday February 24, 2026 starting on 5:00 PM in BA-1170.
For the exam, please pay attention to the following points:
- The exam will include only written questions and does not include programming
- The exam is 3 hours long
- Please bring a photo ID with you to the exam
- The exam is open-book meaning that you can bring any printed material with you (printed notes, your own notes, cheat-sheet, textbook, etc). Electronic devices are though NOT allowed in the exam
If you need any assistance or specific accommodation for the exam, please feel free to reach out.
Course Description
This course provides a concrete understanding of fundamentals of machine learning. The course gives an overall viewpoint on the vast area of machine learning and touches the fundamental concepts in supervised and unsupervised learning. The course follows a statistical viewpoint on machine learning and its implications in applied topics. Note that the course aims to cover topics in Machine Learning from a statistical perspective and does not target the computational viewpoint in Deep Learning. Deep learning and neural networks are introduced and discussed in this course; however, their detailed investigation is covered in a separate course, i.e., ECE1508: Applied Deep Learning.
Time and Place
Lectures
Lectures start on January 6, 2026. Please note that the lecture halls are different in Tuesdays and Thursdays.
| Day | Time | Place |
| Tuesdays | 5 PM - 7 PM | BA-1170 - Bahen Centre for Information Technology |
| Thursdays | 5 PM - 6 PM | MC-252 - Mechanical Engineering Building |
Tutorials
Tutorials sessions start on January 15, 2026.
| Day | Time | Place |
| Thursdays | 6 PM - 7 PM | MC-252 - Mechanical Engineering Building |
Course Office Hours
| Day | Time |
| Thursdays | 11:30 AM - 12:30 PM |
Course Syllabus
The course consists of three main parts, namely Learning from Data, Classification and Regression, and Introduction to Advanced Topics in ML. The contents taught in each part are listed below:
Part I: Learning from Data
- Concept of Learning and Different Problems in ML
- Clustering
- Problem of Clustering
- K-means Clustering Algorithm
- Notion of Distortion
- Soft K-means Clustering
- Learning Data Distribution
- Statistical View on Data
- Modeling Data Distribution via Parameterized Model
- Maximum Likelihood Learning
- Gaussian Maximum Likelihood
- Gaussian Mixture Model
- Data Generation
- Dimensionality Reduction and Data Representation
- Latent Representation for High Dimensional Data
- Principle Component Analysis (PCA)
- Data Compression and Filtering via PCA
- Introduction to Nonlinear PCA
Part II: Classification and Regression
- Linear Regression and Classification
- Notion of Loss in Supervised Settings
- Linear Regression: Optimal Model
- Logistic Regression: Optimal Model
- Gradient Descent Algorithm
- Support Vector Machine
- Classification with Maximum Margin
- Support Vector Classifier (SVC)
- Dimensionality Expansion via Embedding Function
- Support Vector Machine (SVM)
- Various Kernels for SVM
- SVM with Soft Margin
- Neural Networks
- Neural Networks (NNs) as Parameterized Models
- Necessity of Nonlinearity in (NNs)
- Expressing Binary Functions via NNs
- Approximating Analytic Functions via NNs
- Universal Approximation Theorem
- Generalization
- Formulating Generalization Error
- Overfitting and Underfitting
- Bias-Variance Trade-off and Bayes Error Bound
- Regularization and Ensemble Learning
- Convolution
- Convolution as a Linear Operator
- Designing a Parameterized Model via Convolution
- Sample Convolutional NN
Part III: Advance Topics in ML
- Introduction to Sequence Processing
- Processing Sequences with Temporal Correlation
- Quick Introduction to RNNs and Transformers
- Introduction to Generative Models
- Learning How to Generate Data
- Implicit and Explicit Generative Models
- Introduction to Reinforcement Learning
- Components and Objectives in Reinforcement Learning (RL)
- Tabular RL versus RL with Function Approximation
Course Evaluation
The learning procedure consists of three components:
| Component | Grade % | |
| Assignments | 45% | 5 assignment sets |
| Exam | 30% | midterm exam |
| Project | 25% | open-ended |
Assignment
There will be five set of assignments. The assignments will count roughly for 45% of your final mark and are a part of the learning procedure. Therefore, solving them is necessary at each part of the course to understand the next parts properly.
Exam
In the first week after the reading week, there will be an exam. The exam will ask questions on theory. There will be no programming questions in the exam. The exam will only evaluate the understanding of fundamental concepts through questions that can be either explained in words or solved simply by hand. This exam will comprise 30% of the total mark.
Course Project
The project will be in groups of 3. Each group proposes its own problem that is to be solved by Machine Learning by Week 9. The group will then work on the project towards the end of the semester and submit the final report by the last week. This part will be 25% of the total mark, and plays the role of a final evaluation for this course.
