|
E2 236 Foundations of Machine Learning (FoML)
About E2 236
The main objective of E2 236 is to provide an introduction to the theory, methods, and concepts essential for developing programs that learn from data. As a graduate-level course, it is designed to establish a rigorous foundation in the underlying mathematics and algorithms of machine learning. We will cover a wide number of techniques, from the simplest (linear regression) to advanced deep learning techniques, alongside theoretical concepts such as the PAC learning framework.
This is 3:1 credit course.
Prerequisite
Basic linear algebra, probability, and knowledge of Python.
Syllabus
Machine learning landscape, classification, regression, optimization, PAC learning framework, kernel methods, Gaussian processes, SVM, clustering, EM methods, Ensemble learning, neural networks, graph machine learning.
Textbooks
Christopher Bishop, Pattern Recognition and Machine Learning
Christopher Bishop and Hugh Bishop, Deep Learning: Foundations and Concepts
Kevin Murphy, Machine Learning: A Probabilistic Perspective
Shai Shalev-Shwartz, Shai Ben-David, Understanding Machine Learning: From Theory to Algorithms
Aurelien Geron, Hands-On Machine Learning with Scikit-Learn and PyTorch: Concepts, Tools, and Techniques to Build Intelligent Systems
Course requirements and grading
Syllabus (Schedule pdf)
| Lecture number | Topic | Reading | Material | Lab |
| 0 | Introduction and logistics | | Slides | |
| 1 | Maching learning landscape | | Slides | |
| 2 | Classification | | | |
| 3 | Classification | | | Lab 1 |
| 4 | Classification | | | |
| 5 | Regression | | | |
| 6 | Regression | | | Lab 2 |
| 7 | Regression | | | |
| 8 | Optimization | | | |
| 9 | Optimization | | | Lab 3 |
| 10 | PAC learning framework | | | Assignment 1 |
| 11 | PAC learning framework | | | |
| 12 | Kernel methods | | | |
| 13 | Gaussian Processes | | | Lab 3 |
| 14 | SVMs | | | Lab 4 |
| 15 | PCA and CCA | | | Lab 5 |
| 16 | Clustering | | | Lab 6 |
| 17 | Clustering | | | Assignment 2 |
| 18 | EM method | | | Project |
| 19 | Ensemble learning | | | |
| 20 | Neural networks: Multilayer perceptron | | | |
| 21 | Training multilayer perceptrons | | | Lab 7 |
| 22 | RNNs and its variants | | | Lab 8 |
| 23 | CNNs | | | Lab 9 |
| 24 | Autoencoders | | | Assignment 3/Lab 10 |
| 25 | GANs | | | Lab 11 |
| 26 | Transformers | | | Lab 12 |
| 27 | Graph neural networks | | | |
| 28 | Graph neural networks | | | Lab 13
|
|