Recommended Books and other study material
All the material in this course is standard material. There are a lot of books on machine learning, some more theoretical and some more practical. It is difficult to recommend a book that fits the background for all students on this course. Some books are too mathematical and some books are too practical. The course has two recommended text books. One is more theoretical, and one is more hands on with Python. Both of them cover most of the material in the course.
Course Text Book: The Hundred-Page Machine Learning Book
It can be found here. You can buy an electronic version of the book for as little as $20. Unfortunately the book is not available the university library. If you follow the link above you can access individual chapters of the book. In the lecture notes I will give references to the book. The book being a little over 100 pages (141) does not go into all the topics in detail, and omit some background material that is necessary for some students. My advice is to start there, and move onto other references for more background or more detail.
Course Text Book: A Hands-On Introduction to Machine Learning
This is a much more practical book that has lots of Python code.
Other Books and resources
In the course we are going to use Python and scikit-learn for a lot of the assignments. The user guide not only contains a lot of examples, but also a lot of the background mathematics. I strongly recommend the dive into scikit-learn’s website. You are also going to use pandas to parse input data, numpy for fast manipulation and processing of arrays, and matplotlib to plot data. All these libraries have extensive documentation with examples.
Andrew Ng’s material.
Andrew Ng is one of the giants in machine learning. He has written numerous very important papers, and it one of the founders of Coursera.
He has made of videos on machine learning of various formats. He is a far better lecturer than me, and his lectures will be of much higher quality than I can record. Some of his lectures are on a whiteboard and some of them are him talking over his slides. I prefer him talking over slides and the playlist on youtube can be found here.
Somebody has put the slides that he used on here, and here you can find notes on the lectures. The following Github repository has his course notes, although they are a bit too advanced for this course.
Other Online Lectures
If you find some particular good online lectures, then please email them to me.
So far:
- There is a good channel DataCamp that has lots of machine learning videos with some real Python examples in that illustrate many of the concepts in this course.
Machine Learning Terminology
There are a lot of different terms in machine learning that refer to the same thing. A good resource is
Other recommended text books
There are a lot of books on machine learning. Some are very theoretical that go into great depth, and some contain a lot of hands on material that you can use in your own projects. The following list contains some books that I have found useful, together with links to the online text at the university library. The university library has a lot of online resources on machine learning, as well as access to O’Reilly’s book catalogue.
I used to put up direct links to the books at the University Library, but these links are never stable. To find the books below such for them. You can access the contents of books by logging in via CAS. The system is a bit flaky, and sometimes you might have to refresh the book’s page for the system to notice that you have logged on.
More theoretical books
A First Course in Machine Learning First Course in Machine Learning by Simon Rogers and Mark Giolami. Available online at the university library.
Machine Learning An Algorithmic Perspectiv by Stephan Marsland. Available online at the university library.
Machine Learning Algorithms (Bonaccorso, Giuseppe). Available online at the university library.
The Supervised Machine Learning Book a new text book by Andreas Lindholm, Niklas Wahlström, Fredrik Lindsten, and Thomas B. Schön.
More practical books
Introduction to Machine Learning with Python published by O’Reilly
Hands-On Machine Learning with Scikit-Learn Machine Learning with Scikit-Learn, Keras, and TensorFlow published by O’Reilly. This book has a lot more material that we will not cover in the course.