Excellent starting course on machine learning. Beats any of the so called programming books on ML. Highly recommend this as a starting point for anyone wishing to be a ML programmer or data scientist.
Sub title should be corrected. Since I'm not that good in English but I know when there're mis-traslated or wrong sub title. If you fix this problems , I thin it helps many students a lot. Thanks!!!!!
By Demitri M•
Gently-paced and reasonable in terms of course work load, even for a busy person. This course greatly demystified machine learning for me.
Alvin's lectures are friendly and easy to follow, and progress smoothly from one point of interest to the next, always taking time to briefly recap on precursor topics that were previously discussed.
I really appreciate how the assignments focus on the core algorithms and their implementation. Ancillary implementation steps and a scaffolding for testing and viewing the results are already given for the learner to use, play with, and go back and reference for educational purposes if need be, for refreshing on use of tools such as plotting methods. The way the assignments are structured, putting emphasis on filling in the gaps with implementation of the important algorithms, makes completing assignments a very satisfying and fulfilling experience. I feared I would get caught up in preliminary steps, i.e. getting plots to display correctly or cleaning up the data, but that's all taken care of so that one can focus on practicing the techniques most relevant to the topic and algorithms.
I only wish there were more assignments to complete, both to cover more of the course's material and to have more chances to practice algorithm prototyping in Octave/Matlab.
This course in Machine Learing was challenging, but do-able... and very rewarding. This is the first on-line course I've taken. It has been many years since my last formal college course, so I was a little rusty at the math (I'm 55 yrs old, ancient compared to my peers in this class. My last math class was over 3 decades ago, probably before most of my classmates were born. Damn, I'm old). Even so, with Mr. Ng's teaching style, I was able to finish the course with both a good grade and - better still - a good grasp on the subject material. I will certainly continue to pursue additional learning in this area.
Machine Learning is a fascinating field. I was interested in this area way back in the late 80's when I first heard the term "Neural Network", but there were no on-line courses in that pre-internet era, so the availability of information about the subject was very limited. It was mainly in breathless magazine articles about the coming "AI" revolution. It took a few decades for that promising spark to mature into a practical reality. Now, with the appearance of Coursera and other on-line education portals, much of this information is readily available to all with the curiosity and perseverance to learn about it.
I am grateful for this opportunity to learn about Machine Learning!
By Rahul K•
An exceptional journey through this vastly mind-boggling domain that is Machine learning. What a ride it has been! I must admit, before I started this course, I was pretty skeptical about it. Back then, Machine Learning seemed like magic to me. Only after this course did I realize that Machine Learning isn't as intimidating as it seems. In fact, if you have basic arithmetic skills, you can learn Machine learning to a very reasonable extent. Prof. Andrew Ng, hats off to you! You have cemented yourself as a role model for me since these past few weeks.
Just as an aside, I wanted to let all the readers know that I am working a 9-5 job in IT. Not to be a humblebrag, but seeing that I took time out to complete this course just goes to show that if you put significant effort and planning, you will be able to complete this course (rather, any course) in the stipulated time frame.
The curriculum that this course offers is challenging - You don't get spoon-fed answers when you want them. Just a little hint - Pay very close attention to everything Prof. Andrew says in the lecture. Don't open other tabs and listen to the lectures in the background.
Overall, a fantastic course! Very excited about what ML holds in the future. Prof. Andrew, we need more series from you! Thank you so, so much!
By sandeep m•
An excellent course.
Helps one Understand the core foundations of machine learning and the learning machinery.
How do algorithms learn from data and produce models (Generated code representing a complex math function, tree, forest or a Neural network)
The above skill is very important as compared to just the application side of ML. The application side generally involves mapping use-cases to certain ML-API's.
This translates further to Rote learning (cramming) all the various ML Api's offered by various frameworks, vendor products, and cloud frameworks (Scikit learn, TensorFlow, Spark ml, PyTorch, sagemaker ..........)
End result being, the problem is solved, but without developing a thorough understanding or deep intuition about how it was solved?
It was an arduous effort, as one had to pull oneself after the day job every alternate day or over the weekends. There were numerous hair-splitting frustrating moments that tested one's tenacity.
But the end result was very satisfying and gave a sense of accomplishment. It was fun working on the exercises, designing an algorithmic approach and coding it in Octave.
A very good course that builds the foundation, pushes one's analytical thinking to limits, activates and tunes the grey cells. (The real neurons, pun intended)
By Benedict W•
Amazing course. I'm on the founding team of a payments startup, where my role consists mostly of sales, digital marketing, and 'growth hacking'. At university I studied law so I had completely no knowledge of linear algebra or post-high school level mathematics, or programming. Yet I found the material digestible and engaging. At times the material was very challenging but I was usually able to understand after rewatching the videos several times and/or Googling alternative explanations. The programming exercises were not easy for someone with no programming background, but again, Andrew Ng did an excellent job of teaching the basics thoroughly and efficiently. The forums have some useful tips on completing the programming assignments in case you get stuck, which I did make use of occasionally. I did find that towards the end of the course, as I started becoming much comfortable with Matlab syntax and programming logic, I was able to complete most of the assignments without having to look for help in the forums.
All in all, this was a phenomenal course for anyone interested in machine learning. It takes a lot of patience and time to work through all the material and programming exercises (probably 100-150 hours for someone with no stats / CS background) but well worth it!
By Danilo D•
An absolutely amazing course!
The lectures are well structured, they go over all the necessary theory for understanding the machine learning algorithms presented and also contain a lot of great examples and illustrations that genuinely help learners better understand the usage of the ML algorithms.
Plethora of materials are at disposal to students: programming test sets, additional literature in the form of suggested textbooks and lectures, and probably one of the most helpful resource - the forums, where Mentors are quick to answer any questions that students may have - something I found very very helpful in enhancing my learning process.
The programming assignments are very good - they are challenging, but also serve as a great learning tool that shows students how all these algorithms we learned about in lectures are actually implemented in practice. They really help students deepen the knowledge, provided they take the time to figure out the solutions themselves. The quizzes are fair and ask from each student to truly understand the matter before answering the questions.
All in all, I would say that the course is very well worth the time invested, and I would gladly suggest anyone who wants to learn about Machine Learning to go ahead and go through this course!
This course is suited for you If you don't have a background in Linear Algebra and Machine Learning.
However, if you do have a background in Calculus and some Linear Algebra you will understand the intuition better (i.e. You can go to the lecture notes for the proofs and math explanation.).
I rarely pay money for a course , but this one worth my money! Specifically, the programming exercise were so helpful to fill in the gaps and give you a real understanding of the concepts been explained. At first you will struggle with the exercises (specially if you don't have a background in MATLAB), then you will get to used to it (i.e. you will ended up solving an exerciser in one day if you are used to it). Added to that, these exercises can be used to create your own Machine Learning Systems. In fact, I was sad that the last two weeks has no assignments. Also, you can learn from the written code in the assignment to visualize your own data. Finally, those exercises are what make the course balanced between the theory and practice! My advice for you: "If you have the money, go for the paid course. You will benefit from it even after you finish!"
I would like to thank Andrew Ng for his effort explaining the concepts and giving me the courage to continue further
By Carsten P•
About me: I studied computer science in Dortmund, Germany in the 90ies. I recommend this course to everyone who wants to have a very good understanding of machine learning. A little bit of advice, if you have never learned linear algebra on a university level, you should at least try to get a basic understanding of it before starting this course. I was happy that I remembered stuff, learning it from scratch in 1 or 2 weeks would be difficult, I assume.
* Mathematical basics of machine learning are very well explained
* Andrew Ng is a very good professor, he explains the topic very well and thoroughly
* It is not limited by using a special framework or language
* The support in the forums, and the transcription of the talks, and all the material that is given to you is really excellent.
* I would be happy if the programming exercises would be a bit more fun, currently it feels like translating / transforming math formulas into octave, which is fine, but not very fun. Having said that I am only in week 4, perhaps this will happen later
* some text questions in the multiple choice quizzes require a precise understanding of the english language, especially in regards to math, I am not a native speaker, so these questions feel especially hard for me
By Joshua W W O•
This is my first online course that I have ever completed and this feeling of completion is so immense! It took me one year to complete this. This was because I studied it part time while working and at the same time had other commitments pop in along the way. Nonetheless I'm really glad I made it through.
I would recommend this course to anyone who would like to learn about machine learning. It gives you strong foundations into the subject. You will realize right from the beginning of the course what machine learning is really all about. Though some of the assignments were quite tough especially on Neural Networks but you will eventually figure it out. Once you do, the feeling is tremendous! You will learn much about machine learning in two main aspects in supervised learning namely regression problems and classification problems. There is also unsupervised learning whereby you learn to form some sort of structure (patterns) in a dataset using K-means and also detect anomalies (e.g. fraud detection) via anomaly detection algorithms. You will also gain tools on how to analyze the performance of your system and what should you do next such that you will best make use of your time. Overall, this is a fantastic course! Thank you Prof. Andrew Ng!!
This is really an amazing online learning experience for me! Thanks a lot, Andrew and your team!
I bought a popular machine learning tutorial in 2017 and tried multiple times to understand what on earth machine learning is about, but always found that there is a huge gap between my knowledge and the content described in the tutorial.
But I didn't give up. I spent lots of my time learning Advanced Mathematics, Linear Algebra, Probability and Statistics and went back to the tutorial, but unfortunately it was still very difficult for me to understand the tutorial.
It is only after I participated this great online course: Machine Learning by Andrew Ng, that I got a feeling that this time I can make it through. I watched the videos carefully, sometimes again and again trying to catch every words. I completed all quizzes and in-video questions and found that they are quite helpful for better understanding of the course content. I spent hours trying to complete the programming exercises and learned a lot. I may never forget the exciting moment to submit my homework for the first time, online in Octave command line.
Thanks again for your guidance! Will keep learning and make best use of this learning experience in my future work and life!
a. very good coverage of standard algorithmic approaches.
b. good suggestive guidelines on specifics of algorithms like issues / details one need to be careful, need not to bother etc..
c. broad coverage of examples..
d. tricky questions...good to experience...
Overall I liked this course content and the breadth of coverage. Based on the difficulty i experienced let me place some points of improvements that would help every student....
e. could have dealt some specific examples in full (from definition to implementation) as part of video lecture which would helped better understanding of the problems, algorithms, impact of specifics, implementation issues, analysis methods, inferences that could be derived, final expected solution.
f. expecting feedback on exercises.... not only correct or incorrect but reasoning for the responses could be of great help in better understanding....
g. downloadable videos could contain in video quiz...
h. Octave content could be increased.....
i. audio of the lectures needs fine tuning, hissing sounds could be filtered. For some of the lectures subtitles does not match at all...
Thank you very much for coursera....
Thank you very much Prof. Andrew Ng.....
Looking forward for mor courses related to ML by you....
By Michael K•
The course specifically I rate at four stars. It's a great course, and I learned a lot from it. It's not afraid to get into more advanced details and mathematical underpinnings. The quizzes and particularly the programming exercises will challenge you. Professor Ng clearly knows his stuff. However, there are some serious flaws:
1) Audio recording quality is not good and sometimes he can be hard to understand.
2) Tons of errors in the videos made note taking a pain. The errors typically aren't highlighted and explained until the reading material that comes after the video. So my notebook has quite a few scratched out lines due to mistakes in the videos that are only later corrected.
3) Similar to #2, there are quite a few inconsistencies in the way formulas are expressed. Terms get moved around or written slightly differently often with no explanation. It can create some unnecessary confusion.
I still gave the course 5 stars though, because the assistants on the forums are absolutely excellent. They answer almost every question students have and take the time to explain details and intricacies of the algorithms. Their tireless dedication to helping students more than made up for difficulties caused by mistakes in the videos.
By Adarsh K•
The best Introductory Course on ML ever. No Pre-requisites allows anyone with the interest to learn ML learn it in the best possible manner. The course not only gives the Theory but also develops Intuition behind every algorithm which helps to retain the essence of the entire material. Not only the Theory but also the Practical Advices that the prof gives helps you to implement a ML Project from Scratch and Diagnose any possible error that may creep in, some of which aren't even used by many Industry Professionals. The prof is very humble and teaches you more like a friend, giving examples on how simple things may go wrong, also accepting that some of the concepts are not so easy to digest, so don't worry. The course is superbly organised which helps learners learn everything that the instructor wants to teach. The Quizzes, in-Lecture questions, Programming Exercises enable you to step through a path of- learning the theory, building the intuition, getting practical advices, implementing the code and inspiring you to work on your own projects. The Discussion Forum is always very active, you could clear any and every doubt of yours. Thanks and Congrats Prof. Andrew Ng on making the best MOOC ever!!
By Hooman R•
Excellent course. You will learn linear and logistic regression, SVM, neural networks and many more algorithms (supervised and unsupervised) You will also learn about how to evaluate the algorithms and how to design a more efficient system.
The teacher knows well how to teach the concepts in a way that you will gain a deep understanding rather than just memorizing formulas.
The quizzes are brilliantly designed to make sure you have learned the material entirely.
The computer assignments are created with profound details and you will do them in Octave or Matlab. Implementing the algorithms will help you fully understand what is happening in these algorithms. Enormous work has been done creating these assignments. Hats off to the designer of them.
The only thing that I would say could be better about this course, is the SVM topic. Unlike the other algorithms described in this course, the SVM algorithm has been explained in less detail than I expected (even with watching the optional videos). What I mean is, in order to gain a deep understanding of the SVM, one would need to see other sources as well. However, for any practical purposes, this algorithm has been explained well enough in this course.
By Chia-Yu C•
Professor Ng definitely is gifted in the sense of turning complicated concepts into reachable, comprehendible ideas, which is the best thing I can expect when entering this complicated ML world.
To me, this class is more application-oriented rather than theory/math solid. Surely there are pros and the cons of doing that. One obvious advantage would be, even with limited math (mainly linear algebra and calculus) knowledge, ones can still have a great time playing with the ideas and models in ML field. The course definitely serves as a terrific introduction to this field. Andrew had all the ideas well-covered and made sure that after this class, students can apply these to real-world without bumping into some big troubles.
I don't think the lack of math proof or formula deduction can be fairly stated as the cons of this class. Though ones will definitely need to familiar those if they have serious ML jobs to be done, this class still serves as a great starting point to help people navigate which ideas/theories to dig deeper into.
To conclude, I highly recommend this class and encourage people who are looking for building more solid math foundations can find extra readings along the course :)
By Jeremy F•
Excellent course. It has an easily understandable introduction and keeps gaining speed and complexity as you go on. While the first quizzes and assignments are quite easy, the later ones (except the final chapter) become a real challenge. I had to repeat some of them a few times. The additional resources are absolutely helpful, it's a shame I didn't use them until week 6 or 7.
I think by the end of the course everyone should understand what machine learning can do and what not, beautifully supported by real life examples. Until week 10 this course seriously left me wondering how machine learning is applied at all in a real-life work environment, but chapter 11 cleared things up.
The final chapter, as a whole, is the one where you know you've done the hard part. It's basically one big example to illustrate how you can apply your current knowledge on machine learning. It's your reward for all the patient learning.
You should still be aware that the world of machine learning is huge, and by learning the theory you merely scratch the surface of it if you complete this course. Me, for instance, I will move on to other courses to deepen my newly acquired skills, or to get some practical experience.
By KEVIN N•
Exceptional. Andrew Ng brought a lot of himself in this class. He is a master of teaching complex topics in simple ways. I have learnt a lot from his teaching skill, in particularly on how to transform complex concepts into simple statements which is quite relevant in my job today. Not everyone is an engineer and yet many people around us have heard about ML. But many misconceptions are said. This class will help you make your message crystal clear. A big community has been growing up all those years and he deserves it.
I have started taking the class many years ago for free but had not the time to finish it because of a busy life as many of elearners here. Now it is done and I have paid for it without any regret. As a ML engineer, I had especially an eye into his ability to communicate complex concepts in simple way to his students. If you are a quantitative engineer, you may pass all 100% quite easily. But what matters here is not the hardness of the questions, it is all about listening to a talented teacher. I must say he masters the communication. He is an exceptional professor, a reference to teach online courses. I have taken many MOOCS for the past 5 years. This is easily a A++.
By Subramaniam S•
Wow! What I can say! Thoroughly enjoyed a computer science subject with plenty of Mathematics. And, that is at the age of 51. I enjoyed going through each of the Video and the subsequent notes and quizzes. The quizzes took lot of time and needed reviewing the materials again, for most quizzes. I initially struggled with programming exercises. The speed and my familiarity with matrix multiplication increased exponentially and finally finished the last few programming exercises in no time.
For an average Joe, I will recommend this course to take at a leisurely pace, referring to several materials outside. I too was reading couple of books while going through this course. The books really emphasized the learning. A couple of books most suitable to read along with this course are, Machine Learning by Tom Mitchell and Introduction to Machine Learning by Ethem Alpaydin.
This course improved my confidence tremendously as I was not programming hands-on for the past several years. I have not even used any IDE as most my programming experience was on Unix machines using vi editor. This course made a swift change in my thinking and imbibed confidence that I can code complex systems.
An amazing course! The lecture videos and slides are well-prepared and the concepts are explained by prof. Andrew in a clear and concise way, using neat graphs and plots when necessary. A lot of effort has gone into making the course largely self-contained. There's more focus on the application and practical implementations of machine learning algorithms than their mathematical and theoretical details (although not at all necessary, a fair exposure to advanced Linear Algebra - derivatives of multivariate functions, matrix decomposition, projections, etc. - can help in understanding some of the algorithms better). Lots of tips and tricks are given to help troubleshoot problems that often occur in practice.
The programming exercises are designed so that the student can focus on understanding the essential topics instead of getting bogged down in too many details (nevertheless, it's a good idea to briefly go through the functions and files already written by the staff). The quizzes are also well-designed and help the student recognize important nuances in the subjects.
There's a lot to be learned by taking this course! Thank you, Professor Andrew Ng and Coursera staff!
By Matthew J•
A really excellent course.
This is the first online course I've taken, so I cannot compare it to others, either on Coursera or other MOOC platforms, but I can say that it was perfect for my needs and I learnt a lot from it. The math content - of which, obviously, there must be a lot of - is very well-explained, and Andrew takes care to require little more than a high-school level expertise to understand.
The programming exercises were slightly challenging, but not overly so, and helped solidify understanding - and hey, there's always that little thrill of excitement when you see your program begin to give you real answers, and you realise that you've just written a program to recognise letters when given just a bunch of pixels.
I didn't use the forums much during the course myself, but they appeared to be very well-supported by knowledgeable and helpful mentors. (Tom Mosher, in particular, seemed to be on-hand all day, every day!)
As to Andrew Ng, the lecturer, he clearly has a deep and extensive knowledge of his subject matter, but his presentation is always kind, enthusiastic and helpful, so I'd like to pass on my thanks to him for making and presenting this course.
By Simran K•
For the past few years, all I've been hearing is the word "Machine Learning" being thrown around. In my head, it was built up to be something really difficult that I had no idea about. I wanted to change that, I wanted to be a part of the conversation. This course has truly helped me do that, even as I go through more professional forums about machine learning, I understand the concepts a lot better. It's no longer technical jargon out of my reach.
Andrew Ng really breaks down the course to simpler elements. He brings up layer on layer of abstraction while keeping the students interested with real world application. The presentation, documentation and course assignments are planned perfectly. It's so simple to follow everything, and yet, you still gain more understanding as you move forward.
The community and discussion forums are a great help as well. I'd recommend this course to everyone looking forward to know more about Machine Learning! Don't let the math scare you, it's for your understanding, it's okay if you don't completely follow it. I'd suggest going through an intermediate maths course to relate to it better, but it's okay even if you go without.
By Matteo L•
An absolutely fantastic experience from start to finish. A great approach to teaching this material and making the student feel like part of the class right away. The contents were incredibly interesting and the structure of the course was absolutely perfect in my opinion. Andrew Ng. is a fantastic teacher and you can clearly see how passionate he is about this field from the get-go.
I think it's also important to mention you can see the hard work put into constructing the exercises and providing structured information in the resources tab and the discussion forums thanks to the mentors.
The only (small) negatives I'd mention maybe are the fact that random forest (or similar) algorithms were not discussed (maybe there is a reason that I am not aware of) and possibly the exercises tended to get a little bit less challenging towards the end. I think an exercise on optimization using the stochastic gradient descend and the mini-batch gradient descent could have been a nice add to the list of exercises as well.
Once again, overall this course really should be considered a reference in terms of teaching and course structure for MOOCs and courses in general.
By Federico L B•
This course was absolutely phenomenal. The main teacher Andrew NG made all the videos and classes so fast and seamless to watch with very interesting examples of real life, as well with important theoretical explanations. The topics, additional contents, extensions and real life cases were delightful to learn. The reviews at the end of each video made for a very fun and interactive way of demonstrating what you just learned in a video class. The reviews at the end of each sections were difficult at times but fair and rewarding when passed. The exercises were very difficult at times but the amount of resources, help from the mentors and the community and the general support to the students was more than enough to help me obtain a 100/100 score on each one of them. The only issue I would have is that the last few exercises were very difficult to understand. This meant that the code did almost everything and I felt like I did very little and that I myself could have not done what the code was showing me. But maybe it is tuned as close to perfection as it is. I can only say thank you and I really hope this helps me find a job as a Data Scientist.
By Kunind S•
A really amazing course by Prof. Andrew Ng. He covered all the majorly used Supervised and Unsupervised Learning Algorithms. Now these things are covered by many other courses too, so what's so good about this course? The answer is Prof. Ng's lucid ad easy to follow explanations so much so that, you don't really need to be a wizard or even have a knowledge of College level Linear Algebra or Vector Calculus. Also what additional information we gain from this course is not just the Theory behind ML algorithms BUT also the practical implications! These things are crucial since most of us aspire to be ML Engineers in the applied space. He teaches us ways to debug our algorithms, practices which are industry relevant also how to improve performance of our algorithm, what to devote more time and energy resources to, etc. Just be committed to this course, you'll start loving ML and getting a hang of it in no time! Well it would have been "another" cherry on the cake if Prof. Ng had included other algorithms such as KNN, Naive Bayes, Decision Trees, Random Forests and a much deeper implementation of SVMs, but overall, I'll rate the course a 5/5!