Deep Learning Nanodegree Syllabus 8-15

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15
At a glance
Powered by AI
The key takeaways are that this program offers a solid introduction to deep learning and artificial intelligence. Learners will study cutting-edge topics like neural networks, convolutional neural networks, and generative adversarial networks. They will also build projects in PyTorch and NumPy and learn from experts in the field.

The program will cover topics such as neural networks, convolutional neural networks, recurrent neural networks, generative adversarial networks, and network deployment. Learners will also study sentiment analysis and build multi-layer neural networks to analyze real data.

This program will help learners master deep learning fundamentals and develop skills like implementing gradient descent, training neural networks, and using PyTorch for model building. It will prepare them to either launch or advance their career in AI and machine learning.

NANODEGREE PROGR AM SYLL ABUS

Deep Learning

Need Help? Speak with an Advisor: www.udacity.com/advisor


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, launch or advance
a career, and join the next generation of deep learning talent that will help define a beneficial, new,
AI-powered future for our world. You will study cutting-edge topics such as Neural Networks, Convolutional
Neural Networks, Recurrent Neural Networks, Generative Adversarial Networks, and Network Deployment,
and build projects in PyTorch and NumPy. You’ll learn from authorities such Ian Goodfellow and Jun-Yan
Zhu, inventors of types of generative adversarial networks, as well as AI experts, Sebastian Thrun and Andrew
Trask. For anyone interested in this transformational technology, this program is an ideal point-of-entry.

The program is comprised of 5 courses and 5 projects. Each project you build will be an opportunity to
prove your skills and demonstrate what you’ve learned in your lessons.

I N CO L L A B O R AT I O N W I T H

Estimated Time: Prerequisites:


4 Months at Basic Python
12 hrs/week

Flexible Learning: Need Help?


Self-paced, so udacity.com/advisor
you can learn on Discuss this program
the schedule that with an enrollment
works best for you advisor.

Deep Learning | 2
Need Help? Speak with an Advisor: www.udacity.com/advisor
Course 1: Neural Networks
Learn neural networks basics, and build your first network with Python and NumPy. Use the modern deep
learning framework PyTorch to build multi-layer neural networks, and analyze real data.

Learn neural networks basics, and build your first network with
Course Project Python and NumPy. You’ll define and train a multi-layer neural
Predicting Bike-Sharing network, and use it to analyze real data. In this project, you
will build and train neural networks from scratch to predict the
Patterns
number of bike-share users on a given day.

LEARNING OUTCOMES

• In this lesson, you will learn solid foundations on deep


Introduction to
LESSON ONE learning and neural networks. You’ll also implement
Neural Networks
gradient descent and backpropagation in Python.

• Mat and Luis will introduce you to a different error function


Implementing
LESSON TWO and guide you through implementing gradient descent
Gradient Descent
using NumPy matrix multiplication..

• Now that you know what neural networks are, in this


Training Neural lesson, you will learn several techniques to improve their
LESSON THREE
Networks training. Learn how to prevent overfitting of training data
and best practices for minimizing the error of a network.

• In this lesson, Andrew Trask, the author of Grokking Deep


Learning, will show you how to define and train a neural
LESSON FOUR Sentiment Analysis
networks for sentiment analysis (identifying and
categorizing opinions expressed in text).

Deep Learning WIth • Learn how to use PyTorch for building and testing deep
LESSON FIVE
Pytorch learning models

Deep Learning | 3
Need Help? Speak with an Advisor: www.udacity.com/advisor
Course 2: Convolutional Neural Networks
Learn how to build convolutional networks and use them to classify images (faces, melanomas, etc.) based
on patterns and objects that appear in them. Use these networks to learn data compression and image
denoising.

In this project, you will apply the skills you have acquired in the
course to build a landmark classifier. Photo-sharing services
or photo-storage services may use landmark classification to
automatically tag photos with relevant hashtags or location
markers. This type of functionality could be especially important
Course Project when photo location metadata is not available, which could
Landmark Classification happen when a photo is taken without metadata (e.g., phone was
on airplane mode, camera was old and without GPS) or if a photo
& Tagging for Social
has had its metadata scrubbed. In the project, you will go through
Media a machine learning design process end-to-end: performing data
preprocessing and augmentation, designing your own CNN from
scratch, and training and saving your best CNN model. You will also
use transfer learning and compare your transfer-learned model
with your from-scratch CNN.

LEARNING OUTCOMES

• Take advantage of Amazon’s GPUs to train your neural


LESSON ONE Cloud Computing network faster. In this lesson, you’ll setup an instance on
AWS and train a neural network on a GPU.

• Alexis and Cezanne explain how Convolutional Neural


Convolutional Neural Networks can be used to identify patterns in images and
LESSON TWO
Network how they help us dramatically improve performance in
image classification tasks.

• In this lesson, you’ll walk through an example Convolutional


Neural Network (CNN) in PyTorch. You’ll study the line-by-
LESSON THREE CNNs In PyTorch
line breakdown of the code and can download the code
and run it yourself.

Deep Learning | 4
Need Help? Speak with an Advisor: www.udacity.com/advisor
• In this lesson, you’ll learn how to find good initial weights
for a neural network. Having good initial weights often
LESSON FOUR Weight Initialization
allows a neural network to arrive at an optimal solution,
faster than without initialization.

• Autoencoders are neural networks used for data


LESSON FIVE Autoencoders compression, image denoising, and dimensionality
reduction. Here, you’ll build autoencoders using PyTorch.

• Most people don’t train their own networks on massive


Transfer Learning in datasets. In this lesson, you’ll learn how to finetune and
LESSON SIX
PyTorch use a pretrained network and apply it to a new task using
transfer learning.

• In this lesson, Sebastian Thrun teaches us about his


Deep Learning for
LESSON SEVEN groundbreaking work detecting skin cancer with
Cancer Detection
Convolutional Neural Networks.

Deep Learning | 5
Need Help? Speak with an Advisor: www.udacity.com/advisor
Course 3: Recurrent Neural Networks
Build your own recurrent networks and long short-term memory networks with PyTorch; perform sentiment
analysis and use recurrent networks to generate new text from TV scripts.

In this project, you will build your own Recurrent Networks and
Long Short-Term Memory Networks with PyTorch. You’ll perform
Course Project
sentiment analysis and generate new text, and use recurrent
Generate TV Scripts networks to generate new text that resembles a training set of TV
scripts.

LEARNING OUTCOMES

• Ortal will introduce Recurrent Neural Networks (RNNs),


Recurrent Neural
LESSON ONE which are machine learning models that are able to
Networks
recognize and act on sequences of inputs.

• Luis explains Long Short-Term Memory Networks (LSTM),


Long Short-Term
LESSON TWO and similar architectures that form a memory about a
Memory Network
sequence of inputs, over time.

Implementation of • Train recurrent neural networks to generate new


LESSON THREE
RNN & LSTM characters,words, and bodies of text.

• In this lesson, we’ll look at a number of different


hyperparameters that are important for our deep learning
LESSON FOUR Hyperparameters
work, such as learning rates. We’ll discuss starting values
and intuitions for tuning each hyperparameter.

• In this lesson, you’ll learn about embeddings in neural


Embeddings &
LESSON FIVE networks by implementing a word2vec model that converts
Word2vec
words into a representative vector of numerical values.

• In this lesson, you’ll learn to implement a recurrent neural


Sentiment Prediction
LESSON SIX network for predicting sentiment. This is intended to give
RNN
you more experience building RNNs.

Deep Learning | 6
Need Help? Speak with an Advisor: www.udacity.com/advisor
Course 4: Generative Adversarial Networks
Learn to understand and implement a Deep Convolutional GAN (generative adversarial network) to
generate realistic images, with Ian Goodfellow, the inventor of GANs, and Jun-Yan Zhu, the creator of
CycleGANs.

Learn to understand Generative Adversarial Networks with the


model’s inventor, Ian Goodfellow. Then, apply what you’ve learned
Course Project in this project and implement a Deep Convolutional GAN. This
Generate Faces DCGAN is made of a pair of multi-layer neural networks that
compete against each other until one learns to generate realistic
images of faces.

LEARNING OUTCOMES

Generative • Ian Goodfellow, the inventor of GANs, introduces you to these


LESSON ONE Adversarial exciting models. You’ll also implement your own GAN on a
Network simple dataset.

Deep Convolutional • Implement a Deep Convolutional GAN to generate complex,


LESSON TWO
GANs color images of house numbers.

• Jun-Yan Zhu and Cezanne lead you through a CycleGAN


LESSON THREE PIX2PIX & Cyclegan
formulation that can learn from unlabeled sets of images.

Deep Learning | 7
Need Help? Speak with an Advisor: www.udacity.com/advisor
Course 5: Updating a Model
In this project, you will train and deploy your own PyTorch sentiment analysis model using Amazon
SageMaker on AWS. This model will be trained to do sentiment analysis on movie reviews (positive or
negative reviews). You’ll build the model, deploy it, and create a gateway for accessing this model from a
website.

In this project, you will train and deploy your own PyTorch
Course Project sentiment analysis model using Amazon SageMaker on AWS. This
Deploying a Sentiment model will be trained to do sentiment analysis on movie reviews
Analysis Model (positive or negative reviews). You’ll build the model, deploy it, and
create a gateway for accessing this model from a website.

LEARNING OUTCOMES

• Learn where cloud deployment is used in industry and about


Introduction to
LESSON ONE various methods for deployment (websites, apps, etc.). Become
Deployment
familiar with cloud deployment terminology.

• Deploy a model using Amazon SageMaker and learn to apply


LESSON TWO Deploy a Model
built-in algorithms, like XGBoost, to a variety of tasks.

• In this lesson, you’ll train and deploy your own PyTorch model.
Custom Models & Then, see how to define a gateway using SageMaker to allow for
LESSON THREE
Web Hosting outside-access to your model. See how your model responds to
user input.

• In this lesson, learn how to interpret log messages and monitor


the behavior of your model over time. See how to implement
LESSON FOUR Model Monitoring
an A/B test, in SageMaker, to evaluate the performance of two
different models.

• Developing a machine learning model is an iterative process.


LESSON FIVE Updating a Model Learn how to look at indicators like data distribution to see if
you should update a model.

Deep Learning | 8
Need Help? Speak with an Advisor: www.udacity.com/advisor
Our Classroom Experience
REAL-WORLD PROJECTS
Build your skills through industry-relevant projects. Get
personalized feedback from our network of 900+ project
reviewers. Our simple interface makes it easy to submit
your projects as often as you need and receive unlimited
feedback on your work.

KNOWLEDGE
Find answers to your questions with Knowledge, our
proprietary wiki. Search questions asked by other students,
connect with technical mentors, and discover in real-time
how to solve the challenges that you encounter.

STUDENT HUB
Leverage the power of community through a simple, yet
powerful chat interface built within the classroom. Use
Student Hub to connect with fellow students in your
program as you support and learn from each other.

WORKSPACES
See your code in action. Check the output and quality of
your code by running them on workspaces that are a part
of our classroom.

QUIZZES
Check your understanding of concepts learned in the
program by answering simple and auto-graded quizzes.
Easily go back to the lessons to brush up on concepts
anytime you get an answer wrong.

CUSTOM STUDY PLANS


Preschedule your study times and save them to your
personal calendar to create a custom study plan. Program
regular reminders to keep track of your progress toward
your goals and completion of your program.

PROGRESS TRACKER
Stay on track to complete your Nanodegree program with
useful milestone reminders.

Deep Learning | 9
Need Help? Speak with an Advisor: www.udacity.com/advisor
Learn with the Best

Mat Leonard Luis Serrano


I N S T R U C TO R I N S T R U C TO R

Mat is a former physicist, research Luis was formerly a Machine Learning


neuroscientist, and data scientist. He did Engineer at Google. He holds a PhD in
his PhD and Postdoctoral Fellowship at mathematics from the University of
the University of California, Berkeley. Michigan, and a Postdoctoral Fellowship
at the University of Quebec at Montreal.

Cezanne Camacho A le x is Cook


C U R R I C U LU M L E A D I N S T R U C TO R

Cezanne is a computer vision expert with Alexis is an applied mathematician with


a Masters in Electrical Engineering from a Masters in computer science from
Stanford University. As a former genomics Brown University and a Masters in applied
and biomedical imaging researcher, she’s mathematics from the University of
applied computer vision and deep learning Michigan. She was formerly a National
to medical diagnostics. Science Foundation Graduate Research
Fellow.

Deep Learning | 10
Need Help? Speak with an Advisor: www.udacity.com/advisor
Learn with the Best

Jennifer Staab Sean Carrell


I N S T R U C TO R I N S T R U C TO R

Jennifer has a PhD in Computer Science Sean Carrell is a former research


and a Masters in Biostatistics; she mathematician specializing in Algebraic
was a professor at Florida Polytechnic Combinatorics. He completed his PhD and
University. She previously worked at RTI Postdoctoral Fellowship at the University
International and United Therapeutics as of Waterloo, Canada.
a statistician and computer scientist.

Ortal Arel Jay A lammar


I N S T R U C TO R I N S T R U C TO R

Ortal Arel is a former computer Jay has a degree in computer science,


engineering professor. She holds a Ph.D. in loves visualizing machine learning
Computer Engineering from the University concepts, and is the Investment Principal
of Tennessee. Her doctoral research work at STV, a $500 million venture capital fund
was in the area of applied cryptography. focused on high-technology startups.

Deep Learning | 11
Need Help? Speak with an Advisor: www.udacity.com/advisor
Learn with the Best

Daniel Jiang
I N S T R U C TO R

Daniel is a machine learning engineer


who studied computer science at the
University of California, Berkeley. He has
worked on machine learning research at a
variety of industry and academic groups.

Deep Learning | 12
Need Help? Speak with an Advisor: www.udacity.com/advisor
All Our Nanodegree Programs Include:

EXPERIENCED PROJECT REVIEWERS


REVIEWER SERVICES

• Personalized feedback & line by line code reviews


• 1600+ Reviewers with a 4.85/5 average rating
• 3 hour average project review turnaround time
• Unlimited submissions and feedback loops
• Practical tips and industry best practices
• Additional suggested resources to improve

TECHNICAL MENTOR SUPPORT


MENTORSHIP SERVICES

• Questions answered quickly by our team of


technical mentors
• 1000+ Mentors with a 4.7/5 average rating
• Support for all your technical questions

PERSONAL CAREER SERVICES

C AREER SUPPORT

• Resume support
• Github portfolio review
• LinkedIn profile optimization

Deep Learning | 13
Need Help? Speak with an Advisor: www.udacity.com/advisor
Frequently Asked Questions
PROGR AM OVERVIE W

WHY SHOULD I ENROLL?


In this program, you’ll master deep learning fundamentals that will prepare you
to launch or advance a career, and additionally pursue further advanced studies
in the field of artificial intelligence. You will study cutting-edge topics such as
neural, convolutional, recurrent neural, and generative adversarial networks, as
well as sentiment analysis model deployment. You will build projects in NumPy
and PyTorch. You will learn from experts in the field, and gain exclusive insights
from working professionals. For anyone interested in building expertise with this
transformational technology, this Nanodegree program is an ideal point-of-entry.

WHAT JOBS WILL THIS PROGRAM PREPARE ME FOR?


This program is designed to build on your skills in deep learning. As such, it
doesn’t prepare you for a specific job, but expands your skills in the deep learning
domain. These skills can be applied to various applications and also qualify you to
pursue further studies in the field.

HOW DO I KNOW IF THIS PROGRAM IS RIGHT FOR ME?


If you are interested in the fields of artificial intelligence and machine learning, this
Nanodegree program is the perfect way to get started!

ENROLLMENT AND ADMISSION

DO I NEED TO APPLY? WHAT ARE THE ADMISSION CRITERIA?


No. This Nanodegree program accepts all applicants regardless of experience and
specific background.

WHAT ARE THE PREREQUISITES FOR ENROLLMENT?


Students who are interested in enrolling must have intermediate-level Python
programming knowledge, and experience with NumPy and pandas. You will
need to be able to communicate fluently and professionally in written and
spoken English. Additionally, students must have the necessary math knowledge,
including: algebra and some calculus—specifically partial derivatives, and matrix
multiplication (linear algebra).

IF I DO NOT MEET THE REQUIREMENTS TO ENROLL, WHAT SHOULD I DO?


We have a number of Nanodegree programs and free courses that can help you
prepare, including:

• Introduction to Data Analysis


• Introduction to Computer Science
• Introduction to Python
• Linear Algebra Refresher
• Introduction to Programming Nanodegree program with
Data Analysis specialization

Deep Learning | 14
Need Help? Speak with an Advisor: www.udacity.com/advisor
FAQs Continued
TUITION AND TERM OF PROGR AM

HOW IS THIS NANODEGREE PROGRAM STRUCTURED?


The Deep Learning Nanodegree program is comprised of content and curriculum
to support five (5) projects. We estimate that students can complete the
program in four (4) months working 10 hours per week.

Each project will be reviewed by the Udacity reviewer network. Feedback will be
provided and if you do not pass the project, you will be asked to resubmit the
project until it passes.

HOW LONG IS THIS NANODEGREE PROGRAM?


Access to this Nanodegree program runs for the length of time specified in
the payment card above. If you do not graduate within that time period, you
will continue learning with month to month payments. See the Terms of Use
and FAQs for other policies regarding the terms of access to our Nanodegree
programs.

I HAVE GRADUATED FROM THE DEEP LEARNING NANODEGREE PROGRAM


BUT I WANT TO KEEP LEARNING. WHERE SHOULD I GO FROM HERE?
Graduates from this Nanodegree program earn guaranteed admitted status
into our more advanced Self-Driving Car Engineer or Flying Car Nanodegree
programs, subject to payment by student for the cost of enrollment for those
Nanodegree programs.

SOF T WARE AND HARDWARE

WHAT SOFTWARE AND VERSIONS WILL I NEED IN THIS PROGRAM?


Virtually any 64-bit operating with at least 8GB of RAM will be suitable. Students
should also have Python 3 and Jupyter Notebooks installed. For the more
intensive portions of the program that come later, we will be providing students
with AWS instances where geographically possible.

Deep Learning | 15
Need Help? Speak with an Advisor: www.udacity.com/advisor

You might also like