A comprehensive list of Machine Learning Resources: Open Courses, Textbooks, Tutorials, Cheat Sheets and more

By Sam Finlayson, MD-PhD Student at Harvard-MIT.Original. Reposted with permission.The following is a snapshot of the original that will be updated over time

This is a not-particularly-systematic attempt to curate a handful of my favorite resources for learning statistics and machine learning. This isn’t meant to be comprehensive, and in fact is still missing the vast majority of my favorite explainers. Rather, it’s just a smattering of resources I’ve found myself turning to multiple times and thus would like to have in one place. The organization is as follows:

Finally, I’ve added a section with links to a few miscellaneous websites that often produce great content.

Of the above, the second section is both the most incomplete and the one that I am most excited about. I hope to use it to capture the best explanations of tricky topics that I have read online, to make it easier to re-learn them later when I inevitably forget. (In a perfect world, Chris Olah and/or distill.pub would just write an article on everything, but in the meantime I have to gather scraps from everywhere else.)

If you stumble upon this list and have suggestions for me to add (especially for the middle section!), please feel free to reach out! But I’m only trying to post things on here that I’ve read, so it may be caught in my to-read list for a while before it makes it on here. Of course, the source for this webpage is on github, so you can also just take it.

Open Courses and Textbooks

I’m trying to limit to this list to things that are legally accessible online, for free.

Foundation

|File|Description |Math for ML Book|Math for machine learning book by Faisal and Ong, available on github.| |Boyd Applied Linear Algebra|Freely available book from Boyd and Vandenberghe on Applied LA (website).| |Fast.ai Computational Linear Algebra|Rachel Thomas has put together this great online textbook for computational linear algebra with accompanying youtube videos.| |MIT 6.041 Intro Probability|John Tsitsiklis et al have put together some great resources. Their classic MIT intro to probability has been archived on OCW and also offered on edX (Part 1, Part 2). The textbook is also excellent.| |Joe Blitzstein’s Stat110|Joe Blitzstein’s undergrad probability course has a high overlap in content with 6.041. Like 6.041, it also has a great textbook, youtube videos, and an edx offering. It’s a bit more playful, as well.| |MathematicalMonk|This guy is amazing. Some 250 YouTube tutorials on ML, Probability, and Information Theory. What’s great about these playlists is any individual video could go into section 2!| |Tim Roughgarden’s Lectures on Algorithms and Algorithms Illuminated|Tim Roughgarden is one of most natural teachers I’ve ever seen, and fortunately for the world, he’s decided to make a lot of his algorithms resources public. The first link is to lecture notes in PDF form from many classes – for the data-oriented, his CS 168 course is accessible and amazing. Videos for his Algorithms 2 class (CS 261) are here (pdf notes are in that first link). The second is a link to his page for his new textbook, but that page also has links out to all the YouTube videos from his Coursera version of CS 161 (Algorithms 1).|

Statistics

File Description
Seeing Theory This is an online visual textbook that has a bunch of cool interactive displays for intro probability/stats ideas. My favorite is the inference visualizations.
Russell Poldracks’ Statistical Thinking for the 21st Century This appears to be a pretty fantastic (albeit rather elementary) textbook for a one-quarter intro to statistics class (stat 60 at stanford). Despite assuming little, it touches upon a lot of great topics.
Modern Statistics for Modern Biology This online textbook is from Susan Holmes and Wolfgang Huber, and provides a nice and accessible intro to the parts of modern data science relevant to computational biologists. It also happens to be a piece of typographic art, created with bookdown.
Statistical Rethinking Lecture Videos on youtube accompany this very well-reviewed introductory textbook.
Hernan and Robbins Causal Inference Book Long-upcoming textbook on causal inference (from the epidemiology perspective), with drafts fairly frequently updated on the web page.

Classic Machine Learning

File Description
Bishop’s Pattern Recognition and Machine Learning This is a classic ML text, and has now been finally released (legally) for free online.
CS 229 Lecture Notes Classic note set from Andrew Ng’s amazing grad-level intro to ML: CS229.
ESL and ISL from Hastie et al Beginner (ISL) and Advanced (ESL) presentation to classic machine learning from world-class stats professors. Slides and video for a MOOC on ISL is available here.
CS 228 PGM Notes Really great course notes on Probabilistic Graphical Models from at Stanford. PDF export wasn’t ideal so linking only to website.
Blei Foundations of Graphical Models Course 2016 course notes on Foundations of Graphical Models from David Blei 2016 website

Deep Learning

File Description
Roger Grosse’s CSC231 Notes Notes from Roger Grosse’s CSC 231 full website here. Probably the single best intro to DL course I’ve found from any university. Notes and slides are gorgeous.
Fast.Ai Wonderful set of intro lectures + notebooks from Jeremy Howard and Rachel Thomas. In addition, Hiromi Suenaga has released excellent and self-contained notes of the whole series with timestamp links back to videos: FastAI DL Part 1, FastAI DL Part 2, and FastAI ML.
CS231N DL for Vision Amazing notes from Andrej Karpathy, with lectures on YouTube as well.
CS224 Deep Learning for NLP 2017 Fantastic course notes on Deep Learning for NLP from Stanford’s CS224. Github repo here
CMU CS 11-747 Fantastic course on Deep Learning for NLP from CMU’s Graham Neubig. Really great lecture videos on YouTube here
Deep Learning Book This textbook by Ian Goodfellow, Yoshua Bengio, and Aaron Courville is probably the closest we have to a de-facto standard textbook for DL.

Reinforcement Learning

Optimization

Tutorials, Overviews, and (Individual) Lecture Notes

This section is fledgling at best, but was my real motivation in making this page. Archetypes include basically anything on distill.pub, good blog or medium posts, etc. Depth-first learning looks like a great access point here, but I haven’t gotten to do more than skim any of those, yet.

Fundamentals

Probability and Statistics

Classic Machine Learning/Data Science NOS

Bayesian Machine Learning

Deep Learning

Natural Language Processing

Reinforcement Learning

Information Theory

Optimization

Cheat sheets

Math

Programming

Miscellaneous websites

File Description
Chris Olah’s Blog Essentially everything on here is gold. I am so grateful for the hours he must put into these posts.
distill.pub Distill navigates a really interesting gap between super-blog and research journal. I wish that we had more publications like this.
Pytorch Tutorials The tutorials put out by the Pytorch developers are really fantastic. Easy to see why the community is growing so fast.
Sebastian Ruder’s blog Sebastian has produced a lot of really great explanations, like the one on gradient descent methods I linked to above. He also maintains a website tracking progress on NLP benchmarks
ShortScience This website contains public summaries/discussions of machine learning, CS, and biology papers.
Berkeley AI Research (BAIR) Blog BAIR produces a lot of great research, and uses this blog to release more accessible presentations of their papers.
Off the Convex Path Nice blog on machine learning and optimization.
Ferenc Huszár’s blog Pretty popular blog that has a lot of explorations/musings on ML from an author with a rigorous mathematical perspective
Thibaut Lienart’s Blog This website has some notes on math and optimization that seem interesting.

Bio: Sam Finlayson is a MD-PhD Student at Harvard/MIT, currently working on machine learning in medicine.

Resources:

Related: