0% found this document useful (0 votes)
66 views

Deep Learning Nanodegree Syllabus

The Deep Learning Nanodegree program offers students an introduction to artificial intelligence concepts like neural networks, convolutional neural networks, and generative adversarial networks. Students will complete projects in PyTorch to build models like a chatbot and an image classifier. The estimated time to complete the program is 4 months working 10 hours per week, and prerequisites include experience with derivatives, linear algebra, Python, and machine learning libraries.

Uploaded by

Cylub
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
66 views

Deep Learning Nanodegree Syllabus

The Deep Learning Nanodegree program offers students an introduction to artificial intelligence concepts like neural networks, convolutional neural networks, and generative adversarial networks. Students will complete projects in PyTorch to build models like a chatbot and an image classifier. The estimated time to complete the program is 4 months working 10 hours per week, and prerequisites include experience with derivatives, linear algebra, Python, and machine learning libraries.

Uploaded by

Cylub
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

INDIVIDUAL LEARNERS

SCHOOL OF ARTIFICIAL INTELLIGENCE

Deep Learning
Nanodegree Program Syllabus
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.

Learning Objectives

A graduate of this program will be able to:

• Create a simple neural network (NN) using PyTorch to predict patterns from real data.

• Build convolutional neural networks (CNNs) to classify landmark images based on patterns and objects
that appear in them.

• Implement a recurrent neural network (RNN) and its variants (LSTMs, GRUs) with PyTorch to build a
customer service chatbot.

Deep Learning 2
Program information

Estimated Time Skill Level

4 months at 10hrs/week* Intermediate

Prerequisites

Students should have experience working with and/or knowledge of the following topics:

• Derivatives

• Linear Algebra

• Numpy, Pandas

• Intermediate Python

• Jupyter notebooks

Required Hardware/Software

NLTK, SKLearn, BeautifulSoup, Numpy

*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 10 hours per week working through the program, you
should finish within the time provided. Actual hours may vary.

Deep Learning 3
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.

Course Project

Developing a Handwritten Digits Classifier with PyTorch


In this project, you will develop a handwritten digit recognition system in PyTorch. Then, use data
preprocessing skills to load data appropriately for use in models. Develop a neural network using PyTorch
and write a training loop that trains the model with the loaded data. Lastly, apply advanced training
techniques to improve accuracy on the test set.

• Explain the difference between artificial intelligence, machine learning, and


Lesson 1 deep learning.

Deep Learning • Recognize the power of deep learning by reviewing popular examples of deep
learning applications.

Deep Learning 4
• Use PyTorch to preprocess data.

• Use maximum likelihood, cross-entropy, and probability to measure model


Lesson 2
performance.

Minimizing the Error Function • Apply gradient descent to minimize error.


with Gradient Descent
• Implement a backpropagation algorithm.

• Identify key components of perceptrons.

• Explain essential concepts in neural networks.


Lesson 3
• Design neural network architectures.
Introduction to • Distinguish between problems based on the objective of the model.
Neural Networks
• Implement appropriate architectures for model objectives.

• Define a loss function and optimization method to train a neural network.

• Distinguish between overfitting and underfitting, and identify the causes of


each.

Lesson 4 • Optimize the training process using early stopping, regularication, dropout,
learning rate decay, and momentum.
Training Neural Networks
• Distinguish between batch and stochastic gradient descent.

• Build a neural network with PyTorch and run data through it.

• Test and validate a trained network to ensure it generalizes.

Deep Learning 5
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.

Deep Learning 6
• List main applications of CNNs.
Lesson 1 • Understand professional roles involved in the development of a CNN-based
application.
Introduction to CNNs
• Understand the main events in the history of CNNs.

• Recap training networks in PyTorch.

• Use multi-layer perceptron for image classification.


Lesson 2
• Understand limitations of MLPs when applied to images.
CNN Concepts
• Learn the basic concepts of CNNs that make them great at tasks involving
images.

• Learn how to use the basic layers used in CNNs.

• Put all layers together to build a CNN from scratch.


Lesson 3
• Classify images using a CNN built from scratch.
CNNs in Depth
• Improve the performances of your CNN.

• Export a model for production.

• Understand key CNN architectures and their innovations.


Lesson 4
• Apply multiple ways of adapting pre-trained networks using transfer learning.
Transfer Learning
• Fine-tune a pre-trained network on a new dataset.

• Understand linear and CNN-based autoencoders.


Lesson 5 • Design and train a linear autoencoder for anomaly detection.

Autoencoders • Design and train a CNN autoencoder for anomaly detection and image
denoising.

• Understand the architecture of an object detection model.


Lesson 6
• Train and evaluate an object detection model.
Object Detection and • Understand the architecture of a semantic segmentation model.
Segmentation
• Train and evaluate a semantic segmentation model.

Deep Learning 7
Course 3

RNNs & Transformers


This course covers multiple RNN architectures and discusses design patterns for those models. Additionally, you’ll focus on the
latest transformer architectures.

Course Project

LSTM Seq2Seq Chatbot


In this project, learn how to build an AI chatbot using LSTMs, Seq2Seq, and word embeddings for increased
accuracy. You’ll use a dataset of conversational dialogue to replicate conversational ability. Complete
the following steps: Write a neural network architecture using Pytorch, train it with the dataset, and tune
network hyperparameters for increased accuracy. In the end, you’ll demonstrate your proficiency in deep
learning to prospective employers by conversing with their chatbot at the command line.

• Explain how RNNs evolved from feedforward neural networks.

• Recognize the benefit of RNNs by reviewing the applications of RNNs in areas


like machine translation.
Lesson 1 • Perform backpropagation on an RNN.

Recurrent Neural Networks • Apply the SkipGram Word2Vec technique to implement custom word
embeddings.

• Explain the limitations of simple RNNs and how they can be overcome by using
long short term memory networks (LSTMs).

Deep Learning 8
• Understand the functioning of the LSTM via the four LSTM gates: the learning
Lesson 2
gate, the forget gate, the remember gate, and the use gate.
Long Short-Term Memory • Compare architectures such as GRU that can reveal new modeling techniques
Networks (LSTMs) in combination with the LSTM.

Lesson 3
• Train a simple RNN in PyTorch to do time series prediction.
Implementation of RNN • Implement a character level sequence RNN.
and LSTMs

• Fine tune RNN models using hyperparameters.

Lesson 4 • Apply key hyperparameters such as learning rate, minibatch size, number of
epochs, and number of layers.
Fine Tuning RNN Models
• Identify possible starting values and intuitions for the hyperparameters used in
RNNs.

• Implement the components of a Seq2Seq architecture to produce a sequence


Lesson 5 of words in response to input prompts.

Seq2Seq Architecture • Implement the key components of a Seq2Seq architecture and understand the
way they interact.

• Use recent architectures such as Transformers and BERT to address the


limitations of RNNs at solving NLP problems.
Lesson 6
• Identify the changes in architecture that occurred during the transition from
The Limitations of RNNs recurrent networks to Transformer networks.

• Use new Transformer architectures like BERT and GPT3.

Deep Learning 9
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.

Lesson 1 • Build generator and discriminator using fully connected layers.

• Implement loss functions.


Generative Adversarial
Networks • Train a custom GAN on the MNIST dataset.

Deep Learning 10
• Build generator and discriminator using convolutional, batch normalization,
Lesson 2
and fully connected layers.

Training a Deep • Train a DCGAN model on the CIFAR10 dataset.


Convolutional GANs
• Implement evaluation metrics and evaluate generated samples.

• Implement unpaired data loader.


Lesson 3 • Build the CycleGAN generator using residual connection and an
encoder-decoder structure.
Image to Image Translation
• Train a CycleGAN model on the summer2winter Yosemite dataset.

• Implement Wasserstein loss and gradient penalties.


Lesson 4
• Build the ProGAN generator.
Modern GANs
• Implement StyleGAN components (adaptive instance normalization).

Deep Learning 11
Meet your instructors.

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

Nathan is a data scientist and entrepreneur. He currently leads a Datyra, a 50-person AI


consultancy. He was the first AI team member at $CORZ. Prior to that he founded a VC backed
data startup that was acquired. Nathan was named “27 CEO’s Under 27” by Entrepreneur.com
and has been featured in Inc. and Forbes.

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.

Deep Learning 12
Udacity’s learning
experience

Hands-on Projects Quizzes


Open-ended, experiential projects are designed Auto-graded quizzes strengthen comprehension.
to reflect actual workplace challenges. They aren’t Learners can return to lessons at any time during
just multiple choice questions or step-by-step the course to refresh concepts.
guides, but instead require critical thinking.

Knowledge Custom Study Plans


Find answers to your questions with Knowledge, Create a personalized study plan that fits your
our proprietary wiki. Search questions asked by individual needs. Utilize this plan to keep track of
other students, connect with technical mentors, movement toward your overall goal.
and discover how to solve the challenges that
you encounter.

Workspaces Progress Tracker


See your code in action. Check the output and Take advantage of milestone reminders to stay
quality of your code by running it on interactive on schedule and complete your program.
workspaces that are integrated into the platform.

Deep Learning 13
Our proven approach for building
job-ready digital skills.
Experienced Project Reviewers

Verify skills mastery.


• Personalized project feedback and critique includes line-by-line code review from
skilled practitioners with an average turnaround time of 1.1 hours.

• Project review cycle creates a feedback loop with multiple opportunities for
improvement—until the concept is mastered.

• Project reviewers leverage industry best practices and provide pro tips.

Technical Mentor Support

24/7 support unblocks learning.


• Learning accelerates as skilled mentors identify areas of achievement and potential
for growth.

• Unlimited access to mentors means help arrives when it’s needed most.

• 2 hr or less average question response time assures that skills development stays on track.

Personal Career Services

Empower job-readiness.
• Access to a Github portfolio review that can give you an edge by highlighting your
strengths, and demonstrating your value to employers.*

• Get help optimizing your LinkedIn and establishing your personal brand so your profile
ranks higher in searches by recruiters and hiring managers.

Mentor Network

Highly vetted for effectiveness.


• Mentors must complete a 5-step hiring process to join Udacity’s selective network.

• After passing an objective and situational assessment, mentors must demonstrate


communication and behavioral fit for a mentorship role.

• Mentors work across more than 30 different industries and often complete a Nanodegree
program themselves.

*Applies to select Nanodegree programs only.

Deep Learning 14
Learn more at
www.udacity.com/online-learning-for-individuals →

07.20.22 | V2.0

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy