From cleaning a dataset to regression, trees, Bayes, SVMs, neural networks, clustering, ensembles and fairness — the core algorithms of machine learning, taught by worked example.
Lecture notes by Dr. Abdulkarim Albanna · Course 606361 · References: James et al. (ISLP), Murphy (PML), Barocas, Hardt & Narayanan.
The modules follow the weekly plan of the course syllabus; new modules are added as the semester goes on. Each one is a written tutorial with figures, a worked example with real numbers, a Python lab, and exercises with full solutions.
The Python notebooks and spreadsheet used in class. Download them and open in Google Colab (File → Upload notebook) or Jupyter.
In week 14 you apply the course to a real dataset: frame the problem, prepare the data, compare several algorithms with the right metrics, discuss fairness, and present a written report (10% of the grade).
Case study guide — coming soonFinished Module 9 and want to go deeper? The Deep Learning course continues from the multi-layer perceptron: backpropagation in full, optimizers, CNNs and RNNs.
Open Deep LearningThese notes cover the Machine Learning course (606361) and are built from Dr. Abdulkarim Albanna's lecture slides, completed with the course textbooks. The course takes a theoretical and a practical approach: each algorithm is explained in plain English, worked through by hand with real numbers, then implemented in Python with scikit-learn. The aims are to understand the mathematics behind the algorithms, to compare them and choose the right one for a problem, and to use them responsibly — which is why the course ends with algorithmic fairness.