Machine Learning Notes

5 minute read

Note: viewing this page on mobile phone might hurt your experience.

Note: Chinese version of each section is coming.

Chinese Versions

All the Chinese translations are credited to Zishi Yan and Xiaoxiao Lei.

1 A Chinese version of Decision Tree is available online.

2 A Chinese version of Bias-Varaince and Error Analysis is available online.

3 A Chinese version of Regularization and Model Selection is available online.

4 A Chinese version of Support Vector Machine is available online.

5 A Chinese version of Discriminative Algorithm is available online.

6 A Chinese version of Generative Algorithm is available online.

Open Source of ML notes

I made this notes open source so that everyone can edit and contribute. Github and instructions to contribute can be found here. Welcome to contribute!


1 More is coming for VI Algorithm.

Recently updated:


Boosting: New topic about boosting


Decision Trees: New topic about decision tree


SVM: Rewrite explanation of SVM section


VI Algorithm: More contents are added


1 Discriminative Algorithm: More proofs before Least Square revisited

2 Generative Algorithm: Add proof to fomula for GDA and between GDA and logistic

3 K-means: Add more details about kmeans story.

4 Generative Algorithm: Add more intuitions for Naive Bayes

5 EM Algorithm: More contents on EM and exmaple as well.

What is this post?

In this long post, I mainly talk about contents from many machine learning classes that I have learned such as CS 229 by Prof. Andrew Ng. at Stanford and classes at Columbia taught by Prof. John Paisley, Prof. David Blei, and Prof. Daniel Hsu. This post mixes contents from all of them, and is expected to grow more. It is much like self-disciplined. I always try to cature the most important contents here. This post is supposed to be the marterial for self-study.

Why this post?

The key difference of this post is that:

1) I am trying to explain theorectical concepts in plain language and try to give the proof for theorem. I am a student,too. I will try to make it from student’s perspectives.

2) I am trying to make this post to be a good summary for CS 229 and other ML classes. Every class has its own beauty. Putting them together and making a story can make it the most beautiful.

How to use it?

You can directly go to any topic you like. Feel free to comment at the bottem of each post. I love to discuss these topics from different perspectives. Also, feel free to let me know if anything is wrong here.

It is recommended that you have some basic knowledge about probability, linear algebra and vector calculus before reading the notes. The reading can be done simply from beginning to ending or be indexed from left sidebar based on your needs.

How to track it?

One way is that you can bookmark this page. I will update this page to show where I have made changes of the notes and what might be coming next.

The other way is that you can follow my github and click watch button for the repo named I will give formal comments in push when I made some important changes to this post.

Found error or interested in other topics?

Please let me know. You can email me or directly comment below.

You like it?

You share it.

Note: You can share any post to social network at the bottom.