Back to Improving Deep Neural Networks: Hyperparameter Tuning, Regularization and Optimization

stars

58,630 ratings

•

6,755 reviews

In the second course of the Deep Learning Specialization, you will open the deep learning black box to understand the processes that drive performance and generate good results systematically.
By the end, you will learn the best practices to train and develop test sets and analyze bias/variance for building deep learning applications; be able to use standard neural network techniques such as initialization, L2 and dropout regularization, hyperparameter tuning, batch normalization, and gradient checking; implement and apply a variety of optimization algorithms, such as mini-batch gradient descent, Momentum, RMSprop and Adam, and check for their convergence; and implement a neural network in TensorFlow.
The Deep Learning Specialization is our foundational program that will help you understand the capabilities, challenges, and consequences of deep learning and prepare you to participate in the development of leading-edge AI technology. It provides a pathway for you to gain the knowledge and skills to apply machine learning to your work, level up your technical career, and take the definitive step in the world of AI....

HD

Dec 5, 2019

I enjoyed it, it is really helpful, id like to have the oportunity to implement all these deeply in a real example.\n\nthe only thing i didn't have completely clear is the barch norm, it is so confuse

NA

Jan 13, 2020

After completion of this course I know which values to look at if my ML model is not performing up to the task. It is a detailed but not too complicated course to understand the parameters used by ML.

Filter by:

By Brennon B

•Apr 23, 2018

Walking away from this course, I do *not* feel adequately prepared to implement (end-to-end) everything that I've learned. I felt this way after the first course of this series, but even more so now. Yes, I understand the material, but the programming assignments really don't amount to more than "filling in the blanks"--that doesn't really test whether or not I've mastered the material. I understand that this is terribly hard to accomplish through a MOOC, and having taught university-level courses myself, I understand how much effort is involved in doing so in the "real world". In either case, if I'm paying for a course, I expect to have a solid grasp on the material after completing the material, and though you've clearly put effort into assembling the programming exercises, they don't really gauge this on any level. Perhaps it would be worth considering a higher cost of the course in order to justify the level of effort required to put together assessments that genuinely put the student through their paces in order to assure that a "100%" mark genuinely reflects both to you and the learner that they have truly internalized and mastered the material. It seems to me that this would pay off dividends not only for the learner, but also for the you as the entity offering such a certificate.

By oli c

•Dec 9, 2018

Lectures are good. Quizzes and programming exercises too easy.

By Alan S

•Sep 30, 2017

As far as the video lectures is concerned, the videos are excellent; it is the same quality as the other courses from the same instructor. This course contains a lot of relevant and useful material, and is worth studying, and complements the first course (and the free ML course very well).

The labs, however, are not particularly useful. While it's good that the focus of the labs is applying the actual formulas and algorithms taught, and not really on the mechanical aspects of putting the ideas in actual code, the labs have structured basically all of the "glue" and just leave you to basically translate formulas to the language-specific construct. This makes the lab material so mechanical as to almost take away the benefit.

The TensorFlow section was disappointing. It's really difficult to learn much in a 15 minute video lecture, and a lab that basically does everything (and oddly, for some things leaves you looking up the documentation yourself). I didn't get anything out of this lab, other than to get a taste for what it looks like. What makes it even worse is TensorFlow framework uses some different jargon that is not really explained, but the relevant code is almost given to you so it doesn't matter to get the "correct" answer. I finished the lab not feeling like I knew very much about it at all. It would have been far better to either spend more time on this, or basically omit it.

As with the first course, it is somewhat disappointing lecture notes are not provided. This would be handy as a reference to refer back to.

Still, despite these flaws, there's still a lot of good stuff to be learned. This course could have been much better, though.

By Lien C

•Mar 31, 2019

The course provides very good insights of the practical aspect of implementing neural networks in general. Prof. Ng, as always, delivered very clear explanation for even the difficult concepts, and I have thoroughly enjoyed every single lecture video.

Although I do appreciate very much the efforts put in by the instructors for the programming assignments, I can't help but thinking I could have learnt much more if the instruction were *LESS* detailed and comprehensive. I found myself just "filling in the blank" and following step-by-step instruction without the need to think too much. I'm also slightly disappointed with the practical assignment of Tensorflow where everything is pretty much written out for you, leaving you with less capacity to think and learn from mistakes.

All in all, I think the course could have made the programming exercise much more challenging than they are now, and allow students to learn from their mistakes.

By Xiao G

•Oct 31, 2017

Thank you Andrew!! I know start to use Tensorflow, however, this tool is not well for a research goal. Maybe, pytorch could be considered in the future!! And let us know how to use pytorch in Windows.

By NASIR A

•Jan 14, 2020

After completion of this course I know which values to look at if my ML model is not performing up to the task. It is a detailed but not too complicated course to understand the parameters used by ML.

By Alexandre M

•Oct 9, 2019

I really enjoyed this course. Many details are given here that are crucial to gain experience and tips on things that looks easy at first sight but are important for a faster ML project implementation

By Md. R K S

•Apr 15, 2019

Excellent course. When I learned about implementing ANN using keras in python, I just followed some tutorials but didn't understand the tradeoff among many parameters like the number of layers, nodes per layers, epochs, batch size, etc. This course is helping me a lot to understand them. Great work Mr. Andrew Ng. :)

By Matthew G

•Apr 17, 2019

Very good course. Andrew really steps it up in part two with lots of valuable information.

By Abhishek S

•Apr 19, 2020

Very good course to give you deep insight about how to enhance your algorithm and neural network and improve its accuracy. Also teaches you Tensorflow. Highly recommend especially after the 1st course

By Carlos V

•Dec 24, 2017

Exceptional Course, the Hyper parameters explanations are excellent every tip and advice provided help me so much to build better models, I also really liked the introduction of Tensor Flow

Thanks.

By Yuhang W

•Nov 25, 2018

programming assignments too easy

By Anand R

•Feb 17, 2018

To set the context, I have a PhD in Computer Engineering from the University of Texas at Austin. I am a working professional (13+ years), but just getting into the field of ML and AI. Apologies for flashing this preamble for every course that I review on coursera.

This course is the 2nd in a 5 part series offered by Dr. Andrew Ng on deep learning on coursera. I believe it is useful to take this course in order and makes sense as a part of the series, though technically it is not necessary.

The course covers numerous tuning strategies and optimization strategies to help seed up as well as improve the quality of the machine learning output. It is very well planned and comprehensive (to the extent possible) -- and gives the student a very power toolbox of stratgies to attack a problem.

The instructor videos are very good, usually 10 min long, and Dr. Ng tries hard to provide intution using analogies and real-life examples. The quizzes that accompany the lectures are quite challenging and help ensure that the student has understood the material well. The programming exercises are the best part of the course. They help the student practice the strategies and also provide a jump-start for the student to use the code for their own problems at work or in school.

Overall, this is an excellent course. Thank you Dr Ng and the teaching assistants, Thank you coursera.

By Abiodun O

•Apr 6, 2018

Fantastic course! For the first time, I now have a better intuition for optimizing and tuning hyperparameters used for deep neural networks.I got motivated to learn more after completing this course.

By Youdinghuan C

•Dec 28, 2017

This is a logical continuation of the previous course. The 3-week topics were excellently chosen. Andrew did a great job of delivering the lectures. The programming assignments really reinforced my understanding. In particular, essential knowledge and equations from video lectures were reiterated in the programming assignments for review and ease of reference. The amount of work was reasonable, and the level of challenge was appropriate. I especially appreciate the instructional team for making this course open to the public.

By Alessandro T

•Jan 22, 2018

A right balance between theory (you are required to code know the models and code them from scratch) and practice (you get an overview of the frameworks available out there to put your code into production quickly and efficiently; and time is spent on practical aspects of the training phase).

A small "criticism": in the notebook, more than programming you just have to fill a template where a good part of the algorithm is already drafted for you. It is too much, students should be left scratching their heads a bit longer :)

By Hassan S

•Apr 3, 2018

Andrew Ng and the teaching assistants' team of this class are obviously very very determined not to leave any single major subject in deep learning without coverage. I have been using deep learning for the past couple years, but I have to say by completing the second course of this specialization, they helped me deepen my understanding, overcome fear of implementing math and equations line by line, fix my intuitions about deep learning, and most importantly erase all the superstitions! Bravo and excellent job.

By Shah Y A

•Oct 28, 2019

TL;DR: lectures are awesome, notebooks are bad.

The lectures by Prof. Ng are amazing, comprehensive and intuitive. The prof starts from first principles of simple neural networks and goes onto show concepts like normalization, bias, variance, overfitting, underfitting, regularization, dropout, L1 and L2 regularization, exponentially weighted averages, stochastic, mini batch and batch gradient descent, momentum, RMSprop, Adam optimization, batch normalization and intro to deep learning frameworks. He not only gives the mathematical foundations and code implementations of each concept, but spends a lot of time explaining the intuition behind it, so that we grasp the concept well. It's amazing how he starts from decade old neural networks in the first video, and within 2-3 hours of lecturing, he brings us into the state-of-the-art deep learning models. Thank you Prof. Ng!

But the notebooks have many flaws. The lectures don't set you up for the programming needed in the notebooks. The descriptions in the notebooks are lacking proper tutorial in many places, leading the students incompetent for the exercises that follow. Example: Week 3 tensorflow tutorail; the sigmoid function exercise; the description above the exercise doesn't really teach you how to effectively use placeholders and variables. I was confused and had to go through the noisy dicsussion forum. Please fix it, and if you'd really like more constructive criticism from me, contact me yasser.aziz94 (at da rate ov) gee mail dut com. (lol)

By Hequn W

•Apr 18, 2018

I can't open week1 assignment initialization, and can't get any help from coursera. I've completed all five courses, but can't get certification without this assignment....

By Văn H B

•May 27, 2019

I would rate for this course 4.5, but Coursera's system does not have it.

About the first and second week, explanation about terms in Deep Learning are very good from Prof. Andrew, the preparation for exams is quite good for you to revise lectures. I think programming exercices should be more challenge and more suggestive for students, but it was okay for me after having some knowledge from Machine Learning Course. I suggest you to finish Machine Learning Course before taking this.

About the third week, i expect a lot more about TensorFlow that Mr.Andrew can give me, or maybe more intuiation about it. Moreover, Batch Norm 's explanation is quite hard to understand, because we do not have any programming exercise for it, so I hope teachers can prepare a programming exercises among with the programiing exercise for TensorFlow.

By Nimish S

•Aug 15, 2017

Having done multiple Udacity Nano Degrees and other deep-learning/AI courses on Coursera/edX, I can say that deeplearning specialization is probably the best and most detailed to master the basics of Neural Networks and deep learning. This course is great in helping understand tuning of hyper-params, various optimization techniques and approaches. Videos do a great job in explaining complex and confusing concepts in easy to understand style. Assignments cement the understanding further.

Kudos to the Prof Andres Ng and rest of the deeplearning.ai team for putting up such a great content.

By Mohanad A N

•Feb 25, 2019

I'm actually learning and comprehending the course, I do pause the videos occasionally to research some concepts, write some notes in a copybook but overall this specialty(so far course 1 & 2 ) is really filling the gaps in my mind to build a clearer picture of the topic of Machine Learning and Deep Learning. Andrew Ng explains really well, sometimes he through some good recommendations based in his practical experience and this is really valuable for me because it actually helps in improving the learning process.

Thank you Andrew and Coursera Team.

By Yashveer S Y

•Jun 2, 2018

This course is perfect bite for your hunger of Deep learning. Before taking this course I have gone through some books and and some blogs too but there was not that much of clarity to topic so finally I tried for this one and trust me this course is so organised and very informatic so go for this one, I assure you will feel more confident and knowledgeable after completing this course. I would like to thanks Coursera as well as deeplearning.ai community for providing this course and Want to specially thanks to Mr. Andrew Ng for his contribution

By Heshmat S

•Dec 26, 2017

This is the 2nd course from Andrew Ng in the "deep learning specialization". Having introduced the building blocks of deep neural networks, in this course Andrew teaches more advanced and practical concepts - like: regularization, advanced optimization techniques, batch-normalization, etc - that can significantly improve the implementation of the models we build.

Also, in this course we get to learn TensorFlow, a widely used and wonderful deep learning framework.

I highly recommend this course.

Thank you Andrew & Co. :-)

By Beng C C

•Dec 31, 2018

Great course! But I am not too sure why this should be placed in number 2, as I feel that topics such as tuning hyperparameters do not resonate well with someone who is not working professionally or is not very experienced in this field. However, still a great course as I will revisit this course when I gain more experience. I also like the last exercise on Tensorflow as there is a lack of courses on Tensorflow on the Internet, so the last assignment on Tensorflow is the most useful which I have found in the course.

- Google Data Analyst
- Google Project Management
- Google UX Design
- Google IT Support
- IBM Data Science
- IBM Data Analyst
- IBM Data Analytics with Excel and R
- IBM Cybersecurity Analyst
- Facebook Social Media Marketing
- IBM Full Stack Cloud Developer
- Salesforce Sales Development Representative
- Salesforce Sales Operations
- Soporte de Tecnologías de la Información de Google
- Certificado profesional de Suporte em TI do Google
- Google IT Automation with Python
- DeepLearning.AI Tensorflow
- Popular Cybersecurity Certifications
- Popular SQL Certifications
- Popular IT Certifications
- See all certificates

- Skills for Data Science Teams
- Data Driven Decision Making
- Software Engineering Skills
- Soft Skills for Engineering Teams
- Management Skills
- Marketing Skills
- Skills for Sales Teams
- Product Manager Skills
- Skills for Finance
- Android Development Projects
- TensorFlow and Keras Projects
- Python for Everybody
- Deep Learning
- Excel Skills for Business
- Business Foundations
- Machine Learning
- AWS Fundamentals
- Data Engineering Foundations
- Data Analyst Skills
- Skills for UX Designers

- MasterTrack® Certificates
- Professional Certificates
- University Certificates
- MBA & Business Degrees
- Data Science Degrees
- Computer Science Degrees
- Data Analytics Degrees
- Public Health Degrees
- Social Sciences Degrees
- Management Degrees
- Degrees from Top European Universities
- Master's Degrees
- Bachelor's Degrees
- Degrees with a Performance Pathway
- Bsc Courses
- What is a Bachelor's Degree?
- How Long Does a Master's Degree Take?
- Is an Online MBA Worth It?
- 7 Ways to Pay for Graduate School
- See all degrees