Instructor: Andrew Ng
This repository contains all the solutions of the programming assignments along with few output images. It also has some of the important papers which are referred during the course.
NOTE : Use the solutions only for reference purpose :)
This specialisation has five courses.
Courses:
-
Course 1: Neural Networks and Deep Learning
-
Learning Objectives :
- Understand the major technology trends driving Deep Learning
- Be able to build, train and apply fully connected deep neural networks
- Know how to implement efficient (vectorized) neural networks
- Understand the key parameters in a neural network's architecture
-
Programming Assignments
- Week 2 - Programming Assignment 1 - Logistic Regression with a Neural Network mindset
- Week 3 - Programming Assignment 2 - Planar data classification with one hidden layer
- Week 4 - Programming Assignment 3 - Building your Deep Neural Network: Step by Step
- Week 4 - Programming Assignment 4 - Deep Neural Network for Image Classification: Application
-
Course 2: Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization
-
Learning Objectives :
- Understand industry best-practices for building deep learning applications.
- Be able to effectively use the common neural network "tricks", including initialization, L2 and dropout regularization, Batch normalization, gradient checking,
- Be able to implement and apply a variety of optimization algorithms, such as mini-batch gradient descent, Momentum, RMSprop and Adam, and check for their convergence.
- Understand new best-practices for the deep learning era of how to set up train/dev/test sets and analyze bias/variance
- Be able to implement a neural network in TensorFlow.
-
Programming Assignments
-
Course 3: Structuring Machine Learning Projects
-
Learning Objectives :
- Understand how to diagnose errors in a machine learning system, and
- Be able to prioritize the most promising directions for reducing error
- Understand complex ML settings, such as mismatched training/test sets, and comparing to and/or surpassing human-level performance
- Know how to apply end-to-end learning, transfer learning, and multi-task learning
-
This course doesn't have any programming assignments
-
Course 4: Convolutional Neural Networks
-
Learning Objectives :
- Understand how to build a convolutional neural network, including recent variations such as residual networks.
- Know how to apply convolutional networks to visual detection and recognition tasks.
- Know to use neural style transfer to generate art.
- Be able to apply these algorithms to a variety of image, video, and other 2D or 3D data.
-
Programming Assignments
- Week 1 - Programming Assignment 1 - Convolution model Step by Step
- Week 1 - Programming Assignment 2 - Convolution model Application
- Week 2 - Programming Assignment 3 - Keras Tutorial Happy House
- Week 2 - Programming Assignment 4 - Residual Networks
- Week 3 - Programming Assignment 5 - Autonomous driving application - Car Detection
- Week 4 - Programming Assignment 6 - Face Recognition for Happy House
- Week 4 - Programming Assignment 7 - Art Generation with Neural Style transfer
-
Course 5: Sequence Models
-
Learning Objectives :
- Understand how to build and train Recurrent Neural Networks (RNNs), and commonly-used variants such as GRUs and LSTMs.
- Be able to apply sequence models to natural language problems, including text synthesis.
- Be able to apply sequence models to audio applications, including speech recognition and music synthesis.
-
Programming Assignments
- Week1 - Programming Assignment 1 - Building a Recurrent Neural Network
- Week1 - Programming Assignment 2 - Character level Dinosaur Name generation
- Week1 - Programming Assignment 3 - Music Generation
- Week2 - Programming Assignment 1 - Operations on Word vectors
- Week2 - Programming Assignment 2 - Emojify
- Week3 - Programming Assignment 1 - Neural Machine translation with attention
- Week3 - Programming Assignment 2 - Trigger word detection