Great course for kickoff into the world of CNN's. Gives a nice overview of existing architectures and certain applications of CNN's as well as giving some solid background in how they work internally.
Great Course Overall\n\nOne thing is that some videos are not edited properly so Andrew repeats the same thing, again and again, other than that great and simple explanation of such complicated tasks.
by Sean O•
Good set of courses on Deep Learning. Some small complaints / recommendations:
- Courses don't teach enough Keras & Tensorflow syntax to be completely stand-alone. If you take this course, you won't really be able to build your own DNN's unless you also take a separate Keras / Tensorflow course.
- Links to Keras documentation are broken -- they now take you to the general Keras homepage, not the specific command's page.
- In later courses, Andrew Ng's lectures are not edited. Starting around the 4th course, you start hearing Dr. Ng stop and repeat portions of the lecture, presumably intending the first attempt to be edited out in the future. Usually this is easy to ignore, but in some cases he repeats 30-60 seconds of lecture, which can be confusing.
- In the last course (sequence models), the text captions of Dr. Ng's lecture have a lot of mistakes, which is a little ironic for a course on speech-to-text
by Tim W•
Felt like I learned a lot about CNN. Perfect for introductory class I think. Applications include facial recognition/one shot learning. style transfer(my personal favorite) and object recognition/bounding box determination. I feel like it's perfect for me, having no previous experience with CNN(although convolutions in general are quite familiar to me). This is definitely for those with no previous experience with CNN or just small/moderate amount of it. You code up all the components necessary for CNN forward prop and a few pieces of the back prop to get an idea of what involved. After this the projects are in TensorFlow. I have no previous experience in TensorFlow but was able to do the exercises without to much difficulty. That said, reading some supplementary tensor flow materials would probably be helpful as I'm still a little hazy on it.
by Manhal R•
Hands on exercises are fill in the blanks type. To actually learn from them I suggest after submitting the assignment and download the notebook. Use to refer while you build everything from scratch yourself.
Content wise its great. Had a hard time understanding Week 3 content, Week 4 is fun as it teaches you face recognition and neural style transfer, both are explained clearly so wont spend much time rewatching the vids.
Week 1 is really very important and very basic. I suggest even after completing the specialization do refer back to these videos so that everything gets installed perfectly in you.
Week 2 is also a bit time taking to learn for newbies as throws plenty complex models on your face, right after getting an intro from Week 1! I suggest reading the research papers. I read my first research paper from here only.
by Bruce M•
Really enjoyed this one on Convolutional Neural Nets. Takes me back to a number of problems I worked on in my days in "image understanding" / computer vision. Really interesting to see how a deep learning approach contrasts with some of the early attempts at explicit image feature extraction and symbolic reasoning that we were doing back then. And yet, many of the same core concepts are woven throughout the deep learning approach -- image convolution, edge detection and segmentation, "area of interest" (AOI) operators multi-resolution feature spaces, ... - all of these are still embedded - now implicitly - in the layers of the networks. And I plan to do a bit more experimentation with "Neural Style Transfer" to satisfy my creative side. THANKS!
by Nishant M K•
Great introduction to Deep Learning for Computer Vision! The lectures go into details of certain keystone algorithms in CV, and Andrew does a really great job of explaining these concepts. One feedback I would have is: many of the lecture assignments contain "mundane" in-between tasks, like normalization by 255.0, accessing outputs of certain layers, plotting code, etc. The code snippets for these are already provided and we don't have to implement anything. But I think it is valuable to learn how to write this "glue code". I think it might be useful for a future iteration of the course to have an assignment dedicated to having students code up just these "glue code" pieces. Writing code out is always more instructive than reading code! :)
by Yix L•
This course is great and the assignments are more challenging and helpful than the previous courses in the specialization, and the assignments are practical a lot to the real-world applications. However, while I was doing it, even though it pushes me to think more and spend more time on it, I still have a sense that I don't have a global view for the assignments, in another words, if there is no elaborate written function architecture and pre-filled code, I have few clue on how to start coding an application in the assignment. Overall, professor Andrew's courses are always understandable, I think it is necessary for me to read more papers referenced in the course and assignments and then come back again.
by Greg S•
The course content is fantastic (YOLO, CNNs, Neural Style Transfer). The lectures are helpful. I would like to see a bit more help using Tensorflow for those of us who are new to it (optional lectures, links, etc).
The only real negative is the flaky behavior of Jupyter notebooks. More than once I have gotten results that turn out to be incorrect, even though my code is correct. The fix is to restart the kernel, sometimes it takes several tries. This is confusing and frustrating. I wasn't a big fan of Jupyter notebooks before this course and its behavior has done little to change my mind. I consider Jupyter notebooks to be separate from the course itself, so I'm still a big fan of the course.
by Ricardo S•
Fantastic course, extremely well taught by Andrew, with targeted assignments, that add to the learning experience by making the theory concrete. I particularly liked the "ongoing investigation" tone of this course, with the abundant references to papers, explanation of the evolution of convolutional networks, and hints at possible improvements. The motivating use cases are also very well thought. I recommend this course for any aspiring data scientist, even if her field is not that of computer vision.
Unlike other courses of the deeplearning.ai specialisation, this course does not have interviews with "heroes of machine learning", that would have been a nice cherry on the cake.
by Francis S•
Previously, I have taken online classes before in Machine Learning by going the cheap route (Udemy, blogs, youtube) and you get what you pay for. Andrew Ng explains it the most thorough, easiest, and simplest way possible. Presentation material is very understandable. Great class for new machine learning learners. Highly recommend it. The only downside is that the programming exercises are little too easy in my opinion. I feel like the best way to get your hands dirty is to do actual projects (do your own projects). These lectures are good for intuition and background of different types of Neural Network architectures. Other than that, Great material. Thanks Andrew!
by José D•
This is course 4 of the Deep Learning Specialization. Things get harder in this stage as we go through Convolutional Neural Networks (CNN), that are more difficult to understand than "simple" neural networks (Course 1 now looks easy to me...). Well-designed programming assignments along with nice course materials. You will understand how work image recognition in general, which is used for many problems like: image classifiers, face verification/recognition, object detection in real-time (YOLO algorithm) and even artistic creation (Neural Type Transfer). An important course that is worth the time and effort. Iv' learned many things.
by Glenn B•
Great topics and discussion, however the lectures started to gloss over the details of implementation which were left entirely to the exercises.
Use of Tensorflow and Keras required more background to clearly do the exercises than provided in the tutorials or examples.
I get the dynamic aspect of writing the lecture notes in the videos, however the lecture notes should be "cleaned up" in the downloadable files (i.e., typos corrected and typed up). Additionally, the notes written in the video could be written and organized more clearly (e.g., uniform directional flow across the page/screen rather than randomly fit wherever on the page.
by Charles M•
Excellent material taught by the best, Andrew Ng. Very relevant to my interest and career goals. The object detector section was especially helpful for my work at a small startup. The material is top notch and more detailed of what I got during my masters in computer science. The code examples and assignments are very fun and rewarding. There are some slight glitches during saving and submitting assignments, so i always made a backup copy. Other than that, the course was great. I skipped directly to convolutional neural networks since I am already familiar with deep learning. However, i eventually wanted to finish all 4 courses.
by Infa t•
Great diving into the cutting edge computer vision algorithms (such as YOLO), the state of the art CNN architectures(ResNet, VGG, Inception Network, Siamese Network), with a variety of applications of this architectures and algorithms, such as self-driving system, neural style transfer generator and face recognition and verification! Very simple and understandable submission of very hard to read and realize machine learning papers, perfect explanationof the cutting edge machine learning algorithms, architectures and approaches used in this field. I'm so pleased with the quality in this course! It helped me VERY MUCH! Thank you
by Artem M•
This course is not very deep mathematically (which is not very good. Again, additional material on the derivation of gradient descent for filters could be provided) but it is deep learning, so it is expected. On the other hand, the contents are just wonderful. It was my first exposure to computer vision/CNNs, and I can say that the introduction here is absolutely the best. It covers a lot of topics (new and not so new). Finishing this course will make you well aware of how convolutional NNs work and point you towards particular areas depending on your interests. By far the best introductory course in this specialisation.
by Noor A•
Great introduction to the topic. For people who would like a case study oriented course this is it. The amount of content is also very impressive even if slightly dated. I have spent almost 2 years actively doing research and working with CNN's but the course still had a lot to offer in terms of content. It would've been the perfect starter pack if there was a section on image segmentation. Maybe there could be a complete course on Ng just covering case studies and research papers. Regardless attending this course is a must. The assignments are well curated and I can image will be extremely forgiving towards beginners.
by Guy M•
This is a great introduction to what CNNs are and how to implement them in a framework. My one almost-gripe is that when it comes to the assignment it can leave you floundering because there is minimal coverage of some of the requisite knowledge of running a NN using the framework. I'm all for making students work things out, but in one or two ways it was just a bit too high of a step to expect a student to climb. I'm talking here about the steps required to actually run a NN and then make a prediction. By contrast, several of the much easier steps might have a hint such as "You might find the ... function useful".
by Zhiming C•
This is a very good course. It contains quite a lot important CNN topics and models, which are state of art and very popular nowadays in industry. Although the contents are only aiming at some introductions of these topics, we can still get a very good impression of what it is and how it works. The exercises are relative simple, because to implement a real network and to train it will take quite a lot time. I think if there would be a implementation of e.g. model in detail, we can be more familiar with the contents. All in one, it is a very good course and covers a lot of useful models and information!
by David R R•
This is a very interesting and functional course. Week 1 gives you the basic ideas behind CNN and it is very easy to follow the videos. The next weeks gives you what are under the hood in object detection systems, other CNN architectures, style use... I recommend this course
Este es un curso interesante y sobre todo funcional. La primera semana te enseña las ideas básicas detras de un CNN ademas de que son lecturas faciles de seguir. Las siguientes semanas te enseñan los "secretos" de los sitemas de detección de objetos, otras arquitecturas de CNN, uso artistico de las mismas... Recomiendo el curso
by Sourab M•
One of the best courses for learning deep learning concepts for computer vision. It provides a deep understanding of convolutional neural networks and the various architectures used by state-of-the-art models. We get to learn various concepts of computer vision - image classification, localization, image detection, face verification, face recognition and neural style transfer. Ii would have been better if course also covered image segmentation. We get much needed hands-on through interesting assignments and along the way we get to learn Tensorflow and Keras. Thank you for this great course :)
by Akash M•
When i started out with deep learning, i found Course 4 to be the most intriguing part of this specialization. And i was not disappointed. I already knew the scope of CNNs, but to see them in work from up close was a treat. This course teaches you the fine intricacies of Convolutional Neural Network. It also showcases the working of some really famous models that were built in the last few years. I hope this course can be extended to include the applications of CNN in NLP as well. This course is a must for budding Deep Learning Researchers. I cannot wait to apply the learnings in real life.
by Ayush T•
Like the other courses of this series, this course is really good. In this tutorial I have not only understood how to implement things but I have also learnt what's the math behind those things. It is important at-least for me because it allows me to do more experiments with CNN's or in general Neural Networks. The thing which I like most about this course is its programming exercises.
I recommend this whole series to those people who want to learn some advance machine learning stuff like GAN, variational autoencoders and Reinforcement learning. This series will help as a strong foundation.
by Yilun Y•
Overall an awesome course, however, it somewhat lacks some important topics and models such as SSD, Faster RCNN, mask RCNN, etc which are even more frequently mentioned in literature and applied in real world projects. This course really sparked my curiosity and passion in deep learning, I actually learned the models mentioned before by reading the original paper and many useful blogs. This is a long but rewarding journey, I would also like to see more topics be covered in this course and let more people know how these state-of-art models work and how they really change the world.
by Xiang J•
I really like this course, because it not only taught me the exciting new topics that I always want to learn, such as object detection algorithm and neural style transfer, but also it gave a solid introduction to the concepts of convolution. The assignments are great, it is fun to do and it also helped me more concretely understand the materials of main course. As to further improve the course, may be it would be nice to build a whole end-to-end pipeline including training the main convolution model in car detection as I know in Google colab even public users have access to GPUs.
by Mukund C•
Loved it!! Loved it!! Loved it!! I wish there was a little bit more engagement from mentor side as well as updates on the coursework with the latest developments in the object detection field. I also wish that there were a little bit more involved programming exercises, maybe one in "training" where one has to label objects and "train" a neural net. One of the things that I missed in the course is an explanation of the Neural Network architectures and why they work - e.g. the VCCG-16 or Inception Network - for example. Maybe one has to read the papers to understand them?
by Shankar G•
This part of the CNNs course in DL was awesome and long enough. It started with foundations of CNNs, where the concepts of CNNs layers was made very clear. Programming assignments helped understanding the layering activation properly. The good part was DeepCNNs case studies explanation with its pros and cons, plus the practical advice for using ConvNets. Also this course provided few papers applications like object detection, face recognition and neural style transfer which was amazing. All the quizzes and programming assignments refreshed the concepts in a good manner.