Offered on Coursera for free and taught by Stanford CS adjunct professor, former chief scientist at Baidu, and founding lead of Google Brain, Andrew Ng, Stanford’s Machine Learning Course is undoubtedly the world’s most famous and brilliant intro to ML online course. This is demonstrated with its past student’s count of over 3 million and a remarkable 4.9 out 5-star rating in 140k reviews (as of 2020).
Though there is no official prerequisite listed, this course requires a relatively shallow background in math. High school level math is sufficient, though in order to understand and implement the algorithms better and easier, some experience with linear algebra, and programming are encouraged, since the current lectures and programming exercises generally revolve around the vector implementations of different algorithms. Nevertheless, in the first two weeks of the course, the professor will help cover the essentials of the linear algebra and programming knowledge required. As a side note, the specific programming languages that will be used for the exercises are Matlab/Octave, two almost identical, compact high-level languages specialized in matrix and array computations.
Timewise, the course is defaultly distributed on a 11-week schedule with an estimated weekly finish time of 5 hours; however, due to Coursera’s flexible nature, students can start at any time and decide their own pace of finishing.
Structure-wise, the course itself incorporates a balanced mixture of lecture videos, short quizzes (in videos), chapter quizzes (at the end of each weekly lecture), and programming exercises. The videos generally contain the backgrounds and theories of the weekly machine learning topic(s) and algorithms, with short quizzes and graded chapter quizzes testing one’s understanding, at last with the programming exercises requiring one to implement the algorithms they just learned, usually from scratch.
Contentwise, this course will cover “supervised learning (parametric/non-parametric algorithms, support vector machines, kernels, neural networks), unsupervised learning (clustering, dimensionality reduction, recommender systems, deep learning), and [overall the] best practices in machine learning (bias/variance theory; innovation process in machine learning and AI).” In the programming exercises, each will also be asked to be applied to build interesting and practical real-world applications like “smart robots (perception, control), text understanding (web search, anti-spam), computer vision, medical informatics, audio, database mining”.
In the course, Professor Ng will help deconstruct each seemingly daunting topic in an easy-to-understand, patient, compassionate, and fluid lecture style with a well-constructed step-by-step slideshow documenting the details and the essences, helping students across all levels to build up their understandings and intuitions. To improve the students’ learning experience even more, the course has a dedicated forum separated by weekly topics, with always-available mentors and peers to interact with and ask questions. This is especially helpful when one encounters a coding-block or an unusual bug.
In the end, no matter the amount of words this review has put in, the only way to experience the quality of the course is to go through it. Now, if you are a beginner and are interested in learning the fundamentals of AI and Machine Learning, for all purposes, fear not and take your first step into the realm of the future.