Great Course Overall
One 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.
This is very intensive and wonderful course on CNN. No other course in the MOOC world can be compared to this course's capability of simplifying complex concepts and visualizing them to get intuition.
by Weinan L•
This may be the most enjoyable course in the whole series so far. It is intuitive and fun, and the results are tangible. Very practical.
Inevitably, due to the complexity of CNN, we have to rely on frameworks such as TensorFlow/Keras, etc. to do the coding, and they are covered in this course as well. Not very deep, but sufficient. Wish they may pick PyTorch in the future as well.
The notebook and grading systems sometime have issues though. You may think you submitted the right data but actually the server side won't think so. Hard lessons learnt are: a) save the original ipynb before coding, so you can always rollback in case notebook messed up; b) save a checkpoint before submit, this will force saving and ensure you submitted the latest data, otherwise, it may submit incomplete data - some cells may still have very old data even you modified a lot; c) open anther local Jupyter notebook to experiment and mess around, with interactive TensorFlow exception, but pay attention to the expression with random sequences, when you call eval() the second time, they may have totally different value even you reset the seed upon each cell, eval() will invoke your expression again which will consume more data in the random sequence; d) never use iPad to complete your noetbook coding, :-).
by Alan L V J•
Este curso introductorio es estupendo para aprender desde cero sobre convolutional neural networks.
Professor Andrew Ng, makes very comprehensible the content of the course.
-He decompose every element of CNN. Convolutions, 1x1 convolutions and pooling are very well explained, then by yourself can derive the dimensions of the output after applying these operations.
-He make notes on the fly for derive equations and explain the purpose of the equations. For me is much better that only show slides, because makes give me the oportunity to think of the equation before is show.
-Professor give you Intiition in every topic.
- He Make several examples of modern architectures of CNNs.Always write down in detail the architectures.
-Clear notation, uses the same notation in programming exercises
-Programming exercises are the best documente ones. This makes relatively easy to implement the exercises. If struggle with operations, they provide links to the documentation necessary.
Was an amazing course.
Althogth I always think CNNs were some what difficult and sometimes tedious topic (because of convolution and pooling arithmetic, and the use of "volumes" instead of matrices), this course make all clear and natural.
Thanks to the instructors for they hard work.
by Neil O•
If you're not particularly interested in image identification and recognition, there is still reason to do this course. CNNs are amongst the most advanced areas of DL and understanding the concepts can help develop intuition about how to solve DL problems in other domains. I greatly enjoyed this course. As with all of Andrew Ng's courses, the explanations are clear and help develop intuition. This course seems to have more references to academic papers than the others and Andrew is encouraging and helpful in guiding the student to the accessible and relevant sections of the papers.The exercises are instructive and not too challenging. Most of the challenges I had were due to my own programming errors and occasionally an error in how the exercise is set up [make sure to use the most recent version of Jupiter notebooks]. One exercise in Week 4 (Neural Style Transfer) does assume more Tensorflow knowledge than the other exercises. Recommend brushing up on Tensorflow before trying this and using the discussion groups which are helpful for debugging suggestions.
Coursera 온라인 강좌 딥 러닝에 정말 감동 받은 점:
#1 정규 대학교나/대학원 가지 않고 온라인으로 싸게 배울 수 있다.
#2 아무리 어려워 보이는 학문이더라고, 관점을 정확하게 설명해주면 누군든지 쉽게 배울 수 있다.
즉 E=MC^2 같은 공식은 누구나 발견할 수 없지만, 누구가 쉽게 배울 수 있는 것이다. 학생이 모르면 선생의 잘 못이다!
#3 지식은 투명하게 공개되어야 한다. 공개되지 않는 지식은 특권계급을 만든다.
#4 학교를 떠난지 그렇게 오래되었지만, 여기에 다시 공부해보니 다시 청춘을 느끼게 해준다.
“This is a record of your time. This is your movie. Live out your dreams and fantasies. Whisper questions to the Sphinx at night. Sit for hours at sidewalk cafes and drink with your heroes. Make a pilgrimage to Mougins or Abiquiu. Look up and down. Believe in the unknown for it is there. Live in many places. Live with flowers and music and books and paintings and sculpture. Keep a record of your time. Learn to write well. Learn to read well. Learn to listen and talk well. Know your country, know the world, know your history know yourself.
Take care of yourself physically and mentally. You owe it to yourself. Be good to those around you and do all of these things with passion. Give all that you can.Remember, life is short and death is long.”
– Fritz Scholder
by Akash B•
I would highly recommend this course as learning from basic stratch to deepen your understanding about the subject topic, Although i found it very hard to solve the assignments because i was not on the track of tensorflow.
I would also recommend to take cs20 class by stanford which teaches tensorflow very well or you can refer the youtube videos for tensorflow also. The key thing is whatever you study you have to keep coming back to look at the assignments what you've done , play with it, understand it, and see how you can relate this on theory.
The video lectures is pretty striaght forward, not much mathematical jargon, but its intermediate level of sort, but i recommend to watch atmost 5 times every video if you didn't get through once, don't rush, take pen and paper and also write. You can also refer medium articles which are well curated from this course and provides a nice summary of overall what you've studied.
And if you got more time, just try to read some good papers. Thank you.
by Gustavo E P•
This has been the most exiting course within the Deep Learning specialization by deep learning.ai. It provides all the basic theoretical and practical knowledge to get you started right away with CNNs and its applications in computer vision, including state-of-the-arts algorithms for image recognition, face detection and neural style transfer. With the help of the well-designed and challenging programming assignments you can practice and reinforce what you have just learned by doing it yourself, while becoming familiar with popular NN frameworks such as TensorFlow and Keras. I strongly recommend to spend some time reading the papers and articles referenced in the lectures as those provides additional insight and background to the course material, as well as reviewing and experimenting with the code available from the course assignments and also from GitHub. All in all, another excellent course by Prof. Andrew Ng and his team!
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 :)