Deep Learning Nanodegree Program
Deep Learning Nanodegree Program
Deep Learning Nanodegree Program
Syllabus
udacity.com
udacity.com
Deep Learning
Overview:
The Deep Learning Nanodegree program offers you a solid
introduction to the world of artificial intelligence. In this
program, you’ll master fundamentals that will enable you to
go further in the field or launch a brand new career. You will
study cutting-edge topics such as neural networks,
convolutional neural networks, recurrent neural networks,
and generative adversarial networks. Plus, you’ll build
projects in PyTorch. Join the next generation of deep learning
talent that will help define a highly beneficial AI-powered
future for our world.
Learnin O e tives
g bj c Prerequisites
A graduate of this program will e a le to: b b Students should have experience working
with and/or knowledge of the following
Create a simple neural network (NN) using PyTorch to topics:
predict patterns from real data.
Derivatives
Intermediate Python
Numpy, Pandas
Implement a recurrent neural network (RNN) and its variants
chatbot.
*The length of this program is an estimation of total hours the average student may take to complete all required coursework, including
lecture and project time. If you spend about 5-10 hours per week working through the program, you should finish within the time provided.
Actual hours may vary.
udacity.com
Deep Learning
Course #1:
Introduction to Deep Learning
This course covers the fundamental theoretical and practical topics in deep learning.
You’ll begin by learning about how experts think about deep learning, when it is
appropriate to use deep learning, and how to apply the skill. You’ll then learn the
foundational algorithms underpinning modern deep learning: gradient descent and
backpropagation. Once those foundations are established, explore design constructs of
neural networks and the impact of these design decisions. Finally, the course explores
how neural network training can be optimized for accuracy and robustness using training
techniques like early stopping, dropout, regularization, and momentum. Throughout the
course, theory and fundamental implementations are woven together with PyTorch code
to reinforce both the theory and practice of deep learning.
Explain the difference between artificial intelligence, Implement appropriate architectures for model objectives.
machine learning, and deep learning.
Recognize the power of deep learning by reviewing popular #04 - Training Neural Networks
examples of deep learning applications.
Define a loss function and optimization method to train a
neural network.
Identify key components of perceptrons. Test and validate a trained network to ensure it generalizes.
u dacity.com
Deep Learning
Course #2:
Convolutional Neural Networks
This course introduces convolutional neural networks, the
most widely used type of neural networks specialized in
image processing. You will learn the main characteristics of
CNNs that make them better than standard neural
networks for image processing. Then you’ll examine the
inner workings of CNNs, including how to build CNNs from
scratch to complete image classification tasks. After, you’ll
apply these architectures to custom datasets using transfer
learning and learn to use autoencoders for anomaly
detection as well as image denoising. Finally, you will learn
how to use CNNs for object detection and semantic
segmentation.
course project
Landmark Classification and Tagging for Social Media
Photo sharing and photo storage services like to have location data for each photo that is uploaded. With the location data,
these services can build advanced features, such as automatic suggestion of relevant tags or automatic photo organization,
which help provide a compelling user experience. Although a photo’s location can often be obtained by looking at the
photo’s metadata, many photos uploaded to these services will not have location metadata available. This can happen when,
for example, the camera capturing the picture does not have GPS or if a photo’s metadata is scrubbed due to privacy
concerns.
If no location metadata for an image is available, one way to infer the location is to detect and classify a discernible landmark
in the image. Given the large number of landmarks across the world and the immense volume of images that are uploaded
to photo sharing services, using human judgment to classify these landmarks would not be feasible.
In this project, you will build models to automatically predict the location of the image based on any landmarks depicted in
the image. You will go through the machine learning design process end-to-end: performing data preprocessing, designing
and training CNNs, comparing the accuracy of different CNNs, and deploying an app based on the best CNN you trained.
u dacity.com
Deep Learning
Lessons
#01 - Introduction to CNNs Understand professional roles involved in the development of a CNN-based application.
Learn the basic concepts of CNNs that make them great at tasks involving images.
#03 - CNNs in Depth Classify images using a CNN built from scratch.
#04 - Transfer Learning Apply multiple ways of adapting pre-trained networks using transfer learning.
#05 - Autoencoders Design and train a linear autoencoder for anomaly detection.
Design and train a CNN autoencoder for anomaly detection and image denoising.
#06 - Object Detection and Train and evaluate an object detection model.
u dacity.com
Deep Learning
course project
Text Translation and Sentiment Analysis using Transformers
In the project, you will use a pre-trained transformer to analyze the sentiment of
movie reviews in three different languages - English, French, and Spanish. You will
first read the movie review data and convert the French and Spanish reviews and
synopses into English, and then analyze the sentiment of each review.
Lessons
Understand the functioning of the LSTM via the four LSTM gates:
#02 - Introduction to LSTM the learning gate, the forget gate, the remember gate, and the use
gate.
Identify the changes in architecture that occurred during the transition from
recurrent networks to transformer networks.
#03 - Introduction
Understand the encoder-decoder and the self-attention mechanism as part of
to Transformer the transformer architecture.
Understand simple transformer-based models like BERT and GPT3 and their
applications.
Use pre-trained transformer models to perform simple tasks like text generation
and text translation.
u dacity.com
Deep Learning
Course #4:
Building Generative Adversarial Networks
In this course, you’ll become familiar with generative adversarial networks (GANs).
You will learn how to build and train different GANs architectures to generate new
images. Discover, build, and train architectures such as DCGAN, CycleGAN, ProGAN
and StyleGAN on diverse datasets including the MNIST dataset, Summer2Winter
Yosemite dataset, or CelebA dataset.
Course Project
Face Generation
In this project, you will build and train a custom GAN architecture on the CelebA dataset,
leveraging the different skills learned during the course. In particular, you will have to build
a custom GAN architecture, including generator and discriminator. You will also
experiment with the different loss functions discovered during the course, such as the
Binary Cross Entropy loss or the Wasserstein loss. Finally, utilize some of the methods
learned to stabilize training, such as label smoothing
Lessons
connected layers.
Build the CycleGAN generator using residual connection
Implement loss functions.
and an encoder-decoder structure.
Train a custom GAN on the MNIST dataset Train a CycleGAN model on the summer2winter Yosemite
dataset.
#02 - Training a Deep Convolutional GANs
Build generator and discriminator using convolutional, batch #04 - Modern GANs
normalization, and fully connected layers.
Implement Wasserstein loss and gradient penalties.
Implement evaluation metrics and evaluate generated Implement StyleGAN components (adaptive instance
samples normalization).
u dacity.com
Deep Learning
Erick Galinkin
Principal AI Researcher
Erick Galinkin is a hacker and computer scientist, leading research at the intersection of security
and artificial intelligence at Rapid7. He has spoken at numerous industry and academic conferences
on topics ranging from malware development to game theory in security.
Giacomo Vianello
Principal Data Scientist
Giacomo Vianello is an end-to-end data scientist with a passion for state-of-the-art, but practical
technical solutions. An accomplished speaker with more than 20 invited public talks, he works at
Cape Analytics where he brings cutting-edge solutions to the insurance and real estate industries.
Nathan Klarer
Head of ML & COO of Datyra
Thomas Hossler
Sr Machine Learning Engineer
Thomas is originally a geophysicist but his passion for computer vision led him to become a deep
learning engineer at various startups. By creating online courses, he is hoping to make education
more accessible. When he is not coding, Thomas can be found in the mountains skiing or climbing.
u dacity.com
Learn More at
www.udacity.com
udacity.com