For this course we assume that you have seen linear algebra before as well as probability and calculus. The course is in Python, but we will not be ‘teaching’ the language. The assumption is that you have enough prior experience of programming to pick up the language as you go. If you are unfamiliar with these concepts you might want to refresh yourself with this lab class on basic machine learning in python with the notebook.

The main course recommended text is

Also useful is

Most lectures will provide references to these text, and it will help a lot if you read the relevant sections in your own time.

A further publicly available text is