With over 2.6 million enrolled (as of November 2019) and a current average user rating of 4.9/5, this is one of the most popular Massive Open Online Courses (MOOC) for data science. There’s no denying that the Machine Learning Online Course by Stanford University on Coursera has been a huge success. This is undoubtedly due to Andrew Ng’s excellent ability to simplify some of the more complex aspects of machine learning into intuitive and easy-to-learn concepts. However, I had two reservations about this course when I first started it:
- Is everything in this course still relevant now that it was created in 2011?
- Will I simply repeat what I already know?
In terms of the latter, I was fortunate enough to land a sponsorship followed by a job as a Data Scientist researching natural language processing for automation on a large contract my employer had been working on (manually, with a large team of people) for almost three years. It was a fantastic opportunity, and this article will discuss my thoughts on the Machine Learning Online Course by Stanford University on Coursera. If you’re unfamiliar with Andrew Ng, co-founder of Coursera and founder of deeplearning.ai, this is one of the most popular Machine Learning Online Courses.
This course is the best choice for beginners, as I will explain later, but everything in our world has drawbacks. I attempted to identify a few of them and provide links to sources, after which you should have a better understanding of Machine Learning and Data Science.
Overview of the Machine Learning Online Course
This course covers the fundamentals of machine learning. You will gain a thorough understanding of a wide range of topics, including Logistic Regression, Support Vector Machines, Neural Networks, and clustering algorithms, to name a few. You’ll also learn some useful techniques for debugging your models, which can be difficult in ML and is frequently overlooked in most other ML courses. Many of the core algorithms will be implemented by you. In the real world, you’ll be able to use these features right out of the box with your favorite library, but going through the manual implementation process will take your understanding to a whole new level.
Text understanding (web search, anti-spam), computer vision, medical informatics, audio, database mining, and other topics will be covered. Prepare to brush up on your math skills, particularly Linear Algebra, Calculus, Statistics, and Probability Theory. Still, don’t let this deter you; the math will become clearer as time goes on. I’ll briefly summarize each week’s content in this section. The screenshots and descriptions that follow are all taken from the lectures.
Week 1 – Linear Regression
This week, we’ll look at how to teach a computer to learn concepts from data without having to program it explicitly. We’ll begin by looking at linear regression with a single variable. Based on an input value, linear regression predicts a real-valued output. The application of linear regression to housing price prediction, cost function concept, and the gradient descent learning method are discussed. We’ll also have optional lessons on linear algebra concepts to refresh your memory. For the rest of the course, a basic understanding of linear algebra is required, especially as we begin to cover models with multiple variables.
Week 2 – Linear Regression with Multiple Variables
This week, we’ll look at multiple-variable linear regression. We’ll show how to use linear regression to accommodate multiple input features. We also go over the best practices for using linear regression. We’ll also go over how to work with Octave. You’ll complete programming exercises to help you understand how to put the learning algorithms into practice.
Week 3 – Logistic Regression
We’ll talk about logistic regression this week. A method for classifying data into discrete outcomes is logistic regression. We might use logistic regression to classify an email as spam or not spam. The concept of classification, the cost function for logistic regression, and the application of logistic regression to multi-class classification are all covered in this module. We’ll also talk about regularization. Machine learning models must be able to generalize well to new examples that have not been seen before. Regularization will be introduced, which prevents models from overfitting the training data.
Week 4 – Neural Networks: Representation
This week’s topic is neural networks. Neural networks are a model that is based on how the brain functions. Today, neural networks are widely used in various applications: when your phone interprets and understands your voice commands, a neural network is likely involved; when you cash a check, the machines that automatically read the digits also use neural networks.
Week 5 – Neural Networks: Learning
You will learn how to train Neural Networks in Week 5. The Neural Network is one of the most powerful learning algorithms (I usually use it when a linear classifier fails), and the videos this week explain how to train these models using the ‘backpropagation’ algorithm. In this week’s programming assignment, you’ll get to implement this algorithm and see it in action.
Week 6 – Advice for Applying Machine Learning
In Week 6, you’ll learn how to systematically improve your learning algorithm. This week’s videos will teach you how to recognize when a learning algorithm is performing poorly and describe ‘best practices’ for ‘debugging’ and improving your learning algorithm’s performance. We’ll also talk about how to design a machine learning system. To improve a machine learning algorithm, you must first identify the areas where the most improvements can be made.
We’ll go over how to understand the performance of a machine learning system with multiple parts and how to deal with skewed data in these lessons. A solid understanding of this week’s content will easily save you a lot of time when applying machine learning to real-world problems.
Week 7 – Support Vector Machines
The support vector machine (SVM) algorithm will be covered this week. SVMs are widely regarded as the most powerful ‘black box’ learning algorithm and one of the most widely used learning algorithms today, thanks to a well-chosen optimization objective.
Week 8 – Unsupervised Learning
You’ll be learning about unsupervised learning this week. Unsupervised learning algorithms require only the input, whereas supervised learning algorithms require labeled examples (x,y) (x). You’ll learn about clustering, which is used in a variety of applications such as market segmentation and text summarization. We’ll also go over Principal Components Analysis, which is a technique for speeding up learning algorithms and can be extremely useful for visualizing and understanding data.
Week 9 – Anomaly Detection
When you buy something online, most websites will automatically suggest other items that you might like. Recommender systems look at activity patterns between different users and products to make these recommendations. The collaborative filtering algorithm and low-rank matrix factorization are examples of recommender algorithms covered in this module.
Week 10 – Large Scale Machine Learning
We’ll talk about large-scale machine learning this week. When there is a lot of data to use for training, machine learning works best. Knowing how to handle ‘big data’ is one of the most sought-after skills in Silicon Valley, given the amount of data that many websites/companies collect today.
Week 11 – Application Example: Photo OCR
We’ll take you through a complex, end-to-end machine learning application involving Photo OCR this week. Recognizing and identifying objects, words, and digits in an image is a difficult task. We go over how to build a pipeline to solve this problem and analyze and improve the performance of such a system.
The Instructor
Andrew Ng is the founder of DeepLearning.AI, a general partner at AI Fund, the Chairman and Co-Founder of Coursera, and a Stanford University Adjunct Professor. Dr. Ng’s work in AI has changed countless lives as a pioneer in both machine learning and online education, authoring or co-authoring over 100 research papers in machine learning, robotics, and related fields. He was previously the chief scientist at Baidu, the co-founder of Coursera, the world’s largest MOOC platform, and the founding lead of the Google Brain team.
Dr. Ng now devotes most of his time to his entrepreneurial endeavors, searching for the most effective ways to accelerate responsible AI practices in the global economy. Andrew Ng is undeniably charismatic, especially when it comes to teaching. He is able to present the material with patience, clarity, consistency, and structure.
Machine Learning Online Course Pricing
The cost is determined by whether or not you want a certificate of completion. To be more specific, the course pricing is as follows:
- Without a Certificate, it’s free.
- $79 if you have a certificate
There is a lot of debate about whether or not an online learning platform certificate is valuable. It’s true that, when screening a candidate, most employers don’t pay much attention to such certificates. Nonetheless, because this Machine Learning Online Course by Stanford University on Coursera is so popular, many technical guys would have taken it. They’ll be aware of the materials you’ve read. So it might make sense to upgrade to the paid version. In any case, having knowledge is more valuable than having a certificate.
What Are Some of the Cons?
Despite its allure, this course is out of date. This isn’t a course flaw, but it’s been almost 11 years! (the course was released in 2011). During this time, a lot has changed. Furthermore, it would be irrelevant if the course was about deep learning (or other rapidly developing fields). However, because this course is about the fundamentals, almost everything in it is still relevant. Except for perhaps stories about machine learning applications, which now appear to be a little amusing.
At this time, the tools available for completing practical tasks are vastly different. All of this is because the most significant advances in computer vision and natural language processing occurred after 2011. (and main course examples are self-driving cars and email spam classifiers). This is a perfectly normal situation — everything is advanced, and modern courses will be obsolete in ten years. This course covers the fundamentals that will never change (at least, that’s what we think), but it’s important to remember that approaches and tools for practical tasks are constantly evolving.
For some, it may be self-evident, but for others, it may be perplexing. The technical aspect is that the sound quality can be inconsistent at times. However, if you study with headphones in a quiet environment, you will be able to hear everything clearly. Subtitles are also available.
What Will Be Covered in the Machine Learning Online Course?
The course covers a lot, and it manages to cram a surprising amount of information into what appears to be a short amount of time. Not that it lacks depth; in fact, I believe that the depth of the material is the course’s strongest suit. Linear and Logistic Regression, Vectorisation, Regularisation, Neural Networks, Feedforward and Back Propagation (excellent), Cost Functions, Network Initialization, SVMs, Dimensionality Reduction, Supervised/Unsupervised Learning, Principal Component Analysis (PCA), K-Means Clustering, Anomaly Detection, Recommender Systems, and much more will all be covered.
There is also a lot of advice for using machine learning, such as diagnosing bias vs. variance error, implementing train-validation-test sets, measuring model performance (accuracy, precision, recall, and F1 scores), which algorithms work better with a lot of data vs. a little data, and how to adjust said algorithms to suit our needs and/or situation better.
Pros
Despite these drawbacks, this Machine Learning Online Course by Stanford University on Coursera remains the most effective way to begin learning Data Science and AI. The benefits of this course outnumber the drawbacks, and the following are some advantages:
- Covers a wide range of machine learning techniques.
- Because of Andrew Ng’s talent and teaching experience, he can explain complicated concepts in simple terms. Andrew Ng is an excellent teacher of intuitions and is not afraid to tackle mathematics. This course, in particular, is the best explanation I’ve seen of the kernel trick and model selection (underfitting/overfitting prevention).
- A significant portion of the course is devoted to the fundamentals of neural networks.
- Most ML engineers’ common pitfalls and how to actually apply methods are covered in detail.
- There are subtitles available in over ten languages. This allows you to learn whenever and wherever you want, even if your English isn’t very good.
- Remember that the course materials are free, and you only have to pay for the certificate (the standard Coursera fee is around $80 USD).
- You can use Python to complete the course assignments, though not directly.
The Drawbacks
Now, while I strongly encourage you to take the course, it does have some disadvantages. In this section, I’ve gathered a variety of viewpoints on the disadvantages. Let’s take a closer look at them.
1. The Programming Language and Tooling
The course is written in Octave, a scientific computing programming language similar to MATLAB. Andrew Ng explains that he chose Octave because of its simplicity, which allows students to concentrate on logic and algorithms rather than being distracted by a complicated environment setup. Still, I’m confident that he’ll use Python this time if he updates the material (which I hear he may do soon). Python has become far too popular in data science and machine learning. It’s become quite popular and simple to set up the environment and use NumPy for some matrix calculations.
Still, keep in mind that the programming language doesn’t matter all that much for this course. Furthermore, you’ll spend a lot of time at first with a pen and paper, figuring out the dimensions of matrix multiplications. In most cases, the programming language will be irrelevant. To finish this course using Python, go to the following link.
2. There’s a Lot of Helper Code
You don’t start writing code from scratch in many of the programming assignments. Usually, there is a skeleton of code that you must fill in with missing code blocks. There are some instances where filling in the blanks is far too simple. The comments in the code pretty much tell you what you need to write. In such cases, it is relatively easy for the student to pass the assignment despite a lack of understanding of the subject matter. However, if you take the easy route, you’ll almost certainly need to go back and review the material as part of future assignments.
3. There Isn’t Enough On Neural Networks
Some people complain that there isn’t enough information about Artificial Neural Networks on the internet (ANNs). This is a topic that will be covered for only a few weeks. Nonetheless, I believe the course covers the most important foundational elements. Keep in mind that Neural Networks and Deep Learning are vast subjects in and of themselves, which is why I recommend starting the Deep Learning Specialization immediately after finishing the Machine Learning Online Course by Stanford University on Coursera.
4. Too Much/Not Enough Math
Surprisingly, some students believe the course covers too little math. Others argue that some of the content is far too math-heavy, making it difficult and impractical. I suppose it depends on the background of the students. This, however, is one of the points on which I disagree. As I mentioned earlier, Andrew Ng strikes the perfect balance between practice and theory, ensuring that you have enough math background, at least for a high-level understanding of a concept. In most cases, you will also be provided with additional links to external resources that explain the math theory in more detail.
5. Time to Finish
According to the course’s home page, students will need about 60 hours to complete it. That, I believe, is a fairly accurate estimate. I completed it in less than 3 months, spending 5-7 hours per week, based on my personal experience.
What You Won’t Learn From the Machine Learning Online Course
Many aspects of machine learning are purposefully left out of the course. I use the word “consciously” because I am confident that Andrew Ng and the course design team are well-versed in all of the concepts listed below. This was done specifically to make the course easier to understand for beginners. Nonetheless, I believe it is critical to provide some additional materials for those interested in learning more about Data Science. Here are some examples to help you better understand Machine Learning and Data Science. I’m not going to mention CNNs, RNNs, or other aspects of deep learning because it’s at such a high level. However, I believe that this list can help you better understand what Data Science entails.
1. Ensemble Learning
The course does not mention ensemble learning methods such as bagging, random forest, boosting, stacking, etc. This, in my opinion, is the most significant omission because the neural network in the course is viewed “as a whole” rather than as a collection of weak classifiers.
2. Categorical Variables
Although feature engineering is an important part of the data science job, nothing is said about categorical and other types of variables.
3. Clustering
Only the K-Means clustering algorithm is considered a clustering algorithm.
4. Dimensionality Reduction
PCA is the only dimensionality reduction technique that is considered. Not to mention the fact that there are numerous approaches, you may come away from the course with the impression that using PCA for data visualization is a good idea.
5. Anomaly Detection
Andrew Ng talks about anomaly detection in the course, but he really means novelty detection, which is a slightly different task. In the course, this problem is solved using a density estimation approach, and other approaches are not considered at all.
Cheatsheets
You can also use my cheat sheet articles as lists of data science concepts to get a better understanding of how to solve each task:
- Supervised Learning algorithms cheat sheet
- Dimensionality Reduction cheat sheet
- Anomaly Detection cheat sheet
Conclusion
I hope you enjoyed this review on the Machine Learning Online Course by Stanford University on Coursera. Overall, I believe that more challenging and in-depth assignments could have been given toward the end of the course on the smaller sections, but aside from that, I thoroughly enjoyed the course and believe that I gained a great deal of value from it. If you’ve wanted to dive into the world of data science for a long time but haven’t dared, now is the best time to enroll in the course and gain a unique experience.
Frequently Asked Questions
If you are asking whether a career in Machine Learning is a Good Choice, then the obvious answer is Yes. So, if you’re interested in data, automation, and algorithms, machine learning is a great career path for you. Your day will be filled with analyzing large amounts of data and implementing and automating it.
The course covers a lot of ground but is somewhat disorganized. There’s a lot of math here, so you might struggle if you’re not familiar with linear algebra.
This Machine Learning course on Coursera is titled simply “Machine Learning” and is completely free to take. You’ll only have to pay if you want a Coursera shareable machine learning certification when you’re done (though this may be appealing to potential employers).
There’s no denying that Stanford University’s Machine Learning certification, available through Coursera, has been a huge success. This is undoubtedly due to Andrew Ng’s excellent ability to simplify some of the more complex aspects of machine learning into intuitive and easy-to-learn concepts.
COPYRIGHT WARNING! Contents on this website may not be republished, reproduced, redistributed either in whole or in part without due permission or acknowledgment. All contents are protected by DMCA.
The content on this site is posted with good intentions. If you own this content & believe your copyright was violated or infringed, make sure you contact us at [xscholarshipc(@)gmail(dot)com] and actions will be taken immediately.