Andrew Ng is famous for his Stanford machine learning course provided on Coursera.
In 2017, he released a five-part course on deep learning also on Coursera titled “Deep Learning Specialization” that included one module on deep learning for computer vision titled “Convolutional Neural Networks.
”This course provides an excellent introduction to deep learning methods for computer vision applications for those practitioners that are already familiar with the basics of deep learning.
It does not focus on too much math and does not include any code.
Instead, it is designed to develop intuitions for the main techniques used in the field.
In this post, you will discover a breakdown and review of the convolutional neural networks course taught by Andrew Ng on deep learning for computer vision.
After reading this post, you will know:Let’s get started.
This tutorial is divided into five parts; they are:Andrew Ng is a machine learning researcher famous for making his Stanford machine learning course publicly available and later tailored to general practitioners and made available on Coursera.
He is also the Cofounder of Coursera and formerly Director of Google Brain and Chief Scientist at Baidu.
In 2017, he launched a new website called deeplearning.
ai that provides deep learning training for general practitioners (e.
developers) with courses available via his Coursera platform (that requires a subscription).
The complete course is divided into five sub-courses; they are:The courses are in video tutorial format and are presented by Andrew with the same hands-on style as his famous Machine Learning course.
The course is designed for developers who are beginners in the field of deep learning.
Convolutional Neural Networks Course BreakdownOf note is the deep learning for computer vision sub-course, titled “Convolutional Neural Networks.
”Convolutional Neural Networks – Computer VisionThis course is designed to teach developers how convolutional neural networks work and how to use them for standard computer vision tasks.
This course will teach you how to build convolutional neural networks and apply it to image data.
Thanks to deep learning, computer vision is working far better than just two years ago, and this is enabling numerous exciting applications ranging from safe autonomous driving, to accurate face recognition, to automatic reading of radiology images.
— About this Course, Coursera.
It is divided into four weeks; they are:Each week is divided into 10-to-12 topics, each covered in a short video lasting a few minutes to no more than about 15 minutes.
Most topics are presented in a practical manner with very little math.
What little math that is included is focused on topics such as calculating loss functions or calculating the number of parameters (weights) in the model.
In addition to the lack of math, the course also does not present code, and instead focuses on helping the viewer develop an intuition for the techniques discussed.
The first week is dedicated to introducing the main type of neural network used for computer vision problems: the convolutional neural network or CNN.
Topics focus on how convolutional layers work, filters, padding, strides, as well as the related pooling layer.
The second week focuses on important milestones in developing effective CNN models, such as LeNet for digit recognition and a suite of models developed for ImageNet, such as AlexNet, ResNet, and Inception.
As each milestone is discussed, the innovation of the model design is described in a way that explains why the model is effective and how the technique can be used more generally.
The week ends with data preparation, including data augmentation and transfer learning.
The third week focuses on object detection, introducing the simpler problems of image classification, image localization, and landmark detection.
These are the ‘killer-apps‘ of deep learning for computer vision and the important sub-techniques of the YOLO method are introduced step-by-step and built up into a complete working system.
Finally, the last week ends with face detection and recognition, building up the techniques required for such a system, including one shot learning, siamese networks, and a suitable loss function.
The week is divided into two parts and the second part focuses on neural style transfer, a technique that although is purely aesthetic, is a lot of fun.
The complete breakdown of the course topics is provided below.
Kindly, the videos for this course have also been made available via YouTube.
Convolutional Neural Networks Taught by Andrew NgA YouTube playlist of the course is also available, although some of the videos for Week 3 are out of order:The videos have a naming convention of C4WnLnn, where Wn refers to the week number (1-4) and Lnn refers to the lecture number (e.
01 to 12).
Take note of the order of the videos in Week 3; you may need to jump around in the playlist manually.
Two videos are missing from the playlist; they are:Note that Week 1 includes a video interview with Yann LeCun, the inventor of Convolutional Neural Networks.
This is part of a video series titled “Heroes of Deep Learning Interviews” that is also available on YouTube.
You can easily watch all of the videos in a few hours.
I watched all of the videos via YouTube (on double speed) and took extensive notes.
It’s a great course and I think it does an excellent job of developing intuitions for the topics covered, including CNNs, milestone models, object detection, face recognition, and style transfer.
The introduction to convolutional layers and related topics of padding, stride, etc, is perhaps one of the cleanest presentations I have seen.
I also found Week 2 and Week 3 on milestone CNN models and object detection very clear.
Week 4 was fine, starting well, but got very messy as we dove into neural style transfer.
If you are already familiar with the basics of CNNs, as many deep learning practitioners are, then I would recommend focusing on Week 3 and Week 4.
Week 3 is especially great, diving into the elements of the killer-app of object detection and the challenging YOLO method to address it.
YOLO is an important topic to cover, but it might have been simplified if the focus was on a simpler (easier to implement method) such as Fast or Faster R-CNN.
I found myself watching almost every minute of the course, skipping only over some of the messy mathematical descriptions.
In fact, diving into explanations of loss functions was perhaps the least interesting and perhaps not-required parts of the course.
I have never found video an effective medium for teaching math.
It needs to be taken slowly, with clear (LaTeX) equations, explanation, and working code.
If you are new to deep learning for computer vision but are familiar with the basics of deep learning, then I recommend the course, specifically watching the videos.
You can easily complete them in one or two sittings.
This section provides more resources on the topic if you are looking to go deeper.
In this post, you discovered a breakdown and review of the convolutional neural networks course taught by Andrew Ng on deep learning for computer vision.
Specifically, you learned:Do you have any questions?.Ask your questions in the comments below and I will do my best to answer.
.. More details