Back to Machine Learning

4.9

stars

129,805 ratings

•

32,052 reviews

Machine learning is the science of getting computers to act without being explicitly programmed. In the past decade, machine learning has given us self-driving cars, practical speech recognition, effective web search, and a vastly improved understanding of the human genome. Machine learning is so pervasive today that you probably use it dozens of times a day without knowing it. Many researchers also think it is the best way to make progress towards human-level AI. In this class, you will learn about the most effective machine learning techniques, and gain practice implementing them and getting them to work for yourself. More importantly, you'll learn about not only the theoretical underpinnings of learning, but also gain the practical know-how needed to quickly and powerfully apply these techniques to new problems. Finally, you'll learn about some of Silicon Valley's best practices in innovation as it pertains to machine learning and AI.
This course provides a broad introduction to machine learning, datamining, and statistical pattern recognition. Topics include: (i) Supervised learning (parametric/non-parametric algorithms, support vector machines, kernels, neural networks). (ii) Unsupervised learning (clustering, dimensionality reduction, recommender systems, deep learning). (iii) Best practices in machine learning (bias/variance theory; innovation process in machine learning and AI). The course will also draw from numerous case studies and applications, so that you'll also learn how to apply learning algorithms to building smart robots (perception, control), text understanding (web search, anti-spam), computer vision, medical informatics, audio, database mining, and other areas....

Jun 17, 2017

Everything is taught from basics, which makes this course very accessible- still requires effort, however will leave you with real confidence and understanding of subjects covered. Great teacher too..

Apr 18, 2018

You need to know, what do you want to get out of this course. It gives you a lot of information, but be prepared to work hard with linear algeabra and make efforts to compute things in Mathlab/Octave.

Filter by:

By Benedict W

•Jun 16, 2017

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 mss3331

•Sep 23, 2019

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

•Oct 10, 2016

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

•Jun 28, 2017

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!!

By Kumaresan

•Oct 12, 2015

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 Adarsh K

•May 24, 2019

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

•Jun 17, 2017

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

•Feb 24, 2020

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

•Aug 08, 2017

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

•Feb 08, 2019

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

•Jul 21, 2017

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.

By Aashirwad

•Oct 21, 2017

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

•May 02, 2017

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

•Feb 09, 2019

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 Mandaaar B P

•Jul 26, 2019

An excellent course. Very well structured and well paced. The quizzes and problems in every week have been extremely well thought of and provide a very good insight into the concepts explained in that week. The barrier of 80% for clearing each quiz and each week's problems is very good and important.

Andrew NG is a very likable person and obviously comes with fantastic experience in the area of AI/DL/ML. There is one suggestion though. It is important for everyone taking this course to have a good understanding of linear algebra. So while Andrew does explain the mathematical concepts of each of the algorithms quite well, I believe he should not underplay the need for understanding that math even though some concepts are advanced. It is certainly important that everyone who takes the course, realizes that it is not just using an algorithm, but that the mathematical foundations underpinning the algorithm are equally important.

All in all I thoroughly enjoyed the course and will be taking up the Deep Learning and AI courses eventually, which Andrew has already developed.

Hats off to Andrew and team for a wonderful learning experience.

By Debangshu M

•Jun 09, 2017

I am only 4 weeks in this course now. I am loving it!!

I must say, this course if very informative. I like the content, which is very precise yet easy to grasp. The course gives enough fundamentals, yet leave some of the finishing work, which is necessary to solve a particular problem, to be done by the students. For example I enjoyed thoroughly determining vectorized representation of the algorithms. Coming from High Level programming languages (I am a .NET developer), I had to unlearn easy way of implementing (For loops) and learn the new (and fun!) way of vectorized solution of Cost Function, Gradient Decent, Logistic Regression etc. Also I had to brush up some knowledge on calculus and matrix algebra from college days. Those are necessary to truly understand the beauty of these algorithm and working out an elegant vectorized solution.

Last but not the least, this is my 3rd Coursera course. This course provides me familiar experience, ease of using the platform, with all the great new knowledge in a concise format. I would like to express my gratitude to the trainer for a great learning experience and such an outstanding course.

By Peter L

•Apr 02, 2019

This course is perfect if you are a beginner in Machine Learning and would like to get some gentle yet thorough exposure to the field.

Professor Ng is an enthusiastic teacher who presents the material in a very accessible fashion. He doesn't get too deep into mathematics but teaches you enough to get a sense for what exactly a learning algorithm is doing under the hood.

Some minor criticisms: The programming exercises each require you to complete some predefined functions with a couple of lines of code which, given the extensive instructions, is often trivial - here I would have wished for a steeper learning curve. Furthermore, I would have liked to hear about additional topics such as Decision Trees, Ensemble Learning and perhaps more about the different types of neural networks.

Nevertheless, I warmly recommend this course to anyone interested in Machine Learning. You'll walk away with a deep understanding of several key algorithms, some experience in how to implement them, some knowledge about real-world ML applications as well as a number of very useful guidelines for data preparation, model selection and error analysis.

By Alan J R

•Mar 21, 2020

If machine learning is interesting to you then I would surely recommend this course. Professor Andrew Ng really makes it understandable and easy to grasp, honestly. I come from an economics and finance background, so I had some prior knowledge on linear and logistic regression, but I could easily see myself still understanding these topics and the whole course if I had not studied economics and finance previously.

Also, I learned how to use MATLAB which I consider a very valuable skill. At first I was overwhelmed by the software and how to use it and I tried to run into it head first. However, I recommend taking it slowly at the beginning and really relying on the discussion forums, because everything is there and it is a super active environment. Here I would like to thank Tom Mosher as well, because his contribution to answering questions on the discussion forum resulted in me not having to ask any questions. This course is quite old, but it is also ripe, because so many people have done it before and you can find answers to almost all of your questions. Again, really big thank you to professor Andrew Ng and Tom Mosher.

By Jose A G

•Jan 03, 2018

Awesome class. I took it while also taking Data science and Machine learning at my school. I felt like it was very informative and actually explained a-lot of material better than my school teachers. I like how Ng went above and beyond to not only explain what are the different types of machine learning algorithms available, but also tips and tricks on how to properly use them and also explain industry insight into these problems. The difficulty for me was not too hard, there are many hints sprinkled around some of the assignments, and I like how clear and easy Ng explains the material, and he makes the effort to explain things from the ground up and sets up reminders, which i think is very important. I recommend taking this class as a basis for machine learning, however more study is required to learn about more advance topics in machine learning such as Deep Learning algorithms: LSTM, Generative adversarial neural nets, convolutional neural nets, etc. Take a look at this course's syllabus for a list of topics that are covered and plan your courses towards the complete set of what you want to learn.

By Rick T

•Jun 02, 2018

This is the best college course I have ever taken! I have a MA in Psychology with emphasis on Statistics and Research Methodology and ABD (All But Dissertation) for a doctoral degree, and this class was better than any class I have ever taken. The lecture videos were organized, always on subject and extremely well done. I used to nearly fall asleep in some of my graduate seminars, but had no such problems watching Andrew's lectures. I especially appreciated the karaoke-like presentation of the videos + transcription. I have always done better when having textbooks to go to and take notes. With this approach, I was able to better process the information presented to me. The programming assignments were challenging but not impossible, and the tutorials for each assignments always seemed to provide the necessary clues to find the solution. And on completing the class, I feel that I have gained a significant amount of knowledge of Machine Learning, which provides me a bridge into a new knowledge domain. I highly recommend this class to anyone wishing to learn the basics of Machine Learning.

By Vincent D

•Nov 28, 2016

Great class. Much better than most I have attended in person. Excellent instruction, excellent resources, excellent programming exercises, excellent support in the forums, especially by Tom Mosher. Video is a much better medium than live lectures because of the flexibility, shorter segments, ability to stop and study something before going on, and ability to repeat when necessary. Great practice in vectorization. Excellent introductions to the necessary elements of ancillary topics. Bought the certificate. We live in a golden age for learning. Getting this kind of instruction would not have been possible for someone in my situation 30 years ago. I am grateful and looking forward to whatever I learn next.

Took this course to develop skills to work on artificial intelligence and other projects. One previous project described in article at http://www.kdnuggets.com/news/2007/n09/7i.html

Very satisfied. I have not been able to stop talking about how good this class is since I began taking it, and will continue to recommend it as the first step for anyone serious about the topic.

By Daniel W P

•Oct 15, 2015

This course was very nicely done. Dr Ng's videos and narrative were excellent. They were long enough to convey the material properly and short enough not to loose my attention. Assignments were very good as they left you just enough room to fail, learn and ultimately succeed. The quizzes were thought provoking. On the questions that stated "choose all that apply," I would suggest that some form of feedback be provided so that the test taker could know which ones were incorrectly selected/not selected. Perhaps partial credit would be good instead of 0/20 with one wrong selection. Feedback, perhaps an explanation, would be appropriate on all questions incorrectly answered.

I would also suggest a pdf document that showed how to do the various matrix operations in octave with an example or two. This would include basic and advanced operations. I know linear algebra, I just didn't know the syntax in octave and this cost me 3-5 hours over the whole course.

Now off to do some simple applications here at work like spam filter and anomaly detection to start. Thanks for an excellent course.

By Harsh B

•Oct 02, 2017

This was a very introductory course to Machine Learning, very well taught by a very experienced Prof. Andrew. I will recommend people to take this course to understand the working of various machine learning algorithms conceptually. Although, various proves like Back-propagation, PCA, etc. are not explained in this course, you will never feel like being not able to grasp any of the contents of the videos. I personally watched the videos at 1.25x and it just went as good as it would have been at 1.0x, except for saving the time and completing the course in 6 weeks rather than 11.

Videos are very well organised and the instructor elaborates every section with as ease as any other. In short, I have become a fan of Prof. Andrew.

The only short-coming of this course is that it doesn't have any section dedicated to Bayesian Learning, Knowledge Discovery and few of the other basic topics related to Machine Learning. I will, therefore, request Prof. Andrew and Coursera team to give sometime developing one of the courses containing all the modules that have not been covered within this one.

By Rene L

•Apr 07, 2016

Un cours excellent qui traite les principaux aspects du Machine Learning avec une ligne directrice sur la gestion de l'erreur et les différentes techniques qui visent à réduire cette erreur. NG présente les problèmes de réduction de cette erreur avec la gestion du Gradient et les différentes options pour éviter les minima locaux. Ensuite on comprend mieux l'impact des paramètres de régularisation pour la régression logistique ainsi que les spécificités des architectures neuronales. Le cours nécessite un investissement certain en temps pour comprendre le contenu et préparer les exercices sous Matlab mais on apprend beaucoup dans ce cours même sur des sujets plus complexes comme les SVM et les Kernels. Ensuite pour ceux qui veulent mieux comprendre les traitements de l'image quelques exemples (ce n'est pas mon domaine). A la fin NB aborde le Big Data avec Hadoop et la parallélisation des traitements (initiation). Il ne manque que les approches autour des techniques d'Arbres (absence totale) et les réseaux bayésiens ou algorithmes génétiques. Mais c'est un très bon cours