Stanford Machine Learning by Alex Holehouse.
From the webpage:
The following notes represent a complete, stand alone interpretation of Stanford’s machine learning course presented by Professor Andrew Ng and originally posted on the ml-class.org website during the fall 2011 semester. The topics covered are shown below, although for a more detailed summary see lecture 19. The only content not covered here is the Octave/MATLAB programming.
All diagrams are my own or are directly taken from the lectures, full credit to Professor Ng for a truly exceptional lecture course.