A brilliant sequence of topics and fundamentals to get a stronghold on ML . The learnings I obtained from this course will always be my guiding factor in working through the projects in my life ahead.
Amazing really felt that I learnt something substantial. Very happy that I chose this course over others Andrew Ng Sir explained everything very clearly to a required level of depth.\n\nThank you Sir!
por Sarang D•
An excellent starter course if you want to start building your own ML systems and have a background in math. The course covers the high-level agenda and issues of developing and deploying ML systems in real life, while disbursing an engaging learning experience with a good amount of math and algorithms involved. The programming exercises are very well setup, helping you focus on the core learning for the segment. (Of course, setting up the problems is also a key part of the ML workflow, and you should try to spend time trying to do it yourself.) Centred around GNU Octave or Matlab, the course doesn't cover the applied aspects of real-time ML systems and deployments for server-grade operations, but it does touch upon the logic behind the MapReduce programming model for big data computing. Overall, the course was an excellent experience - challenging at times (rightly so), but fun throughout. Take this course in its entirety if you are looking to develop ML models as an engineer, and especially if you're looking to get up to speed with ML development as a part of product/portfolio management.
por Vincent D•
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.
por Martin v B•
The course is well taught with clear examples and a good practicum. It certainly is worth your time looking into if you are (relatively) new to machine learning as it provides a strong basis. The practicum system submission and grading system works very well.
Some words on improvement: * Some of the video and audio quality feels dated as it is recorded around 2011. * When finishing a course I felt left an addition video about what changed in the last decade. * In the practum I sometimes had the feeling that key components were left out, such as creating the hypothese in the SVM. Imho it would be better if the practum scope had a wider scope on the core of the algorithms presented later in the core. * Being a mathematician, I enjoyed some of the backgrounds. However, sometimes I felt a bit left-out because some proofs were missing that aren't not that hard to grasp (such as why the backprop works or why the inner product does what it's suppsed to do while spanning a basis). A couple of extra (optional) video's on the mathematical background of these key ideas would have been appreciated.
por Daniel W P•
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.
por Harsh B•
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.
por Suhas B•
A truly remarkable course. Andrew is a great teacher and the course brought back memories of my University days.
Now, about the course:
1. Being my very first foray into machine learning, I was not sure as to what to expect in terms of both the content and my takeaway. I would gladly say that the knowledge gain has been very positive.
2. Even if it was recorded more than 7-10 years back, it is still valuable learning. Andrew points in all the right directions and sets up a good foundation. Yes, it does not have every bookish derivation but it sets up the broad spectrum so that consuming additional information from other sources won't be difficult.
3. The programming assignments were fun and insightful. It may be straightforward for a person with prior experience in the field but for beginners, it's a challenge.
4. Finally, the software being used in the course is Octave. For some this may be a downside but I was actually surprised by its very similar approach in both syntax and structure with Python. It will be great learning to self-code all the exercises in Python.
I want to deeply thank Professor Ng for everything he had taught me in this course. For me, in the beginning, I always knew that the only way to realize the dream of one day pioneering the AI industries and perhaps even help building the world of tomorrow of a Technology Utopia is through actually putting in the work into learning everything from the ground up. As a high student myself, though, these high-level, math intensive college computer science and AI courses like Machine Learning have always been intimidating to step into. Were it not for Coursera's platform and Professor Ng's genuine, intimate, and definitely extraordinary lectures and personality, I could not see myself smoothy entering the field this early and only have my passion ignited hotter than ever. Thank you, Professor Ng, I promise you I will continue down the path I chose, and regardless of difficulties and obstacles, I will push through, step by step, and just perhaps, one day, I will be able to attain that dream I still cling onto. When that day has come, I will remember my first course in ML and you.
por Rene L•
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
por Yuqing L•
Can't say I am in any way not satisfied with the course, but here are a few personal feelings taking this course: 1. It is basically very straightforward to understand, although some part prof Ng takes extra time to care for some details, which I suspect for some students with solid math/stats foundation will find redundant, but indeed help those who don't a lot. 2. The algorithms introduced in this course are basic but also powerful, and relatively straightforward to understand too. 3. The programming exercises are very carefully designed to help students with the algorithms, while leaving the details of other programming components, which are very very very important to keep students on speed. 4. This course may require a little bit of Object-Oriented Programming language knowledge, and a little bit of calculus and stats to make the studies more smoothly. Thank you so very much prof Ng to have this course shared and this might actually turn out to be one of the most influential series in introduction to machine learning. - By some random fresher in the university
por Kevin R•
This was a phenomenal dive into Machine Learning! I will admit, not having a strong mathematical background, I struggled throughout the course, feeling like I was bobbing up and down, just managing to keep my head above water regarding some of the linear algebra involved (although the option linear algebra review unit was extremely helpful and much appreciated). That having been said, Professor Ng did an excellent job of not only teaching popular Machine Learning algorithms, and how to implement the same in either MATLAB or Octave, but he provided a wealth of practice advice for debugging and fine-tuning those algorithms as well as when and how to use them in real-world applications. This was my first course in Machine Learning and I enjoyed it very much, in spite of my struggle with the math. (I actually feel motivated to take some remedial math classes, i.e. linear algebra, statistics, and calculus in order to better understand the math behind these fascinating algorithms and to gain more comfort with what they actually do). Great course, invaluable information!
por Michael J P•
Great course from an expert in machine learning. It felt like the right amount of math - not so much as to derive everything from scratch, but enough to understand how the underlying algorithms work - what cost is being minimized, how gradient descent is used, etc. The programming exercises were quite good as well...not super easy but not too hard. I was initially skeptical of the choice of matlab/octave (rather than say python) but in the end it made sense. There is a lot to be said for grappling directly with the vectors/matrices and seeing things like how the weights are applied, how the sums can be vectorized, and similar "closer to the metal" aspects. Another terrific aspect to this course is that there is a fair amount of material on how best to apply machine learning, in terms of training, cross validation, test sets, understanding bias vs variance, learning curves, and understanding in general where to focus efforts next in a machine learning problem rather than spending months on something that would give minimal gain. In summary, well worth the effort.
por David M•
This is an excellent survey course in Machine Learning for anyone who isn't an expert already. It moves at just the right pace to keep you challenged without being overwhelmed. The staff are very helpful, and the professor makes sure to get his point across before moving on. In fact, if I had to offer only one criticism it's that sometimes he will repeat the same thing over (many many times), which is unnecessary and thus sometimes frustrating because we have seek bars and speed control for the lectures.
It's quite remarkable how well this course communicates a high-level understanding of the concepts without bogging it down with much of the scary math that is often associated with ML. For those of us who are interested in getting into the nuts and bolts, the professor makes sure to name concepts so that they can be further researched at one's leisure. He gives you what you need to solve the problem, but doesn't do it for you.
I highly recommend this course for anybody interested in learning how many of the most useful technologies of this century actually work.
por Vidyut K•
A really good course for an in-depth overview (is that an oxymoron?) of machine learning.
1 Prof Ng's teaching style is very good. The slides, his narration and his on-screen notes all combine together quite well to create a good learning experience.
2 The pre-requisites are not very heavy. If you've programmed in any language (not necessarily Octave) and you're willing to spend an hour revising some high school maths, you're good to go.
3 The course covers a representative set of techniques - linear and logistic regression, clustering, SVMs and basic neural networks.
4 The depth is not enough for you to become an expert in real-world application in any of these techniques. In my view, that would take a few weeks and a proper project in each of these techniques, which is beyond the scope of such a broad course. However, Prof Ng does go much deeper than just explaining the techniques. For each technique, there is good coverage of how to judge the end results and what to vary to tweak the efficacy of the technique. To me, this made it the perfect first course in ML.
por Sebastian S•
Extremely well done course! Every video carefully explains the part of the concept being introduced. Whether its the derivation of a concrete formula, such as gradient descent, or a qualitative concept, such as the vector support machines, the tutor's explanations are always very clear and concise. I like that a lot of different ideas are covered, and even though I have a mathematical background, this course doesnt require it, since the most mathematical parts are left to the interested reader while the focus lies on the applications. A very beginner friendly course, all you need is some basic calculus and probability theory. Also , if its too easy for you: the notes of the actual Stanford University Course (!!) can be found in the materials section of the course, so you can "play the course on hard mode", too. That Stanford version is a lot more mathematical and difficult. All in all a very very good course, and I'm happy I tried it. I would probably do every course done by this tutor, he is that good of a lecturer. Coming from a maths and stats lecturer, btw.
por Lorenzo C•
First of all I'll like to thank Andrew Ng for the great initiative of putting together such a brilliant effort. Our society evolves due to special people such as him. Great guy!
Would also like to thank our mentor Tom Mosher for the perfect timing and intelligent contribution to us through out the course. Without his patience, knowledge and dedication we would have probably never gone so far into learning. Thanks Tom!
The course is much better than I expected. I couldn't thing of this level of learning was possible through a long distance course. There were moments were I felt just like I was taking regular presencial classes.
The material, the support, the time and content of the videos, the level of the exercises, the mentoring structure were vary important to the overall result.
As there is noting relevant to suggest as improvement, I would suggest us to have pictures sent in order to create a "Class Album" for us to remember who walked along with us over this nice weeks. Including, of course, Andrew and Tom.
Thanks guys for the great contribution to all of us.
por Rujbir P•
This course is an excellent introduction to machine learning. Credit goes to Prof Ng for making a complex subject so simple. He made it easy for people without mathematical background to understand the concepts behind the various algorithms. The course covers the core algorithms of machine learning in adequate depth. That level of depth is required to get a good understanding of the concepts surrounding an algorithm. What I find very exciting is that after completing an assignment, one can use the code to solve any problem outside the assignment set. I found it very exciting to use the algorithms to solve external problems including those on Kaggle.
I also found the documentation in assignments pdf documents and that in the code very helpful. Great job done there.
My recommendation for improving this course would be to include some more algorithms which are commonly mentioned on various forums on the internet e.g. tree based algorithms, random forest etc. Or at least give an introduction to these algorithms for students to then explore them further on their own.
por Sangar S•
There's something about this course that keeps you focused video after video, lecture after lecture, quiz after quiz and assignment after assignment. Maybe its the way in which the course has been put together beautifully with every topic coherently completing one another. Or maybe its the beauty in which every concept is explained so that students can understand and visualize what is happening. Or maybe its practical examples and case studies that complement the topics discussed. Or maybe its the interesting yet challenging programming assignment that when completed makes you feel accomplished and keeps you coming back for more. Or maybe it's all of it.
Don't mistake this course for THE COURSE to master Machine Learning. But this is THE COURSE that will introduce you to the topic giving enough theoretical and practical skill set leaving you hungry to learn more. If you're taking the first step in ML, this is a great place to start and once you're through it, it sure won't be the last step.
All in all, great course by Prof. Andrew Ng. Cheers. Happy learning.
por Isa M•
Took this course in 2021. There are some aspects (not delving into math, using MATLAB/Octave instead of Python) which wont be liked by many, But I d say take your time, consider that this course is as much available to math experts as beginners. MATLAB/Octave implementations are much more fun than I expected. Learning to use those tools will give you some flexibility and then you can move on to many free/paid sources online for Python implementations. Also consider this course is one of the pioneers, but how well it aged despite fast growing ML. Last reason to pursue this course is Professor Ng himself, you can feel how much he enjoys talking about ML and tries not to intimidate beginners with Math. In addition, he tries to give as much practical advice as possible, which will be very valuable for future ML workers, rather than remembering formulae that are available anywhere. Definitely worth investing time for beginners and also experts in ML, for refresh and having fun. I would like to also thank to Mentors and community that keep this course alive.
por Stepas T•
Good starting course for machine learning topics.
Pros: examples and uses of practical applications in exercises; adequate content.
a) It's a video-based course, so supplemental reading material is quite thin. Check out lecture notes if you don't want to sit through (some or all) the videos; also if you are acquainted with the subject matter and math notation, slides might just suffice to pass the quizzes.
b) I found some topics (expectation maximization and PCA with different similarity matrices from unsupervised learning in particular) missing. At least EM is present in the CS229 course proper, so I guess it was deemed to be too advanced to include here.
c) Coding mostly consists of filling in main equations. Additional exercises asking for more analysis (e.g. "find best parameter" in one of the earlier weeks) or application of tools for another problem similar to the walk-through would be great.
Conclusion: I wouldn't dare to call myself an expert in ML after finishing this course, yet it was entertaining. I'd give it a 4.5/5, so let's round up.
por David L•
For someone with basic math and calculus skills, I won't lie it was quite the task to ramp up, I was intimidated at first (Legendary Stanford), but you just gotta use google to figure out the holes. I will say that I wish that there was a lot less "hand-holding" for the assignments, but without it, I probably wouldn't have finished! I would recommend doing it with a friend for motivational purposes, as if you fall behind, it's really hard get caught up. It's A LOT of time to invest.
It blows my mind that there are formulas and algorithms out there to minimise, organise and classify data in ways that I saw but never knew how to formulate. I'm not sure if this stuff will stick, but it has been a great introduction into the world of machine learning and data science. I plan on continuing my quest to become the worlds greatest Machine Learning analyst. Problem is that life gets in the way, and I need time. If I could just win the lotto, it would allow me to go back to school and dedicate my life to this full time. ~sigh~ . ... One day.
por Vydyam K A•
Prof Ng has boosted the amateurs confidence in Machine Learning.
As the Machine Learning Technology needs more Mathematical concepts, the frequent use of algebra and calculus terms in the course shall hint the student to gain more knowledge on those areas of mathematics.
This course shall provide a strong foundation in Machine Learning, two main observations, after few weeks of class I noticed.
1. After each week/section completion, review the topics with additional material and with more exercises. This aims in better understanding.
2. Knowing Python (or similar programming language to use in Octave/Matlab) is highly recommended, as the programming assignments targets the concepts learned in the class, but if we don't know how to do vectorization and use loops, this might result more costly for larger datasets.
Overall, after 11 weeks, I gained some knowledge on Machine Learning and certainly wont have to put a blank face when someone talks about the ML terms.
I wish everyone taking this course to have passion on this and all the very best :)
por Antonio S H•
I think this is a great course. So, before going on with the review, thank you Andrew, you're a great teacher. I've found everything you tough us very interesting. We should thank-you because I'm sure you're also a very busy person and still you find time to teach this amazing field of machine learning to other people.
With that said, I have found the contents of this course very interesting and useful. I found this course by chance, looking for information on machine learning. I was interested in the field of natural language processing and understanding, but I didn't have a background on machine learning. After the course, I have though about other places where I can apply the learned knowledge: surveillance cameras for my home with presence detection, facial recognition for the gate, etc. And I think this knowledge can help me a lot in the future in the professional life as well.
Well, summarizing, I strongly suggest other people to take this course. Maybe if not for professional reasons but the knowledge given here is very very interesting.
por Artem C•
Я благодарен автору этого курса! Благодаря курсу я ознакомился с концептами машинного обучения! Мне очень понравилось то, как Andrew NG подает материал. Он связывает понятия через аналогии, понятные на интуитивном уровне. Курс стал для меня дебютом в машинном обучении. Теперь я знаю о существовании многих алгоритмов машинного обучения и в будущем, уверен, смогу применять их на практике.
Очень крутая особенность курса в том, что задания, которые в нем предлагаются- это отмасштабированные задания из реальной практики, примеры тоже приводятся из реальной практики разработок различных систем.
Я в восторге! И в смятении, потому что теперь у меня в кармане столько инструментов. Их хочется применить, а где и как, пока не знаю.
У курса есть одна особенность, которую можно вопринять как негативную: большинство кода в заданиях написано за тебя, тебе нужно написать лишь пару строк, но строки эти сутевые для понимания работы алгоритмов).
К каждому заданию по программированию прилагается обширный pdf на английском, где подробно разъяснена суть задания.
por Sonya S•
This is my first experience with an MOOC and I thought it was awesome and I'm sad it's over. If Professor Ng created any other ML courses I would sign up instantly. I also found it really easy and super beneficial to take the homework data sets and objectives but do them entirely in python using pre-existing scikit-learn where possible.
Emphasizes practical application and does not go into to much math detail. Professor Ng is an excellent speaker and obviously a very clear thinker. You get the sense that content is carefully curated by someone who knows what is actually useful for doing ML in the real world. The data sets and the broad objectives for the HW sets are a good balance of not too messy or challenging, but enough practice that you come away feeling you could actually use some of this stuff on your own real problems.
HW in matlab / octave :( I did all the homeworks in Python (mostly scikit-learn) instead. Quizzes are just mediocre, sometimes vague phrasing, sometimes quizzing you on octave syntax, sometimes too easy.
por Qiang L•
This is an excellent course!! It has amazing Professor and teaching team. It covers main topics in Machine learning. The coding exercise is funny and not too hard. You can find all the useful information on forum and teaching staff. The structure of this course is also terrific. Some people said it would be better to teach this course in Python. I also have the same feeling in the beginning. After finishing this course, I would say that Matlab/Octave is the best option.
I have two tiny suggestions for this course: 1. If it can go a little bit more deeper into the mathematical detail of every algorithm, that would be useful, maybe make it as an optional session for those who wants to get insight into the mathematics. 2. If there is a capstone project in the end and we can work on it.
In the end of the course, Prof. Ng said: Thank you very much for having been a student in this class. I want to say: Thank you very much for being an gorgeous professor and making this class. Also, thanks to teaching team/ every staff for making this happen.