ETC3250/5250 Introduction to Machine Learning

Lecturer/Chief Examiner


  • Patrick Li
    • Tutorials: Mon 15:00 (LTB 323), Fri 11:00 (CL_33 Innovation Walk, FG04 Bldg 73P)
    • Consultation: Thu 10:30-12:00 (W9.20)
  • Harriet Mason
    • Tutorials: Wed 18:00 (LTB G60), Fri 12:30 (CL_33 Innovation Walk, FG04 Bldg 73P)
    • Consultation: Thu 3:00-4:30 (zoom only)
  • Jayani Lakshika
    • Tutorials: Wed 8:00, 9:30 (CL_33 Innovation Walk, FG04 Bldg 73P)
    • Consultation: Thu 12:00-1:30 (W9.20)
  • Krisanat Anukarnsakulchularp
    • Tutorials: Mon 12:00, 13:30 (LTB 323)
    • Consultation: Fri 9:30-11:00 (W9.20)

Weekly schedule

  • Lecture: Wed 1:05-2:45pm
  • Tutorial: 1.5 hours
  • Weekly learning quizzes due Mondays 9am
Week Topic Reference Assessments
26 Feb Foundations of machine learning ISLR 2.1, 2.2
04 Mar Visualising your data and models Cook and Laa Ch 1, 3, 4, 5, 6, 13
11 Mar Re-sampling and regularisation ISLR 5.1, 5.2, 6.2, 6.4
18 Mar Logistic regression and discriminant analysis ISLR 4.3, 4.4 Assignment 1
25 Mar Trees and forests ISLR 8.1, 8.2
01 Apr Mid-semester break
08 Apr Neural networks and deep learning ISLR 10.1-10.3, 10.7 Assignment 2
15 Apr Explainable artificial intelligence (XAI) Molnar 8.1, 8.5, 9.2-9.6
22 Apr Support vector machines and nearest neighbours ISLR 9.1-9.3 Assignment 3
29 Apr K-nearest neighbours and hierarchical clustering HOML Ch 20, 21
06 May Model-based clustering and self-organising maps HOML Ch 22
13 May Evaluating your clustering model Cook and Laa Ch 12 Project
20 May Project presentations by Masters students



We will be using the latest versions of R and RStudio.

Here is the code to install (most of) the R packages we will be using in this unit.

install.packages(c("tidyverse", "tidymodels", "tourr", "geozoo", "mulgar", "ggpcp", "plotly", "detourr", "langevitour", "ggbeeswarm", "MASS", "GGally", "ISLR", "mvtnorm", "rpart", "rpart.plot", "randomForest", "e1071", "xgboost", "Rtsne", "classifly", "penalizedLDA", "nnet", "kernelshap", "shapviz", "iml", "DALEX", "cxhull", "fpc", "mclust", "ggdendro", "kohonen", "aweSOM", "patchwork", "ggthemes", "colorspace", "palmerpenguins"), dependencies = TRUE)

If you run into problems completing the full install, the likely culprits are tidyverse and tidymodels. These are bundles of packages, and might fail at individual packages. To resolve the problems, install each package from the bundle individually, and don’t install any that fail on your system.

In addition, follow these instructions to set up tensorflow and keras, which requires having python installed.

If you are relatively new to R, working through the materials at is an excellent way to up-skill. You are epsecially encouraged to work through Chapter 3, on Troubleshooting and asking for help, because at some point you will need help with your coding, and how you go about this matters and impacts the ability of others to help you.

The ISLR book also comes with python code, and you are welcome to do most of your work with python instead of R. However, what you submit for marking must be done with R.