Excellent course, highly mathematical overview of how introductory machine learning models work. Thanks to Andrew Ng for putting together a lot of great material and challenging quizzes and exercises.
Loved the course. Andrew Sir explains the intuition behind the concepts really well. Excited to continue with the rest of the courses by him on my way to becoming an AI Engineer.\n\nThanks a lot, Sir!
por 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!
por 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!
por 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.
por 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.
por 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.
por 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.
por 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.
por 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
por 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!
por 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.
por 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
por 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.
por 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.
por 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.
por 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 !
por 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.
por 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
por 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!)
por Arpit S•
This course is brilliant. And yes just because its almost a decade old course doesn't mean the information is outdated or not useful. Infact, it is a complete opposite. This course is legend. At first I had the same feeling as should I start with this course... as many people recommended doing this before any other course. And it turns out that they were indeed 100% right.
The best thing about this course is that it teaches us the theory and many useful techniques in understanding the intuition behind many different machine learning algorithms. And yes this course uses Octave/Matlab as the language for programming assignments. Now many people will think that aren't they quite old and not used much anymore ( Octave ), but here's the thing... that this course teaches us such a good understanding behind these algorithms and the intuition behind them that the language we'll use won't really matter that much. And you can easily understand how versatile it is to implement those algorithms in any other languages. And also Octave is easy to learn. It's a prototype language ( I think? ) and so there shouldn't be any trouble understanding it, and if you know any other language already, then it will be walk in a park.
Finally, I would just like to say is that the video lectures in this course are really really really great. You will learn a lot from these videos, so you should definitely enroll this course if you're planning to do so. As the knowledge value in this course is absolutely epic!
por Kevin C•
I highly recommend all of those who have data-related background, are extremely interested and fascinated about the topics of machine learning, and would like to start building their career in this field to attend this course as their first step. Professor Ng is indeed very knowledgeable and is also a great lecturer. Throughout this course he not only well introduced and led me through all the basic concepts and techniques of machine learning, but also illustrated all the important and practical tips for realizing a real-world project, which are aside from the techniques and can be easily ignored, but may save you a lot of time and efforts and guide you much more easily to a more proper direction of achieving your objective.
Some people may find the concepts and programming assignments within the course more at entry-level and very simplified to understand and complete, while I think the course is still extremely helpful to me, as 1) it builds a great structure with integration of all necessary techniques under the umbrella of the topics of machine learning, which makes it much easier for self-trainers to extend their study above and beyond the course 2) it provides a completed set of background and extensive materials (e.g. Professor Ng's Stanford course) for people like me to deep dive their study under each topic.
All in all, I really appreciate Professor Ng and Coursera to offer this fascinating course, and thankful to be involved in such a great learning experience!
por William Z•
This is an excellent course by Prof. Andrew Ng. Learning from of the best in the industry has been truly an eye opening experience for me. Having a background with some level of software development experience, I have chosen to go with this course in particular (out of the many other courses that's available on the web) because I was motivated to not only understand how to use machine learning tools, but to get a concrete grasp of the theory behind machine learning algorithms, including concepts and intuitions. Short of going back to Uni to get this experience, I know there was a good chance Prof. Ng. would provide a similar academic experience in the course he provided.
An added bonus is that Prof. Ng also would provide advice and suggestion based on his own industry experiences leading engineering teams at world renowned internet companies. This reminded me a lot about the great academic teachers that I have had in my former years of university education (which I found to be invaluable). The landscape of machine learning is rapidly changing and evolving.
I feel like this course provided a solid foundation that grounded many fundamental concepts and motivations of machine learning in a very digestible way for its students. I would highly recommend this course to anyone interested in machine learning who not only wants to use the tools (as there are many guides out there already), but also wants to understand the deeper insights into these kind of technology.
por Sergey G•
Great hands on exercises and very clearly explained material. Was a bit slow for me I had to watch it at 2x: perhaps the simplest maths should be factored out into a separate mini course and assume a certain background for this one. The course is rather broad, though I was surprised not to hear once about Bayes or Markov (n-grams, HMM etc.). It might be a good idea to create a specialisation consisting of a separate basic maths part, all the methods presented here, methods applicable to bioinformatics and NLP too. And to top it all of Computer Vision. I assume the by-pixel techniques used in this course were just illustrating the points, as I would expect Gabor wavelets or something to reduce dimensionality and save ourselves from sliding windows (and rotations as a bonus). I am not sure if in this specialisation I would have liked to have all "science" points (how to run an experiment analyse results) separate from "how to implement an algorithm" and "why the algorithm works" or mixed in as this course does. I think either works. Some navigational infrastructure on coursera would be awesome (wiki style opportunities to jump around between "aspects" etc.). Finally, some summary notes would be very useful. When I do decide to implement any of this I will have to look through the exercise pdfs which are a bit long and at my code - perhaps, at the end, when you know someone has completed the exercises. Otherwise, the exercises are awesome.
por Sotiria K•
This class taught me a lot of the nuts and bolts of machine learning, and by the end of it, I am much more confident in building machine learning algorithms, or joining a team in doing so. The instructor did an excellent job of explaining things slowly enough and in bite-sizes. The programming assignments were very tough (especially because I have very little knowledge of programming languages and Matlab) but very valuable in the end!
A couple of things I did wish for were: 1) A module or part of a module talking about bias of input data. I've heard a lot of about the effects of bias in data and how that can affect your machine learning algorithm output a lot and I wish the instructor told us his perspective on this. 2) Even though I probably would have dreaded how tough this would be, I still think it would be a huge value if we had a real life machine learning project we had to work on towards the end of the course from start to finish, from a fictitous client like Amazon or SalesForce etc. 3) I read about how machine learning programmer interns wrote about their experiences at the job and how they were so focused on getting the algorithm performance high but a lot of their job revolved around understanding the industry they were working in and what their company needed, because a perfect algorithm that has no value for the company is useless. So, I wish towards the end the instructor discussed this more to prepare us for a job.
What a great course! I really loved the pedagogical arrangement of this course. Skipping optional but complicated proofs was a smart move for some maybe not so for a select few topics but I realize that they were necessary to make this class as interesting as possible, and interesting it really is, without a doubt.
One little complaint I have is that while some of the readings earlier in the course were a bit redundant, I definitely did yearn for the readings on some important topics of SVM, k-Means, PCA and recommender systems.
Also another very small gripe of mine is that a lot of the programming exercises had a lot of boilerplate. That definitely was a good thing for smaller things but I still feel like some more work on our part in putting together the exercise as a whole vs just plugging in code in predefined sections could help me get a bit more insight. I say this as I found myself rushing to the next week's content immediately after I finish just the required exercises, although that may be an error on my part. The optional exercises definitely do make up for my needs thought without getting in the way of progress which is definitely good.
All in all, an absolutely amazing course. I realize that I can't become an expert just by attending one course but I also believe that I have taken a huge step in the right direction by taking this course. Thank you Professor Andrew and the Coursera Team for this amazing experience.
por Karl N•
An excellent course that provides both a good overview of machine learning technology and practical exercises that help reinforce the technology. I found it a challenging course as it requires a good knowledge of vector and matrix mathematics, Octave/Matlab programming and some mathematical concepts that I've not used to this extent. The work is ably assisted by an excellent group of tutorials and mentors which help ease what was quite a steep learning curve for me. I can highly recommend this course to learn what ML is about - don't let concerns about the level of mathematics or programming stop you from at least attempting this course. You will need enough free time to view the lectures and undertake the programming assignments and the course timings are pretty accurate, although a couple of the programming assignments took longer than expected due mostly to debugging my Octave code (often stupid errors that took me time to find and test).
In conclusion the course is an excellent balance of theory and practical work to see if you do actually understand what you've learnt in the lectures. Some basic skills in programming and mathematics (especially summation and vector arithmetic) would be of use, but this knowledge is not assumed and you should be able to complete the course and greatly expand your knowledge of machine learning principles, Octave/MATLAB programing and vector arithmetic, all in one course - bargain!