I think that this course went a little bit too much into needy greedy details of the math behind deep neural networks, but overall I think that it is a great place to start a journey in deep learning!
Very structured approach to developing a neural network which I believe I can use as foundation for any project regardless its complexity. Thanks professor Andrew Ng and the team for their dedication.
By Rajavel K•
Andrew Ng has the best explanation for neural nets, when compared to so many online resources I have saw upto this time.
By Gurudutt N•
Such a complex subject made look like so simple. Every concept is covered in detail. Thank you Andrew Ng.
By Benito C•
Very hard work in designing the notebooks so the pupils's learning processing is maximized.
very clearly explained and can't find anything better, loved the intuition part the most.
By Aman K S•
The most comprehensive and illustrative Machine learning course I could get through.
By Suddhaswatta M•
Converting Mathematical equation to Python code are very well explained !!!
By Lakshya k•
Lovely course and it will surely boost my career. Everyone should do this.
By Md. S R•
An excellent course to start your journey on A.I. and Deep Learning.
By Wasim Z•
Thank you so nice of you Andrew Ng, you are one of my best teachers
By Anastasiya L•
Easy to follow class, breaks everything down to small simple steps.
By Suciu V t•
If you are a beginner this is the best course you can find
nice course from the base of the deeplearning
By Chinmay H•
Andrew Ng is an awesome instructor!
By Weiyi S•
it's not bad however too easy
By JITENDAR K•
best learning material
By Abhinandan A•
By Ivan M•
The course is fantastic, but I did Andrew Ng's Machine Learning course before and I miss some things here.
First, this course is more direct and faster than the other one and there are some basic concepts that are not explained here, so I recommend doing Machine Learning before. Also, I miss the little questions inside each video (especially the ones that ask about ideas that are about to be explained and make you think a little more). They have been included in the test at the end of the week, which has now 10 questions instead of 5. I also miss the lectures after the videos, which helped with the hardest concepts. The whole Machine Learning course seemed more inspiring than this one. As a little detail, I preferred the sans-serif font in the Machine Learning course slides than the one used here.
The other thing I don't like are the Jupyter notebooks. I get the point and they should be a good tool to code and learn and to evaluate the exercises, but I prefer the pdfs and the downloadable programming files. In the Machine Learning course you had a lot of structured Matlab/Octave files in your computer that you could then reuse easily. Here you have a document mixing text and code and it is not clear where all the code files are or how to download them for later use, Also, I like to program in my own environment, with my preferred text editor (with autocompletion, colors combinations, keyboard shortcuts...). Here you must use a basic online editor that also is hard to navigate through using the keyboard, because the text parts are also editable and selectable and you must jump from one part to another to move yourself through the document. And you need to do so, because your screen has a size and the explanations and other functions are long and they are far away from the code when you start programming. It's a very awkward way of working.
The programming exercises are very guided and you must just fill little snippets of code, which is not hard to do. They must "cheat" you giving you half the info you need for a formula to make you think a little more or it would be too easy, but the whole structure of the program is done and, although everything is very detailed in the comments, the fact that you don't program all of it doesn't help you understand the key concepts explained in the slides.
You must know some Python to be comfortable when coding, because there is no explicit material about the language syntax (in the Machine Learning course there was a video with a quick tour about Matlab/Octave and more optional short videos to learn the basics in less than one hour),
Anyway, the course materials are great and updated, and the derivatives role in the learning process is here explained clearly (I didn't understand its importance in the other course). I love the interviews with the Heroes of Deep Learning, which give you an insight of how things are now and how they have been before, explained by the poeple who invented the functions and tools we use today.
Andrew Ng is a great teacher.
By Stephen K•
Tying your shoelaces is easy...if you have two hands. Some reviewers say this course is easy too. But you will be confronted with multiplying matrices and some differentiation. More than anything, I found it difficult to keep track of the different matrices, and particularly their dimensions, which if you do this course you will see is vital. There's also a lot of notation to overcome. You will need to understand some python, particularly how to extract values from tuples or dictionaries, and being familiar with user-defined functions will also help. So, easy?
The course starts with a 0-level neural network and builds up to a deep neural network. It's a nice way to easy yourself into what is clearly a complicated subject. The downside (at least for me) was that each week I was hit by yet more new notation, and I felt that some of what I'd been taught in the previous week (and was clinging on to by my fingertips) was almost redundant. It made my head spin. Nonetheless, I persevered and passed the course.
So, I've gained an appreciation of approximately how a neural network works. I could not build a neural network from scratch without massive recourse to my notes and assignments, and plenty of time. Is this how people build neural networks, or are they using libraries to make the job much easier (Tensorflow, Keras, etc.?) Or, can I use the final assignment as a template and apply this to many problems? I don't know.
I thought the notes were quite poor. There is a mountain of writing on most slides at the end. I scribbled more notes to explain Andrew's notes, otherwise a week later it'll be clear as Aramaic. However, Andrew repeats and explains well what's happening. He has a calm and reassuring manner, which I really liked.
People have complained about assignments being too easy. Not for me. I thought they were a good way to reinforce the lectures, and provided a means to see how a neural network could be built in practice. The assignments are more like lectures with your participation than traditional assignments. This is a plus point, in my view.
Finally, I'm still blown away how just a 'simple' logistic regression with sigmoid activation function can predict cats from random images so well. I've done the course, but it's like magic!
By D. R•
Overall the courses in the specialization are great and provide great introduction to these topics, as well as practical experience. Many topics are explained clearly, with valuable field practitioners insight, and you are given quizzes and code-exercises that help deepen the understanding of how to implement the concepts in the videos. I would recommend to take them after the initial Andrew Ng ML course by Stanford, unless you have prior background in this topic.
There are a few shortbacks:
1 - the video editing is poor and sloppy. Its not too bad, but it’s sometimes can be a bit annoying.
2 - most of the exercises are too easy, and are almost copy-paste. I need to go over them and create variations of them in-order to strengthen my practical skills. Some exercises are quite challenging though (especially in course 4 and 5), and I need to go over them just to really nail them down, as things scale up quickly. Course 3 has no exercises as its more theoretical. Some exercises have bugs - so make sure to look at the discussion board for tips (the final exercise has a huge bug that was super annoying).
3 - there are no summary readings - you have to (re)watch the videos in order to check something, which is annoying. This is partially solved because the exercises themselves usually hold a lot of (textual) summary, with equations.
4 - the 3rd course was a bit less interesting in my opinion, but I did learn some stuff from it. So in the end it’s worth it.
5 - Slide graphics and Andrew handwriting could be improved.
6 - the online Coursera Jupyter notebook environment was a bit slow, and sometimes get stuck.
Again overall - highly recommended
By Halil D•
Learning from reliable resources is crucial. Andrew Ng is ranked #3 in the field of Deep Learning, in terms of the number of citations, on Google Scholar. Therefore, being able to learn from a person like him is an extremely valuable chance. I learned a lot, but would like to tell the things that should be improved:
• There are lots of redundant repetition. It kills the flow and creates a serious mess
• Assignments are only focused on finding a few missing lines in the cells. Therefore, it cannot evaluate whether you "understand the big picture" and "can build a model on your own" or not
• Sometimes terms/concepts are not clearly explained OR not explained at the right time. Example: A new term "activations" comes up in a video, and you wonder what is that. However, you learn what actually it is, maybe in the next video by your own inference
Advice for learners: Before starting to a programming assignment, download the whole folder of this programming assignment (you cannot download a folder, but you can download it file by file and create the same folder with its original structure) and work on your computer. By this way, you can prevent the "kernel disconnection" risk of the online version, and also replace the notes within the "Markdown" cells with your own summary. When you complete the programming assignment, you will just need to copy the codes within the "Code" cells to the online version, and then submit
By Shrihan D•
Fantastic course, great for newbies to get into machine learning; however, some prior experience with basic statistical learning algorithms (linear regression, logistic regression), experience with basic linear algebra (vectors, matrices, matrix multiplication), and experience with multivariable calculus (chain rule, partial derivatives) is required to extract as much as possible from this course. For the programming exercises, it is required to know the fundamentals of python programming (OOP is not necessary and the course teaches you NumPy as you go along). The programming exercise in the final week went a little bit over my head with the caching of forward propagation values, but it was nevertheless a great course. On to course 2!
By Akif E S•
I think while writing helper functions, expected outputs' should be same as our test and train data. It causes some misunderstandings. I know the fact that when we don't use assess' it will take time to see output but I think that this is a sactificial thing.
And also for the students that know calculus well, optional videos' can be much more detailed like dZ computation or the concepts of deep learning via calculus.
Except these two reviews, I think this was a really good course. I really thank you to you who prepared these courses.
My best wishes.
By Nowroz I•
I loved this course as it explains the intuition behind the methods used in deep learning. As I have no problem with Calculus and Linear Algebra, I was able to calculate the derivatives by myself. People who are not accustomed to working with NumPy may find the assignments overwhelming. Hence, my suggestion will be to learn the NumPy (only the basics will do) before starting this course.