Machine Learning (Coursera), Stanford
|Material:||Video, Quizzes, Assignments|
|Certificate:||Yes, if purchased.|
Coursera’s Machine Learning covers the techniques and strategies used to get computers to accomplish a specific task without directly programming them. As a data science course, it provides an overview for students interested in artificial intelligence (AI). With specific case studies and applications, the course offers real-world examples of machine learning and AI.
Machine Learning, taught by Professor Andrew Ng, exposes students to some of the key techniques in the field like data mining and statistical pattern recognition. By the end of course, you will have covered a broad spectrum of topics, including:
- Linear and Logistic Regression
- Neural Networks
- Machine Learning Application and System Design
- Supervised and Unsupervised Learning
An eleven week course, Machine Learning teaches you about the relationship between AI, machine learning, and algorithms. Through the videos, readings, and quizzes you gain theoretical knowledge about particular concepts, which you can then put into practice by completing the programming exercises. Here are a few general topics and features to help you determine if it is the right course for you.
While this is not a math-heavy class, algorithms are at the heart of AI. Matrices and vectors play an important role in understanding and creating these algorithms. Thus, some knowledge of linear algebra and statistics is useful, and familiarity with calculus will help you better understand some of the underlying math. There is an optional linear algebra review, however, if you need a refresher.
In order to utilize the algorithms discussed in the course, students complete programming assignments in Octave or MATLAB. If you are unfamiliar with these languages, an Octave/MATLAB tutorial covers the basics like plotting and computing data, vectorization, and how to submit an assignment.
Someone with no programming experience might find the course difficult or frustrating. However, many of the assignments have much of the code provided and ask you to complete it with the concepts discussed in that unit. This means you can use the information gained from the lectures without spending hours writing code that is not directly related to what you are learning.
Professors Ng’s use of specific case studies brings this course to life. Theoretical knowledge is great, but you really learn by seeing the concepts in action. The course incorporates these real-life examples in each lesson, providing context for the mathematical concepts discussed. There are also several in-depth studies that show you the techniques in practice.
For example, in the Recommender Systems module, you examine algorithms that websites like Amazon or Netflix use to recommend products that you might want to buy based on your previous purchases. In the final module, you will look at optical character recognition (OCR) and how to break apart the complicated task of recognizing letters, words, and digits in an image. Most everyone has encountered these systems in the world, and it is helpful to see their underlying mechanics
As with the case studies, the information on how to apply machine learning in practice helps students see the bigger (and practical) picture. By discussing best practices for how to implement machine learning, Professor Ng reveals how complicated the process can be and discusses how to judge the performance of a particular system or learning model. This is especially important when it comes to system design, and the course lays out some of the factors you should consider when looking to optimize an algorithm.
Structure and Delivery
The course design works well with each topic logically leading to the next, which means you should not get lost along the way. After the introductory material, Professor Ng begins with the basics like linear regression with one variable before moving on to more complicated subjects like neural networks and support vector machines.
For each topic, Professor Ng manages to provide an intuitive way of thinking about the given problem and the appropriate algorithm to solve it. He explains concepts in a straightforward and easy to understand manner. He also includes great examples from his real-world experience and seems to enjoy ragging on Silicon Valley developers. The discussion boards, mentors, and course wiki serve as great resources if you find yourself confused.
Pros & Cons
- Excellent instruction and explanations.
- Practical programming exercises.
- Covers fundamentals thoroughly.
- Provides broad foundation for machine learning.
- Engaging and informative.
- Quizzes can be more annoying than helpful.
- Does not get very advanced on any topic.
- Programming exercises might be too difficult for some.
Overall, Machine Learning is one of the most popular Coursera courses and delivers a sturdy foundation for anyone interested in discovering the inner workings of artificial intelligence. It is informative, motivating, and practical. If you are already familiar with machine learning, you should look for something more advanced, but if you are new to the field, this course will likely not disappoint.