Very good coverage of different supervised and unsupervised algorithms, and lots of practical insights around implementation. All the explanations provided helped to understand the concepts very well.
Fantastic intro to the fundamentals of machine learning. If you want to take your understanding of machine learning concepts beyond "model.fit(X, Y), model.predict(X)" then this is the course for you.
By Malcolm N•
My CS friend recommended me to take this course to learn more about how to use data in business, after he heard that I wanted to program an app for food. he warned me about the great deal of math involved (mainly linear algebra). me being a physics/engineering major I naturally got even more excited (it turned out that he was right, and it would also be a huge plus to know multivariate calculus, and I can see myself struggle with the concepts had I not studied both these topics to bits in school). incidentally, this was my first online coursera experience. I can tell you it will be life changing experience. No longer do I have to physically travel somewhere to listen to lectures or hand in assignments, nor download lecture notes off of the school server. This is a 24/7 always on always available service, with the best TA's to answer your questions if you get stuck on homework assignments and quizzes. Everything in the coding assignments tests your knowledge of the course lectures and is designed such that you can complete it in the shortest possible amount of time while reaping the maximum amount of benefit. It is "easy" sense does not require you to grind through mundane things like looking for your own training set data or writing code to plot and visualise the data, but it is "hard" in the sense that very often it takes an hour (or more) of studying the lectures and thinking to figure out how to solve the problem in the most efficient way as possible which often involves writing a single line of vectored matlab/octave code. It is more of an overview of the most important topics in machine learning, but will be a great springboard to go in depth into each aspect of it. Lastly, Andrew often offers wonderful insights into the day to day of machine learning professionals in his lecture videos, so I would advise watching every single minute of them to get the most out of the course instead of aiming to race over the finish line (which can be tempting at times when the deadline approaches)
By Daniel D•
This course is vital. People can do machine learning using out-of-the-box tools like keras, fast.ai, theano, tensorflow, and do amazing things. But to understand what's going on internally, to understand what it takes to get things to converge fast and to perform accurately and to be as useful as possible, to understand various types of networks and new discoveries later on, it really takes a good, healthy, rigorous foundation at least in very simple calculus, matrix algebra, back-prop, stochastic gradient descent, linear and logical regression, and such. If you try to forge ahead and get stuck or cannot come up with a way to build a proper model later on, you may find yourself giving up or returning to the material provided in this course. Andrew Ng did an excellent job teaching this. Even so, I heartily recommend watching views from others to get unstuck or to reinforce what you have learned--to make it more concrete. And do all the assignments aiming for 100% on every one.I found myself viewing youtube videos from many experts and found most of them extremely interesting and exciting. By getting several people's perspective, I feel I was able to learn the material better and more easily. Of course, it helps to have a math background, too, and I received my BA in math long ago from Fresno State with an Applied Math option and a Physics minor. It was a joy to return to my old math stomping grounds.If it takes time to get through, that's OK. Sometimes it helps to let the material marinate or let your brain marinate in the material. Then if you're like me, you might come to the place where you start to get on a roll and decide you need to put everything else aside and focus on finishing *this* course to perfection. And it can open the door not only to interesting work but to other interesting and worthwhile certifications.
By Tejas R•
I found the Machine Learning course has a good structure, excellent teaching instruction and a perfect pace for working professionals. It covers a wide variety of topics/techniques in Supervised and Unsupervised Learning.
Professor NG has an excellent way of teaching any given topic. He covers all the fundamentals or building blocks to a particular topic quite well before putting it all together to demonstrate how a learning algorithm can be built. Each week has some quizzes and programming assignments you need to complete. For someone who is new to this entire topic, I found the quizzes and programming assignments sufficiently challenging. The quizzes test the basics covered in each topic, whereas the programming assignments give a hands on experience in how to write parts of Machine Learning algorithms.
I was also impressed with the course resources. There are numerous resource links available if you are interested in reading more into any topic. And the course forums are quite helpful in case you are stuck on any particular problem. Just going through the forums’ FAQ is bound to help you gain further insights into the course topics.
I am a working professional from whom it is difficult to dedicate sufficient time to enroll in a proper university course. I found the pace of this course well suited for the amount of time I was able to spend in a week.
This course does not cover any one particular topic in too much depth. It is structured to introduce you to a wide range of topics in Machine Learning and can set you up with the proper introduction and background if you wish to pursue any of those topic into further depth.
Overall, this course was very fulfilling and I would highly recommend it to someone who is looking for a course which introduces you to a wide variety of topics in this domain.
By Pat L•
This course is an essential tool. I am beginning on a long journey of machine learning I hope will end at my ultimate goal of securing employment in the field of natural language processing and deep reinforcement learning. Starting completely from scratch, I began this journey by getting text books on the topics and attempting to follow along. Many of the basic learning algorithms, which seemed so daunting at first, were explained to me in a way that allowed me to fully embrace and understand the topics on an intuitive level. This course is the essential entry point to anyone wanting to truly understand the mechanics of machine learning. The mathematical concepts are broken down in a way that is truly intuitive and easy to follow. Additionally, Andrew Ng is a world class instructor. His manner, presentation, and encouragement from, at the time of this review, 8 years ago is evergreen and invaluable. He sincerely believes anyone who puts the time into learning this material can accomplish great things in the world. This course was inspiring. I was so engrossed with the material that I completed all 11 weeks of course work within 5 weeks. My only issue is the use of MATLAB/Octave in this course. All the materials I have read state that these languages and applications are widely not used in the field anymore though at the time of the course development, I understand the inclusion. Perhaps an update to the course that allows for the programming to be done in Python or R would be beneficial, but once you get the hang of MATLAB the programming exercises become easier as the course moves on. My sincerest and most heartfelt recommendation goes to this course for anyone who has an interest in opening the door to their own journey into this field.
By Alistair W•
I worked for a start-up specialising in AI and rules based software that aims to learn how attorneys review contracts to extract key data points (e.g. clauses, parties, names, dates, numbers and text classification). Although I worked in sales / presales and as a domain expert for legal (being an attorney), I always wanted to know more about the technical side of what we were trying to achieve. This course provided my first proper and thorough introduction to machine learning, not only the coding concepts but also the underlying maths. It's been really tough going through the course, but that's down to my rusty maths (I have a maths A-level (i.e. pre-University maths to American readers)) and hadn't practised maths in around 12 years before completing this course. Similarly my coding skills had become rather rusty. All that said, the quality of teaching, forum support and coverage of this course has been great. I've had to read around quite a bit, mostly where certain topics were introduced without first zooming out to explain what the overall algorithm is trying to achieve. However, these issues were easily overcome given the course is well supported on the forums and similar topics are covered elsewhere on the internet given their prevalence today. I thoroughly recommend this course to anyone interested in AI and machine learning. I am looking forward to completing the Deep Learning specialization course as a result of this course, and will also be completing FastAi in tandem to get both a bottom up understanding (as was the case with this course, and will be the case with the deep learning specialization) and a top-down understanding (as will be the case with FastAI). Thanks to the team at Coursera, the forums and Andrew Ng!
By Zdeněk V•
My review concerns partially the course and partially the Coursera concept as this was my first on-line course and I cannot distinguish between those two.My experience was simply great, I felt that it was time well spend, for example compares to my company provided trainings and I'm hoping to return to another course.I have quite strong background in statistics so some parts were too basic for me but being able to speed the videos up is neat and it opens the course to wide spectrum of students (again opposed to company provided trainings or even school lessons where in the best case half of the students are bored of the slow tempo and other half isn't able to keep up with the same tempo). To have my own timeplan also helps but I even finished quite early as it was so fun.About the course contend: Andrew Ng prepared great lessons, all was pretty well explained (even when he cannot use some "advanced math" not to lose part of the students). The examples were illustrative as well as realistic (at least seemed realistic and that makes it more exciting than some artificial ones).I was little afraid of the programming exercises as I've never worked with Matlab (using mainly R). But now I'm glad that I know another language:) The system of submitting works perfectly.I can say similar thinks about the contend of the exercises as I wrote about examples in lectures. It is nice to program my own spam filter - the concept of programming only some small parts of the program and not to have to deal with data loading, plotting... is again very entertaining and instructive and then it can be done some nice application in short time.My thanks to the whole Coursera team and of course Andrew Ng. Hope to use this cool tools in my work.
By Natalia G•
First and foremost, I would like to remark on the following. Some of the reviewers below note that this course is a sort of "waste of time because it covers only basics without going deeper into math". Please do not take it too personally, but there is a "Beginner" level which is clearly stated in the course. I am not going to argue with those who already have some basis in Machine Learning or Math/Calculus/Linear Algebra - for these people it may be useless, no offense. In this case, YES, this course is too introductory but, again, it is for BEGINNERS! It is like, I am a person with C2 English certificate but will complain about the English course for A2-level-students. Please, keep this in mind.
As a Beginner myself, I would like to express my great gratitude to Professor Andrew Ng and his colleagues who helped me to go through the Machine Learning and realize what I really want to do in my life! The course really covers basic approaches (methodologies, basic theory, some not very difficult practice which can be challenging too, and if you have little time, do not take this course, you need to spend a fair amount of time here to gain understanding). Since this is only a basic course, some information may be insufficient, but Professor Andrew Ng provided necessary books and materials in Resources section if anyone is interested in further development.
Moreover, I would like to emphasize the structure of this course. No "offtops", no "overmath", no any extra unrelated information - only what you really need to be INTRODUCED into this topic. I strongly recommend anyone, who is interested in Machine Learning, taking this course asap! You will never regret it, and as some of the reviewers mentioned, worths any penny claimed!
By Felix E•
Absolutely fantastic course! I just wish my old university had classes on that level.
Fantastic tutor as well. I loved how Andrew would sometimes explain the same thing in different ways and spend time to start explaining the problem before offering a solution. I feel like this has been a great approach, especially since you can't directly ask questions in an online course and it would have been really hard to figure out the details on your own if some things are not clear to you.
Best part of the videos are the times that Andrew messed up something and probably thought "ah I'll cut this part out later" but never did. So sometimes you'll hear him stop in the middle of the sentence and just start all over. Fucking hilarious.
My only criticism (or rather, room for improvement): The programming exercises were kind of bland at some point since they didn't really require you to think about what you are doing. Most of the time it felt like I would just try to figure out the Octave language while basically transcribing the formulas in the PDF's into Octave syntax. Maybe offering another language (eg. Python+Numpy) as alternative would help here: Since developers will be more familiar/comfortable with a language such as Python, they can focus more on the actual ML implementation instead of spending about 75% of the time trying to figure out the syntax. Seriously, fuck the Octave syntax. And the IDE is atrocious.
But overall, fantastic course, 10/10, would recommend to everyone interested in ML. This course has basically single-handedly gotten me a job as ML developer since the first four weeks were enough for me to absolutely nail the technical job interview. Thanks Andrew, if I'll ever meet you, I'll buy you a beer!
By Ron M•
This course is a great balance of practical implementation and theoretical underpinnings. Very thoughtfully taught. My only complaint is more of an issue with the Coursera platform. If you run into problems, that in a physical university setting you could review in person with a TA, you can get help via the forums, but for the programming assignments in particular it is a challenge to talk to your peers about your problem, not violate the honor code, and still get to a point where you get your issue resolved so you understand how to complete the assignment. For example, while vectorized solutions are not essential for this class, they are highly encouraged, and in at least one assignment non-vectorized implementations pay a significant performance penalty (hours of run time - possibly to find it did not work properly). Ideally, in a physical college you could review things in person with a TA in a manner that did not violate the honor code, but did also get you to a true level of understanding. The open, public forums are not a substitute for that level of help, and while the "mentors" are good, helpful folks, they are also volunteers with their own lives and also limited by the Coursera platform itself. So that is the ultimate weakness with the Coursera format I am not sure the best solution, and it did not overly penalize me, but I can see people (especially on the Neural Network programming assignment) giving up and not completing the course because they could not get the level of understanding that is needed. I would still recommend Coursera, but hope as implementations are iterated the issue is addressed so that more people can get the help they might need.
By Aditya A•
Andrew Ng's course is certainly a great introduction to Machine Learning for people who are unfamiliar with the topic. I think concepts were explained very clearly without much too much statistical jargon, while also familiarizing people with the concepts, techniques, and terms in ML. I do want to however suggest further improvements that maybe helpful for developing similar courses. I think first it would be better to teach the class in Python. While Python would have more of a learning ramp as opposed to Matlab for those who have never coded before, outside of scientific computing, Python seems to be industry standard and I would have preferred to be introduced to the environment, libraries, and tools in the course. Second area, would reiteration, depth, and practice. While the programming exercises did challenge learners to think, I think I would have gained a bit more for example doing an implementation of an algorithm from scratch and writing code to apply it in many different applications. Also, while mathematical proofs and derivations for formulas were impressively clear, I think it would be great to provide more sections in the course for those who were mathematically inclined to further explore the algorithm's derivation and see how it applies as the algorithm help predict a hypothesis. I think the course was well designed for someone who can't make to much time for the course, hasn't worked with high school and undergraduate college math in a while, and hasn't touch code or just dabbled in it. But it would be great to see a course taught as simply as this one, except with a bit more depth for those it might fit.
By Richard D•
The Machine Learning course taught by Professor Ng is a good way to survey a variety of the commonly used techniques in the field. Though I had been exposed to algorithms like k-means, SVM, PCA, and regression before, it was good to see a unified treatment of all the subjects.
The video lectures are good. In the early weeks I felt a bit overwhelmed by new information, but by the end of the session I was feeling that the lectures were being stretched out. In particular, I started noticing the professor would repeat every point 2 or 3 times. That may be a good style in general, but I found it time-wasting.
The quizzes were good, but a few of the questions here and there were phrased poorly, in an ambiguous manner that made it hard to understand what exactly was being asked. One questioned used vocabulary we hadn't been introduced to. (Sorry, I don't remember in which unit this happened - it wasn't a big deal at the time.)
I enjoyed the programming assignments the most and, quite frankly, lost interest at the end when there were no more to be done. Most of them were challenging - at least if you avoided using the tutorials which really take you through every step. I found the SVM programming assignment thin - we really didn't do anything there except multiply a couple matrices.
I have mixed feelings about the transcripts that accompany the videos. On the one hand, they are very helpful for skipping ahead when one sees a certain idea repeated 3 or 4 times. On the other hand, they are obviously automatically generated and riddled with errors. For a machine learning course, this is particularly ironic.
By Kevin N L•
The lectures and reminder questions and tests and programming exercises were all fine I thought! I enjoyed engaging myself with the course material. I was happy not to have a lot of pressure. I was glad each week was a small enough manageable bite of work so I could get it done in less than a week with lots of time for other things, and still get done without being bumped to another session. I guess the programming exercises were very interesting because there are three or four sets of instructions and notations for each exercise: 1) course lecture notation 2) a PDF of instructions 3) the instructions in the comments inside of the overall exercise test code, e.g. ex7.m in Octave 4) the code itself in the exercise test code. So after I learned to make a print statement in Octave I was able to figure out which way every matrix was pointed, and now I am an expert in fprintf again. The most common example was usually the lecture notes had Theta(transpose)X while in the code I had to do it the other way. I really enjoyed learning how to use graphs to tune the learning machine, and also how to analyze the pipeline to determine which part to learn on. I enjoyed the math in the course, like gradient descent of different types and the fminunc function. It all made a ton of sense to me and I think it can be a useful tool for me in the future if I am not too old or lazy or distracted to use it! My first idea is to use the course techniques to create scrabble word study lists, I guess. Maybe to make a sloppy Valid or Invalid Word discriminator so I'll have a way to create phony vocabulary words or neologisms.
By Parantap S•
There is always a trade off between various factors while designing any course, a lot of this has to do with the expected outcomes of a course and the intended audience for example. It takes a lot of thought, experience and a passion for communication and teaching to arrive at such a balance. This is one such course where I'd like to say that an almost perfect balance has been achieved, my sincere gratitude to Professor Ng and his team for putting all this together. I might have liked some more details about optimization algorithms and maximum likelihood estimation, but I realize that this is something specific to me and may not be shared by others who are taking this course for a variety of reasons. However, I do not mean this as a criticism, instead because I am so impressed by what Prof. Ng and his team have achieved, and since I also have a technical background together with a desire to communicate complex ideas, that at some point, if possible, I'd like to try and create and add this additional material. The reason for saying 'at some point in time' instead of' immediately', is that I now intend to go through some more courses on Coursera (I think I might be addicted now). While I have a technical background, it is not in computer science and I did not have a lot of programming experience prior to this course, yet this course has managed to give me a fairly clear and solid foundation in supervised and unsupervised learning together with some operational intuition on structuring machine learning projects. Once again, sincere gratitude to Professor Ng and his team for making this course, Thank you.
By Bruno s•
The course developed by Andrew Ng is quite interesting, going to the essentials in order student get the big picture and the essential tools for building the backbone of future ML applications. Of course, being confident with mathematics principles and notations will be helpful but most of the time, it's not an issue if you have the minimal knowledge. What it lacks on Coursera is the next stage of this course where we could investigate further the technologies presented but in more technical way. Maybe we might see that in the future...
Regarding course supports (videos, forums ...), they are of good quality and the fact Andrew used them by drawing on slides helps to have a better understanding. We could notice that there are few minor errors (eg: a "j" index which becomes "i" in J(theta) writing) and I think the technical slides on Back propagation could be improved if a dedicated slide to used mathematical notations / definitions. Sometimes, there are some errors which could induce some confusions. But these minors errors don't hide the impressive work done by Andrew.
Regarding assessments, quizzes could be tricky if you don't got the "spirit" (not an exam habit in France) and coding exercises are well structured in order the student will focus on the core modules of the lesson and not on information flow. These exercises are inspiring if you're interesting in teaching and inspiring for Data Scientist Apprentices if you investigate the utils functions developed to support the exercise.
Many thanks for this great course and I hope my two cents will help other people to attend it
By Kiran K G•
Never imagined online learning could be so much fun and so much in-depth. A lot of attention and effort has been put in to craft the training material including all the videos, exercises and quizzes so that every student can grasp the concepts with ease. The pace is excellent and the videos cover the foundation of what machine learning is all about.
After this course I understand what regression is - linear, non-linear or logistic. Understand how neural networks work, the idea behind their working and how other systems such as recommenders or anomaly detection can be built on top of these ideas. Practical examples such as hard-writing recognition, Photo OCR and many more provide real-life scenarios and applicability of machine learning in day to day life, which is actually cool!
I loved doing all the exercises even though I must admit some of them seemed difficult at first, but with guidance provided in the write-up, path became much easier. Submitting was fun because it was so simple using Octave and submission token.
Andrew Ng is such an excellent and knowledgeable teacher that I am looking forward to more courses from him and of course, other teachers on Coursera. His communication and teaching style is perfect. It is a great gift in my opinion to be able to take such high quality and informative courses online, while still being able to do my everyday job at my work place.
Almost feel little emotional now that the course has ended after months into it, listening to all the videos and doing the exercises. Feels great to become a student again!
By Deleted A•
I came to know about this course while attending one of the webinar's on machine learning applications in VLSI design. I thought of exploring more about this topic and found this course.
Andrew Ng is one of the well known expert in AI and adjunct professor. He worked at Google as the founder of google brain project, Chief scientist at Baidu (equivalent of google search engine at China) under his leadership Baidu AI team grown to 1300+ team, Co-founder of coursera, Founder of landing.ai, deeplearning.ai
He touched up all the basics (linear algebra, probability, derivatives, matrix operations) required for this course. So, anyone can straight away jump into this course and start leaning the concepts of machine learning.
The following topics are covered as part of course : Supervised learning (linear regression, logistic regression, neural networks, SVM's). Unsupervised learning (K means-- I love this algorithm ,PCA, anamoly detection), advice on skewed datasets, advice on building machine learning system, handling large dataset , few realtime applications in AI like online shopping, face recognition, image compression techniques.
The best part is the course is every lecture comes with a project which needs to be implemented in Octave/Matlab and most of them are realtime problems which we can apply in their field of study (Kmeans, photo OCR, image compression, housing price prediction etc..)
If you are looking for a quality ML course, you have reached the correct location. Blindly signup for it without wasting your time and start learning.
By Krishnakumar K•
Really an amazing and wonderful course for anyone who would like to dive into the depths of machine learning. I am a student who is completely from a very very different background. To be frank i didn't even expect that I could complete/understand anything about machine learning. But Dr. Andrews,.... sir hats off to you. You are the real hero. The course takes us straight off from the beginning to the end without any complications. You just need a passion for the subject, to learn, to understand. But i would also like to point out some stuffs to the course coordinators. The prerequisite asked is just basic programming skills, but i doubt is that sufficient. I had to spend hours and days for getting the programming assignments coded correctly. I would like to request the team to either include more working examples in the programming part or clarify the programming side in a better way. Apart from this the course is just superb! I also take this opportunity to thank Coursera community, the group of mentors and the entire team that works behind the scenes to make it such a big success. The discussion forums and resources provided (including lecture notes, programming tips, etc) are just beyond words. I sincerely thank a course mentor Tom Mosher for spending his time and effort for the resources and ideas he has provided throughout this course. To wind up; do not hesitate just take up the course if you have a passion for it. Thank you Coursera, thank you team Machine Learning and last but not the least hats off Dr. Andrews. Good Luck
By Dan Y•
Everything is very organized, explained very well that anybody who is willing to learn can understand it and build good intuition about the material.
Also, the Programming Assignment are awesome, a lot of the time contain some extra content and helps you understand the material. You also don't need to bother with creating the 'envelope' for your code - all the relevant code for plotting solutions and checking your answers is already included in the course!
I'm a 1st degree student for EE and took an introduction to ML course at my University, so I can't really tell from the perspective of a new learner. From me the course was complementary to the previous course I took and helped me develop more intuition about things that I already knew and learn new stuff (even though some of the things I already knew aren't included in this course)
For learner new to this subject this is my opinion:
Some topics that need some more deep mathematical background are skipped a bit, It is in order to focus on the Machine Learning aspect of the things, and also to enable people with more shallow background in math to take part in this world.
Even if this course is not all that is to Machine Learning (OFC it isn't! it is impossible to learn everything at once...) it is still really comprehensive and I think everybody that want to get into Machine Learning has to take this course. After taking it you can continue your learning independently because it gives you a really good, strong, comprehensive basis to ML.
Ty andrew and all the mentors.
By Eric Z•
The course has 3 main strengths that help it stand out from some other courses I've taken (especially online):
1. Explanations: Ng gives excellent explanations in each video, describing the intuition behind complex mathematical ideas, giving real-life examples, and addressing common misconceptions.
2. Rigor: The course doesn't shy away from fairly difficult mathematics except in a few minor cases (SVM, for example). It also provides checks for understanding during each video so that the student is forced to actively recall the concepts rather than passively listen along and feel the illusion of understanding. Finally, the quizzes and especially the programming assignments are well-designed and appropriately difficult, as they further engage the students in deepening their understanding.
3. Applicability: Ng has loads of expertise in the field of machine learning, particularly in industry, and this lends a lot of credibility and weight to what he's teaching. He's not just waving his hands over complicated mathematics and vaguely referencing the importance in the real world. He constantly provides you with real problems and situations that are faced and gives concrete advice for dealing with them.
The only thing I would recommend adding to the course would be some form of spaced repetition to ensure learners aren't forgetting material from earlier weeks by the time they reach weeks 10 and 11. There's some level of this already present in the videos and in the nature of the content itself, but it's mostly passive as it currently stands.
By Jatin K•
Just finished the course. This is indeed an amazing course which can get started you in practical machine learning in less than 3 months. You will developing your own neural networks from the scratch. Below are the pros and not pros (i won't call it cons) that i experienced.
Gets onto topics right away.
Information about practical implementation
Doable. Not too difficult and not downright easy. You have to put effort if you do not have backgroud in undergraduate mathematics to understand the concepts.
Prof. Andrew Ng. - He has knack of explaining something very complex in a very easy manner. Also, he justifies if he is not going to explain something
Assignments evaluation and practical scenarios.
Not PROs :
Very High Level : This course does NOT go in detail to explain the derivations and mathematics behind machine learning course. I think its OK and that is what makes the course doable. I find it really hard to accept a formula if the reasons are not known and hence, sometimes our only task was to learn the formula. For example : in SVMs.
What Next :
It is just a feedback. I think at the end of course, course team should guide students, what do to next. May be which course can be a good follow up course for this.
So, at the end, i just want to thanks Coursera team, Stanford Team, mentors, peers and Prof. Andrew Ng for spreading this knowledge for free. It is really helping people like me to study something not readily available in good quality in reach. Hopefully, i will also be able to give back to community some time soon.
By Banhi B•
Probably the best MOOC course on Machine Learning. Professor Andrew Ng is a great teacher - he makes complex algorithms and concepts very lucid and easy to understand, especially for people with no ML/ AI background. The course is very well structured and gives useful practical tips. It does get quite intense at times, especially the vectorization parts in the programming assignments - but the Discussion Forums are a huge help. Many thanks to all the mentors, especially Tom Mosher for his guidance and valuable insights. Two small pieces of feedback -
I ended up spending a lot more time on the programming assignments than on the videos themselves.The concepts were clear but the vectorization really made it very difficult to complete the assignments. Is it possible to use some other package instead of Matlab/ Octave, which is perhaps a little more high level and has functionality to do most of the stuff?
The second suggestion/ feedback is : I found the time estimates to be very aggressive for a beginner with no ML/ Octave background. So, most of my study planning would routinely get off track. Not sure if most of the people taking this course found them to be OK.
Is there a way to download Professor Ng's lecture notes for future reference? Not all the information is present on the slides. And it is difficult to bookmark videos - lecture notes would be a great help.
All in all, this was a very interesting course - one I would recommend to colleagues and friends to take. Many thanks to Prof Andrew for his guidance !
By Janos N•
A huge thank to Andrew (and the team behind him)! Amazing introduction to ML. Educational, inspiring and enjoyable. The best first step on the path.
Andrew has explained everything very clearly and in the right details. (He has the unique skill to explain complex things simple way.) I personally liked Andrew's humble personality and teaching style as well. The lectures were enjoyable and easy to absorb. Hope he will have time to create new courses as the world of ML is progressing.
The students were really put first. Selecting Octave, to be able to focus on ML concepts and not on the programming language. (I have also questioned first, why Octave, but later realised that was a good choice.) The programming exercises were very well prepared, taking a lot of burden off the students, enabling sharp focus on practicing what we have leant that week, and did not have to spend extra hours on the scaffolding. (I have felt a little bit pampered, but without that help I am not sure I would have had enough free time every week to finish the assignments. )
The exercises were real, useful and fun. They helped to gain deeper understanding of the subjects but also showed real solutions for interesting problems. Before the course I could not imagine that I could gain the skills so quickly to solve these problems.
Also thank that: all the required math was explained in the course; the Octave demo was useful to use the language throughout the course; the exercise instructions had useful hints to solve the problems efficiently.
By Adrian H S•
I would very much like to take the time to thank you for this course, which has proven to be a blast and has lived 100% to its high expectation. Really happy that I have finally found the time to take this class which got my attention a while back. On top of introducing very fitting and relevant ML topics, I have really appreciated your skill in making the most complex and abstract notions very accessible and easy to understand. Extending the exercises with my own data and getting to"play around" with different parameters was also very fun. Especially useful for me were the insights regarding the "correct" mindset to have when approaching a ML problem (how to best spend your time, not losing the big-picture, inspecting your progress). As you can see from my pass ID, I am living in Germany. My employer is MediaMaktSaturn, the number one consumer electronics retailer in Europe and I am responsible for a department developing "classical" software. Since we have a lot of data available, I look forward to applying what I learned in this class. On a more personal note, I feel really attracted to reinforced learning and DQN, which definitely would have exceeded the introductory nature of this course. I would really appreciate some advice from you regarding what class to take next, regarding these topics - ideally taught by you or available at "coursera".
Having said that, allow me once again to show you my appreciation for this class and for your passion and effort - Thank you!
Sincerely Yours, Adrian
By Spike J•
The first thing programmers say when I mention Machine Learning: "I want to do that, but I can't do/don't want to do/am afraid of maths". Well, ML concepts are intrinsically linked with mathematics, no getting around it; this course, however, takes the intimidating parts and breaks them down into easy step-by-step explanations. It's as close to making the calculus simple as anybody will ever get!
I came into this course after being out of formal education for a few years, but the intuitive manner in which the videos are presented meant that it all came flooding back very easily. The assignments consistently avoided being either too frustrating to complete or too facile to educate, each usually taking a few hours to solve and often producing that 'eureka!' moment when everything clicks together.
Additionally, resources available are top-notch; learners are advised to look at programming assignment tutorials after completing their own assignments for additional knowledge regarding the vectorisation of implementations.
(Quick advice for those with a science/mathematics background: for the programming assignments, don't make my mistake of sticking to the formulae with complete rigidity, especially where matrix multiplication/transposition is involved! Often you'll have to manipulate two matrices of incompatible size. Don't worry about transposing/reversing their position to make them fit, if it's what the algorithm demands in real terms. I know it's heresy, but hey, we're not in the theoretical world anymore!)