Nanodegree key: nd009t
Version: 1.0.0
Locale: en-us
Become a machine learning engineer and apply predictive models to massive data sets in fields like education, finance, healthcare or robotics.
Content
Part 01 : Machine Learning Foundations
Welcome to the Machine Learning Engineer Nanodegree program! In this first part, you'll meet the instructors and the career services team. You'll also learn about the program structure and get your first lesson on the basics of machine learning. Join the ML community! --> mlnd.slack.com
-
Module 01: Introduction to the Nanodegree
-
Lesson 01: Welcome to Machine Learning
Welcome to the Machine Learning Nanodegree program!
- Concept 01: Welcome to the Machine Learning Engineer Nanodegree Program
- Concept 02: Projects You Will Build
- Concept 03: Program Structure
- Concept 04: Deadline Policy
- Concept 05: Udacity Support
- Concept 06: Community Guidelines
- Concept 07: Program Readiness
- Concept 08: Week 1 Plan
- Concept 09: Week 2 Plan
-
Lesson 02: What is Machine Learning?
Explore some of the many machine learning concepts in just a few bite-sized lectures!
- Concept 01: What Is Machine Learning?
- Concept 02: Decision Trees
- Concept 03: Decision Trees Quiz
- Concept 04: Decision Trees Answer
- Concept 05: Naive Bayes
- Concept 06: Naive Bayes Quiz
- Concept 07: Naive Bayes Answer
- Concept 08: Gradient Descent
- Concept 09: Linear Regression Quiz
- Concept 10: Linear Regression Answer
- Concept 11: Logistic Regression Quiz
- Concept 12: Logistic Regression Answer
- Concept 13: Support Vector Machines
- Concept 14: Support Vector Machines Quiz
- Concept 15: Support Vector Machines Answer
- Concept 16: Neural Networks
- Concept 17: Kernel Method
- Concept 18: Kernel Method Quiz
- Concept 19: Kernel Method Answer
- Concept 20: Recap and Challenge
- Concept 21: K-means Clustering
- Concept 22: Hierarchical Clustering
- Concept 23: Summary
-
Lesson 03: Introductory Practice Project
In this practice project, you will create decision functions that attempt to predict survival outcomes from the 1912 Titanic disaster based on each passenger’s features, such as sex and age.
-
-
Module 02: Careers Orientation
-
Lesson 01: Career Services Available to You
The Careers team at Udacity is here to help you land your dream job - whether it's a new role or growing at your current company. Learn more about how we'll support you in your career growth.
-
Part 02 : Model Evaluation and Validation
-
Module 01: Training and Testing Models
-
Lesson 01: Training and Testing Models
Learn to train and test models with NumPy and Pandas.
- Concept 01: Intro
- Concept 02: Outline
- Concept 03: Stats Refresher
- Concept 04: Loading data into Pandas
- Concept 05: NumPy Arrays
- Concept 06: Training models in sklearn
- Concept 07: Tuning Parameters Manually
- Concept 08: Tuning Parameters Automatically
- Concept 09: Testing your models
- Concept 10: Quiz: Testing in sklearn
-
-
Module 02: Evaluation Metrics
-
Lesson 01: Evaluation Metrics
Learn the main metrics to evaluate models, such as accuracy, precision, recall, and more!
- Concept 01: Confusion Matrix
- Concept 02: Confusion Matrix 2
- Concept 03: Accuracy
- Concept 04: Accuracy 2
- Concept 05: When accuracy won't work
- Concept 06: False Negatives and Positives
- Concept 07: Precision and Recall
- Concept 08: Precision
- Concept 09: Recall
- Concept 10: F1 Score
- Concept 11: F-beta Score
- Concept 12: ROC Curve
- Concept 13: Regression Metrics
-
-
Module 03: Detecting and Fixing Errors
-
Lesson 01: Model Selection
Learn the main types of errors that can occur during training, and several methods to deal with them and optimize your machine learning models.
- Concept 01: Types of Errors
- Concept 02: Model Complexity Graph
- Concept 03: Cross Validation
- Concept 04: K-Fold Cross Validation
- Concept 05: Learning Curves
- Concept 06: Detecting Overfitting and Underfitting with Learning Curves
- Concept 07: Solution: Detecting Overfitting and Underfitting
- Concept 08: Grid Search
- Concept 09: Grid Search in sklearn
- Concept 10: Grid Search Lab
- Concept 11: [Solution] Grid Search Lab
- Concept 12: Summary
- Concept 13: Outro
-
-
Module 04: Practice Assessment
-
Lesson 01: NumPy and pandas Assessment
Test your NumPy and pandas skills with a quick assessment.
-
Lesson 02: Model Evaluation and Validation Assessment
Test your Model Evaluation and Validation concepts with a quick assessment.
-
-
Module 05: Predicting Housing Prices
-
Lesson 01: Predicting Boston Housing Prices
Put all you've learned into practice by building and optimizing a model to predict housing prices!
-
Part 03 : Supervised Learning
Learn how Supervised Learning models such as Decision Trees, SVMs, etc. are trained to model and predict labeled data.
-
Module 01: Supervised Learning
-
Lesson 01: Linear Regression
Linear regression is a very effective algorithm to predict numerical data.
- Concept 01: Intro
- Concept 02: Quiz: Housing Prices
- Concept 03: Solution: Housing Prices
- Concept 04: Fitting a Line Through Data
- Concept 05: Moving a Line
- Concept 06: Absolute Trick
- Concept 07: Square Trick
- Concept 08: Gradient Descent
- Concept 09: Mean Absolute Error
- Concept 10: Mean Squared Error
- Concept 11: Minimizing Error Functions
- Concept 12: Mean vs Total Error
- Concept 13: Mini-batch Gradient Descent
- Concept 14: Absolute Error vs Squared Error
- Concept 15: Linear Regression in scikit-learn
- Concept 16: Higher Dimensions
- Concept 17: Multiple Linear Regression
- Concept 18: Closed Form Solution
- Concept 19: (Optional) Closed form Solution Math
- Concept 20: Linear Regression Warnings
- Concept 21: Polynomial Regression
- Concept 22: Regularization
- Concept 23: Outro
-
Lesson 02: Perceptron Algorithm
The perceptron algorithm is an algorithm for classifying data. It is the building block of neural networks.
- Concept 01: Intro
- Concept 02: Classification Problems 1
- Concept 03: Classification Problems 2
- Concept 04: Linear Boundaries
- Concept 05: Higher Dimensions
- Concept 06: Perceptrons
- Concept 07: Perceptrons as Logical Operators
- Concept 08: Perceptron Trick
- Concept 09: Perceptron Algorithm
- Concept 10: Outro
-
Lesson 03: Decision Trees
Decision trees are a structure for decision-making where each decision leads to a set of consequences or additional decisions.
- Concept 01: Intro
- Concept 02: Recommending Apps 1
- Concept 03: Recommending Apps 2
- Concept 04: Recommending Apps 3
- Concept 05: Quiz: Student Admissions
- Concept 06: Solution: Student Admissions
- Concept 07: Entropy
- Concept 08: Entropy Formula 1
- Concept 09: Entropy Formula 2
- Concept 10: Entropy Formula 3
- Concept 11: Multiclass Entropy
- Concept 12: Quiz: Information Gain
- Concept 13: Solution: Information Gain
- Concept 14: Maximizing Information Gain
- Concept 15: Random Forests
- Concept 16: Hyperparameters
- Concept 17: Decision Trees in sklearn
- Concept 18: Titanic Survival Model with Decision Trees
- Concept 19: [Solution] Titanic Survival Model
- Concept 20: Outro
-
Lesson 04: Naive Bayes
Naive Bayesian Algorithms are powerful tools for creating classifiers for incoming labeled data.
- Concept 01: Intro
- Concept 02: Guess the Person
- Concept 03: Known and Inferred
- Concept 04: Guess the Person Now
- Concept 05: Bayes Theorem
- Concept 06: Quiz: False Positives
- Concept 07: Solution: False Positives
- Concept 08: Bayesian Learning 1
- Concept 09: Bayesian Learning 2
- Concept 10: Bayesian Learning 3
- Concept 11: Naive Bayes Algorithm 1
- Concept 12: Naive Bayes Algorithm 2
- Concept 13: Building a Spam Classifier
- Concept 14: Project
- Concept 15: Spam Classifier - Workspace
- Concept 16: Outro
-
Lesson 05: Support Vector Machines
Support vector machines are very effective models used for classification.
- Concept 01: Intro
- Concept 02: Which line is better?
- Concept 03: Minimizing Distances
- Concept 04: Error Function Intuition
- Concept 05: Perceptron Algorithm
- Concept 06: Classification Error
- Concept 07: Margin Error
- Concept 08: (Optional) Margin Error Calculation
- Concept 09: Error Function
- Concept 10: The C Parameter
- Concept 11: Polynomial Kernel 1
- Concept 12: Polynomial Kernel 2
- Concept 13: Polynomial Kernel 3
- Concept 14: RBF Kernel 1
- Concept 15: RBF Kernel 2
- Concept 16: RBF Kernel 3
- Concept 17: SVMs in sklearn
- Concept 18: Outro
-
Lesson 06: Ensemble Methods
Bagging and boosting are two common ensemble methods for improving the accuracy of supervised learning approaches.
-
Lesson 07: Supervised Learning Assessment
Test your Supervised Learning concepts with a quick assessment.
-
Lesson 08: Supervised Learning Project
You've covered a wide variety of methods for performing supervised learning -- now it's time to put those into action!
-
Part 04 : Unsupervised Learning
Learn how to find patterns and structures in unlabeled data, perform feature transformations and improve the predictive performance of your models.
-
Module 01: Introduction to Unsupervised Learning
-
Module 02: Clustering
-
Lesson 01: Clustering
Clustering is one of the most common methods of unsupervised learning. Here, we'll discuss the K-means clustering algorithm.
- Concept 01: Introduction
- Concept 02: Unsupervised Learning
- Concept 03: Clustering Movies
- Concept 04: How Many Clusters?
- Concept 05: Match Points with Clusters
- Concept 06: Optimizing Centers (Rubber Bands)
- Concept 07: Moving Centers 2
- Concept 08: Match Points (again)
- Concept 09: Handoff to Katie
- Concept 10: K-Means Cluster Visualization
- Concept 11: K-Means Clustering Visualization 2
- Concept 12: K-Means Clustering Visualization 3
- Concept 13: Sklearn
- Concept 14: Some challenges of k-means
- Concept 15: Limitations of K-Means
- Concept 16: Counterintuitive Clusters
- Concept 17: Counterintuitive Clusters 2
-
Lesson 02: Clustering Mini-Project
In this mini-project, you will use K-means to cluster movie ratings and use those clusters to provide movie recommendations.
-
Lesson 03: Hierarchical and Density-based Clustering
We continue to look at clustering methods. Here, we'll discuss hierarchical clustering and density-based clustering (DBSCAN).
- Concept 01: K-means considerations
- Concept 02: Overview of other clustering methods
- Concept 03: Hierarchical clustering: single-link
- Concept 04: Examining single-link clustering
- Concept 05: Complete-link, average-link, Ward
- Concept 06: Hierarchical clustering implementation
- Concept 07: [Lab] Hierarchical clustering
- Concept 08: [Lab Solution] Hierarchical Clustering
- Concept 09: HC examples and applications
- Concept 10: [Quiz] Hierarchical clustering
- Concept 11: DBSCAN
- Concept 12: DBSCAN implementation
- Concept 13: [Lab] DBSCAN
- Concept 14: [Lab Solution] DBSCAN
- Concept 15: DBSCAN examples & applications
- Concept 16: [Quiz] DBSCAN
-
Lesson 04: Gaussian Mixture Models and Cluster Validation
In this lesson, we discuss Gaussian mixture model clustering. We then talk about the cluster analysis process and how to validate clustering results.
- Concept 01: Intro
- Concept 02: Gaussian Mixture Model (GMM) Clustering
- Concept 03: Gaussian Distribution in One Dimension
- Concept 04: GMM Clustering in One Dimension
- Concept 05: Gaussian Distribution in 2D
- Concept 06: GMM in 2D
- Concept 07: Quiz: Gaussian Mixtures
- Concept 08: Overview of The Expectation Maximization (EM) Algorithm
- Concept 09: Expectation Maximization Part 1
- Concept 10: Expectation Maximization Part 2
- Concept 11: Visual Example of EM Progress
- Concept 12: Quiz: Expectation Maximization
- Concept 13: GMM Implementation
- Concept 14: GMM Examples & Applications
- Concept 15: Cluster Analysis Process
- Concept 16: Cluster Validation
- Concept 17: External Validation Indices
- Concept 18: Quiz: Adjusted Rand Index
- Concept 19: Internal Validation Indices
- Concept 20: Quiz: Silhouette Coefficient
- Concept 21: GMM & Cluster Validation Lab
- Concept 22: GMM & Cluster Validation Lab Solution
-
-
Module 03: Feature Scaling
-
Lesson 01: Feature Scaling
Feature scaling is an important pre-processing step when performing unsupervised learning to allow multiple features to be analyzed together.
- Concept 01: Chris's T-Shirt Size (Intuition)
- Concept 02: A Metric for Chris
- Concept 03: Height + Weight for Cameron
- Concept 04: Sarah's Height + Weight
- Concept 05: Chris's Shirt Size by Our Metric
- Concept 06: Comparing Features with Different Scales
- Concept 07: Feature Scaling Formula Quiz 1
- Concept 08: Feature Scaling Formula Quiz 2
- Concept 09: Feature Scaling Formula Quiz 3
- Concept 10: Min/Max Rescaler Coding Quiz
- Concept 11: Min/Max Scaler in sklearn
- Concept 12: Quiz on Algorithms Requiring Rescaling
-
-
Module 04: Dimensionality Reduction
-
Lesson 01: PCA
PCA, principal component analysis, is a method for feature selection that turns a set of correlated variables into the underlying set of orthogonal variables.
- Concept 01: Data Dimensionality
- Concept 02: Trickier Data Dimensionality
- Concept 03: One-Dimensional, or Two?
- Concept 04: Slightly Less Perfect Data
- Concept 05: Trickiest Data Dimensionality
- Concept 06: PCA for Data Transformation
- Concept 07: Center of a New Coordinate System
- Concept 08: Principal Axis of New Coordinate System
- Concept 09: Second Principal Component of New System
- Concept 10: Practice Finding Centers
- Concept 11: Practice Finding New Axes
- Concept 12: Which Data is Ready for PCA
- Concept 13: When Does an Axis Dominate
- Concept 14: Measurable vs. Latent Features Quiz
- Concept 15: From Four Features to Two
- Concept 16: Compression While Preserving Information
- Concept 17: Composite Features
- Concept 18: Maximal Variance
- Concept 19: Advantages of Maximal Variance
- Concept 20: Maximal Variance and Information Loss
- Concept 21: Info Loss and Principal Components
- Concept 22: Neighborhood Composite Feature
- Concept 23: PCA for Feature Transformation
- Concept 24: Maximum Number of PCs Quiz
- Concept 25: Review/Definition of PCA
- Concept 26: Applying PCA to Real Data
- Concept 27: PCA on the Enron Finance Data
- Concept 28: PCA in sklearn
- Concept 29: When to Use PCA
- Concept 30: PCA for Facial Recognition
- Concept 31: Eigenfaces Code
-
-
Module 05: PCA Mini-Project
-
Lesson 01: PCA Mini-Project
In this mini-project, you'll apply principal component analysis to facial recognition.
-
-
Module 06: Random Projection and ICA
-
Lesson 01: Random Projection and ICA
In this lesson, we will look at two methods for feature extraction and dimensionality reduction: Random Projection and Independent Component Analysis (ICA)
- Concept 01: Random Projection
- Concept 02: Random Projection
- Concept 03: Random Projection in sklearn
- Concept 04: Independent Component Analysis (ICA)
- Concept 05: FastICA Algorithm
- Concept 06: ICA
- Concept 07: ICA in sklearn
- Concept 08: [Lab] Independent Component Analysis
- Concept 09: [Solution] Independent Component Analysis
- Concept 10: ICA Applications
-
-
Module 07: Unsupervised Learning Assessment
-
Lesson 01: Unsupervised Learning Assessment
Test your understanding of unsupervised learning with a quick assessment.
-
-
Module 08: Unsupervised Learning Project
Part 05 : Deep Learning
In this section, we will learn about TensorFlow, Neural Networks and Convolutional Neural Networks.
-
Module 01: Deep Learning
-
Lesson 01: Neural Networks
Luis will give you an overview of logistic regression, gradient descent, and the building blocks of neural networks.
- Concept 01: Announcement
- Concept 02: Introduction
- Concept 03: Classification Problems 1
- Concept 04: Classification Problems 2
- Concept 05: Linear Boundaries
- Concept 06: Higher Dimensions
- Concept 07: Perceptrons
- Concept 08: Perceptrons as Logical Operators
- Concept 09: Why "Neural Networks"?
- Concept 10: Perceptron Trick
- Concept 11: Perceptron Algorithm
- Concept 12: Non-Linear Regions
- Concept 13: Error Functions
- Concept 14: Log-loss Error Function
- Concept 15: Discrete vs Continuous
- Concept 16: Softmax
- Concept 17: One-Hot Encoding
- Concept 18: Maximum Likelihood
- Concept 19: Maximizing Probabilities
- Concept 20: Cross-Entropy 1
- Concept 21: Cross-Entropy 2
- Concept 22: Multi-Class Cross Entropy
- Concept 23: Logistic Regression
- Concept 24: Gradient Descent
- Concept 25: Logistic Regression Algorithm
- Concept 26: Pre-Lab: Gradient Descent
- Concept 27: Notebook: Gradient Descent
- Concept 28: Perceptron vs Gradient Descent
- Concept 29: Outro
-
Lesson 02: Cloud Computing
Take advantage of Amazon's GPUs to train your neural network faster. In this lesson, you'll setup an instance on AWS and train a neural network on a GPU.
-
Lesson 03: Deep Neural Networks
A deeper dive into backpropagation and the training process of neural networks, including techniques to improve the training.
- Concept 01: Non-linear Data
- Concept 02: Continuous Perceptrons
- Concept 03: Non-Linear Models
- Concept 04: Neural Network Architecture
- Concept 05: Feedforward
- Concept 06: Backpropagation
- Concept 07: Keras
- Concept 08: Pre-Lab: Student Admissions in Keras
- Concept 09: Lab: Student Admissions in Keras
- Concept 10: Training Optimization
- Concept 11: Early Stopping
- Concept 12: Regularization
- Concept 13: Regularization 2
- Concept 14: Dropout
- Concept 15: Local Minima
- Concept 16: Vanishing Gradient
- Concept 17: Other Activation Functions
- Concept 18: Batch vs Stochastic Gradient Descent
- Concept 19: Learning Rate Decay
- Concept 20: Random Restart
- Concept 21: Momentum
- Concept 22: Optimizers in Keras
- Concept 23: Error Functions Around the World
- Concept 24: Neural Network Regression
- Concept 25: Neural Networks Playground
- Concept 26: Mini Project Intro
- Concept 27: Pre-Lab: IMDB Data in Keras
- Concept 28: Lab: IMDB Data in Keras
- Concept 29: Outro
-
Lesson 04: Convolutional Neural Networks
Alexis explains the theory behind Convolutional Neural Networks and how they help us dramatically improve performance in image classification.
- Concept 01: Introducing Alexis
- Concept 02: Applications of CNNs
- Concept 03: How Computers Interpret Images
- Concept 04: MLPs for Image Classification
- Concept 05: Categorical Cross-Entropy
- Concept 06: Model Validation in Keras
- Concept 07: When do MLPs (not) work well?
- Concept 08: Mini project: Training an MLP on MNIST
- Concept 09: Local Connectivity
- Concept 10: Convolutional Layers (Part 1)
- Concept 11: Convolutional Layers (Part 2)
- Concept 12: Stride and Padding
- Concept 13: Convolutional Layers in Keras
- Concept 14: Quiz: Dimensionality
- Concept 15: Pooling Layers
- Concept 16: Max Pooling Layers in Keras
- Concept 17: CNNs for Image Classification
- Concept 18: CNNs in Keras: Practical Example
- Concept 19: Mini project: CNNs in Keras
- Concept 20: Image Augmentation in Keras
- Concept 21: Mini project: Image Augmentation in Keras
- Concept 22: Groundbreaking CNN Architectures
- Concept 23: Visualizing CNNs (Part 1)
- Concept 24: Visualizing CNNs (Part 2)
- Concept 25: Transfer Learning
- Concept 26: Transfer Learning in Keras
-
Lesson 05: Deep Learning for Cancer Detection with Sebastian Thrun
In this lesson, Sebastian Thrun teaches us about his groundbreaking work detecting skin cancer with convolutional neural networks.
- Concept 01: Intro
- Concept 02: Skin Cancer
- Concept 03: Survival Probability of Skin Cancer
- Concept 04: Medical Classification
- Concept 05: The data
- Concept 06: Image Challenges
- Concept 07: Quiz: Data Challenges
- Concept 08: Solution: Data Challenges
- Concept 09: Training the Neural Network
- Concept 10: Quiz: Random vs Pre-initialized Weights
- Concept 11: Solution: Random vs Pre-initialized Weight
- Concept 12: Validating the Training
- Concept 13: Quiz: Sensitivity and Specificity
- Concept 14: Solution: Sensitivity and Specificity
- Concept 15: More on Sensitivity and Specificity
- Concept 16: Quiz: Diagnosing Cancer
- Concept 17: Solution: Diagnosing Cancer
- Concept 18: Refresh on ROC Curves
- Concept 19: Quiz: ROC Curve
- Concept 20: Solution: ROC Curve
- Concept 21: Comparing our Results with Doctors
- Concept 22: Visualization
- Concept 23: What is the network looking at?
- Concept 24: Refresh on Confusion Matrices
- Concept 25: Confusion Matrix
- Concept 26: Conclusion
- Concept 27: Useful Resources
- Concept 28: Mini Project Introduction
- Concept 29: Mini Project: Dermatologist AI
-
Lesson 06: Deep Learning Assessment
Test your Deep Learning concepts with a quick assessment.
-
Part 06 : Reinforcement Learning
Use Reinforcement Learning algorithms like Q-Learning to train artificial agents to take optimal actions in an environment.
-
Module 01: Reinforcement Learning
-
Lesson 01: Introduction to RL
Reinforcement learning is a type of machine learning where the machine or software agent learns how to maximize its performance at a task.
-
Lesson 02: The RL Framework: The Problem
Learn how to mathematically formulate tasks as Markov Decision Processes.
- Concept 01: Introduction
- Concept 02: The Setting, Revisited
- Concept 03: Episodic vs. Continuing Tasks
- Concept 04: Quiz: Test Your Intuition
- Concept 05: Quiz: Episodic or Continuing?
- Concept 06: The Reward Hypothesis
- Concept 07: Goals and Rewards, Part 1
- Concept 08: Goals and Rewards, Part 2
- Concept 09: Quiz: Goals and Rewards
- Concept 10: Cumulative Reward
- Concept 11: Discounted Return
- Concept 12: Quiz: Pole-Balancing
- Concept 13: MDPs, Part 1
- Concept 14: MDPs, Part 2
- Concept 15: Quiz: One-Step Dynamics, Part 1
- Concept 16: Quiz: One-Step Dynamics, Part 2
- Concept 17: MDPs, Part 3
- Concept 18: Finite MDPs
- Concept 19: Summary
-
Lesson 03: The RL Framework: The Solution
In reinforcement learning, agents learn to prioritize different decisions based on the rewards and punishments associated with different outcomes.
- Concept 01: Introduction
- Concept 02: Policies
- Concept 03: Quiz: Interpret the Policy
- Concept 04: Gridworld Example
- Concept 05: State-Value Functions
- Concept 06: Bellman Equations
- Concept 07: Quiz: State-Value Functions
- Concept 08: Optimality
- Concept 09: Action-Value Functions
- Concept 10: Quiz: Action-Value Functions
- Concept 11: Optimal Policies
- Concept 12: Quiz: Optimal Policies
- Concept 13: Summary
-
Lesson 04: Dynamic Programming
The dynamic programming setting is a useful first step towards tackling the reinforcement learning problem.
- Concept 01: Introduction
- Concept 02: OpenAI Gym: FrozenLakeEnv
- Concept 03: Your Workspace
- Concept 04: Another Gridworld Example
- Concept 05: An Iterative Method, Part 1
- Concept 06: An Iterative Method, Part 2
- Concept 07: Quiz: An Iterative Method
- Concept 08: Iterative Policy Evaluation
- Concept 09: Implementation
- Concept 10: Mini Project: DP (Parts 0 and 1)
- Concept 11: Action Values
- Concept 12: Implementation
- Concept 13: Mini Project: DP (Part 2)
- Concept 14: Policy Improvement
- Concept 15: Implementation
- Concept 16: Mini Project: DP (Part 3)
- Concept 17: Policy Iteration
- Concept 18: Implementation
- Concept 19: Mini Project: DP (Part 4)
- Concept 20: Truncated Policy Iteration
- Concept 21: Implementation
- Concept 22: Mini Project: DP (Part 5)
- Concept 23: Value Iteration
- Concept 24: Implementation
- Concept 25: Mini Project: DP (Part 6)
- Concept 26: Check Your Understanding
- Concept 27: Summary
-
Lesson 05: Monte Carlo Methods
Write your own implementation of Monte Carlo control to teach an agent to play Blackjack!
- Concept 01: Introduction
- Concept 02: OpenAI Gym: BlackjackEnv
- Concept 03: MC Prediction: State Values
- Concept 04: Implementation
- Concept 05: Mini Project: MC (Parts 0 and 1)
- Concept 06: MC Prediction: Action Values
- Concept 07: Implementation
- Concept 08: Mini Project: MC (Part 2)
- Concept 09: Generalized Policy Iteration
- Concept 10: MC Control: Incremental Mean
- Concept 11: Quiz: Incremental Mean
- Concept 12: MC Control: Policy Evaluation
- Concept 13: MC Control: Policy Improvement
- Concept 14: Quiz: Epsilon-Greedy Policies
- Concept 15: Exploration vs. Exploitation
- Concept 16: Implementation
- Concept 17: Mini Project: MC (Part 3)
- Concept 18: MC Control: Constant-alpha, Part 1
- Concept 19: MC Control: Constant-alpha, Part 2
- Concept 20: Implementation
- Concept 21: Mini Project: MC (Part 4)
- Concept 22: Summary
-
Lesson 06: Temporal-Difference Methods
Learn about how to apply temporal-difference methods such as Sarsa, Q-Learning, and Expected Sarsa to solve both episodic and continuous tasks.
- Concept 01: Introduction
- Concept 02: OpenAI Gym: CliffWalkingEnv
- Concept 03: TD Prediction: TD(0)
- Concept 04: Implementation
- Concept 05: Mini Project: TD (Parts 0 and 1)
- Concept 06: TD Prediction: Action Values
- Concept 07: TD Control: Sarsa(0)
- Concept 08: Implementation
- Concept 09: Mini Project: TD (Part 2)
- Concept 10: TD Control: Sarsamax
- Concept 11: Implementation
- Concept 12: Mini Project: TD (Part 3)
- Concept 13: TD Control: Expected Sarsa
- Concept 14: Implementation
- Concept 15: Mini Project: TD (Part 4)
- Concept 16: Analyzing Performance
- Concept 17: Summary
-
Lesson 07: Solve OpenAI Gym's Taxi-v2 Task
With reinforcement learning now in your toolbox, you're ready to explore a mini project using OpenAI Gym!
-
-
Module 02: Deep Reinforcement Learning
-
Lesson 01: RL in Continuous Spaces
Review the fundamental concepts of reinforcement learning, and learn how to adapt traditional algorithms to work with continuous spaces.
- Concept 01: Deep Reinforcement Learning
- Concept 02: Resources
- Concept 03: Discrete vs. Continuous Spaces
- Concept 04: Quiz: Space Representations
- Concept 05: Discretization
- Concept 06: Exercise: Discretization
- Concept 07: Tile Coding
- Concept 08: Exercise: Tile Coding
- Concept 09: Coarse Coding
- Concept 10: Function Approximation
- Concept 11: Linear Function Approximation
- Concept 12: Kernel Functions
- Concept 13: Non-Linear Function Approximation
- Concept 14: Summary
-
Lesson 02: Deep Q-Learning
Extend value-based reinforcement learning methods to complex problems using deep neural networks.
- Concept 01: Intro to Deep Q-Learning
- Concept 02: Neural Nets as Value Functions
- Concept 03: Monte Carlo Learning
- Concept 04: Temporal Difference Learning
- Concept 05: Q-Learning
- Concept 06: Deep Q Network
- Concept 07: Experience Replay
- Concept 08: Fixed Q Targets
- Concept 09: Deep Q-Learning Algorithm
- Concept 10: DQN Improvements
- Concept 11: Implementing Deep Q-Learning
- Concept 12: TensorFlow Implementation
- Concept 13: Wrap Up
-
Lesson 03: Policy-Based Methods
Policy-based methods try to directly optimize for the optimal policy. Learn how they work, and why they are important, especially for domains with continuous action spaces.
-
Lesson 04: Actor-Critic Methods
Learn how to combine value-based and policy-based methods, bringing together the best of both worlds, to solve challenging reinforcement learning problems.
-
Lesson 05: Teach a Quadcopter How to Fly
Build a quadcopter flying agent that learns to take off, hover and land using reinforcement learning.
-
-
Module 03: Practice Assessment
-
Lesson 01: Reinforcement Learning Assessment
Test your understanding of reinforcement learning with a quick assessment.
-
Part 07 : Machine Learning Capstone
Have an idea of a problem in the real world that can be solved using machine learning? Here you have the opportunity to do just that using a dataset of your choice.
-
Module 01: Capstone Proposal
-
Lesson 01: Writing up a Capstone Proposal
Before working on a machine learning problem, write up a proposal of your project to get valuable feedback!
-
-
Module 02: Capstone Project
-
Lesson 01: Machine Learning Capstone Project
Now you will put your Machine Learning skills to the test by solving a real world problem using the algorithms you have learned in the program so far.
-
Part 08 (Career): Career: Job Search Strategies
Opportunity can come when you least expect it, so when your dream job comes along, you want to be ready.
-
Module 01: Conduct a Job Search
-
Lesson 01: Conduct a Job Search
Learn how to search for jobs effectively through industry research, and targeting your application to a specific role.
-
-
Module 02: Refine Your Resume
-
Lesson 01: Refine Your Entry-Level Resume
Receive a personalized review of your resume. This resume review is best suited for applicants who have 0-3 years of work experience in any industry.
-
Lesson 02: Refine Your Career Change Resume
Receive a personalized review of your resume. This resume review is best suited for applicants who have 3+ years of work experience in an unrelated field.
-
Lesson 03: Refine Your Prior Industry Experience Resume
Receive a personalized review of your resume. This resume review is best suited for applicants who have 3+ years of work experience in a related field.
Project Description - Resume Review Project (Prior Industry Experience)
Project Rubric - Resume Review Project (Prior Industry Experience)
- Concept 01: Convey Your Skills Concisely
- Concept 02: Effective Resume Components
- Concept 03: Resume Structure
- Concept 04: Describe Your Work Experiences
- Concept 05: Resume Reflection
- Concept 06: Resume Review
- Concept 07: Resume Review (Prior Industry Experience)
- Concept 08: Resources in Your Career Portal
-
-
Module 03: Write an Effective Cover Letter
-
Lesson 01: Craft Your Cover Letter
Get a personalized review of your cover letter. A successful cover letter will convey your enthusiasm, specific technical qualifications, and communication skills applicable to the position.
-
Part 09 (Career): Career: Networking
Networking is a very important component to a successful job search. In the following lesson, you will learn how tell your unique story to recruiters in a succinct and professional but relatable way.
-
Module 01: Develop Your Personal Brand
-
Lesson 01: Develop Your Personal Brand
In this lesson, learn how to tell your unique story in a succinct and professional way. Communicate to employers that you know how to solve problems, overcome challenges, and achieve results.
-
Lesson 02: LinkedIn Review
Optimize your LinkedIn profile to show up in recruiter searches, build your network, and attract employers. Learn to read your LinkedIn profile through the lens of a recruiter or hiring manager.
-
Lesson 03: Udacity Professional Profile
Update and personalize your Udacity Professional Profile as you complete your Nanodegree program, and make your Profile visible to Udacity hiring partners when you’re ready to start your job search.
-
-
Module 02: GitHub Profile Review
-
Lesson 01: GitHub Review
Review how your GitHub profile, projects, and code represent you as a potential job candidate. Learn to assess your GitHub profile through the eyes of a recruiter or hiring manager.
- Concept 01: Introduction
- Concept 02: GitHub profile important items
- Concept 03: Good GitHub repository
- Concept 04: Interview with Art - Part 1
- Concept 05: Identify fixes for example “bad” profile
- Concept 06: Quick Fixes #1
- Concept 07: Quick Fixes #2
- Concept 08: Writing READMEs with Walter
- Concept 09: Interview with Art - Part 2
- Concept 10: Commit messages best practices
- Concept 11: Reflect on your commit messages
- Concept 12: Participating in open source projects
- Concept 13: Interview with Art - Part 3
- Concept 14: Participating in open source projects 2
- Concept 15: Starring interesting repositories
- Concept 16: Outro
- Concept 17: Resources in Your Career Portal
-
Part 10 (Career): Career: Machine Learning Interview Practice
Now that you've practiced your skills through your project work, learn how you can present your knowledge in an interview.
-
Module 01: Interview Practice (Machine Learning)
-
Lesson 01: Ace Your Interview
Learn strategies to prepare yourself for an interview.
-
Lesson 02: Practice Behavioral Questions
Practice answering behavioral questions and evaluate sample responses.
- Concept 01: Introduction
- Concept 02: Self-Practice: Behavioral Questions
- Concept 03: Analyzing Behavioral Answers
- Concept 04: Time When You Showed Initiative?
- Concept 05: What Motivates You at the Workplace?
- Concept 06: A Problem and How You Dealt With It?
- Concept 07: What Do You Know About the Company?
- Concept 08: Time When You Dealt With Failure?
-
Lesson 03: Interview Fails
Some real-life examples of interviews that didn't go as expected - it happens all the time!
-
Lesson 04: Land a Job Offer
You're practiced a lot for the interview by now. Continue practicing, and you'll ace the interview!
-
Lesson 05: Interview Practice
Watch a sample interview for a Machine Learning Engineer position and analyze the candidate's responses
- Concept 01: Introduction
- Concept 02: Mindset and Skills
- Concept 03: Analyzing an Interview
- Concept 04: Q1 - Predict Rain
- Concept 05: Q2 - Identify Fish
- Concept 06: Q3 - Detect Plagiarism
- Concept 07: Q4 - Reduce Data Dimensionality
- Concept 08: Q5 - Describe Your ML Project
- Concept 09: Q6 - Explain How SVMs Work
- Concept 10: Arpan's Analysis of the Interview
- Concept 11: Keep Practicing!
- Concept 12: Resources in Your Career Portal
-
-
Module 02: Data Structures & Algorithms with Python
-
Lesson 01: Introduction and Efficiency
Begin the section on data structures and algorithms, including Python and efficiency practice.
- Concept 01: Course Introduction
- Concept 02: Course Outline
- Concept 03: Course Expectations
- Concept 04: Syntax
- Concept 05: Python Practice
- Concept 06: Python: The Basics
- Concept 07: Efficiency
- Concept 08: Notation Intro
- Concept 09: Notation Continued
- Concept 10: Worst Case and Approximation
- Concept 11: Efficiency Practice
-
Lesson 02: List-Based Collections
Learn the definition of a list in computer science, and see definitions and examples of list-based data structures, arrays, linked lists, stacks, and queues.
- Concept 01: Welcome to Collections
- Concept 02: Lists
- Concept 03: Arrays
- Concept 04: Python Lists
- Concept 05: Linked Lists
- Concept 06: Linked Lists in Depth
- Concept 07: Linked List Practice
- Concept 08: Stacks
- Concept 09: Stacks Details
- Concept 10: Stack Practice
- Concept 11: Queues
- Concept 12: Queue Practice
-
Lesson 03: Searching and Sorting
Explore how to search and sort with list-based data structures, including binary search and bubble, merge, and quick sort. Learn how to use recursion.
- Concept 01: Binary Search
- Concept 02: Efficiency of Binary Search
- Concept 03: Binary Search Practice
- Concept 04: Recursion
- Concept 05: Recursion Practice
- Concept 06: Intro to Sorting
- Concept 07: Bubble Sort
- Concept 08: Efficiency of Bubble Sort
- Concept 09: Bubble Sort Practice
- Concept 10: Merge Sort
- Concept 11: Efficiency of Merge Sort
- Concept 12: Merge Sort Practice
- Concept 13: Quick Sort
- Concept 14: Efficiency of Quick Sort
- Concept 15: Quick Sort Practice
-
Lesson 04: Maps and Hashing
Understand the concepts of sets, maps (dictionaries), and hashing. Examine common problems and approaches to hashing, and practice with examples.
-
Lesson 05: Trees
Learn the concepts and terminology associated with tree data structures. Investigate tree types, such as binary search trees, heaps, and self-balancing trees.
- Concept 01: Trees
- Concept 02: Tree Basics
- Concept 03: Tree Terminology
- Concept 04: Tree Practice
- Concept 05: Tree Traversal
- Concept 06: Depth-First Traversals
- Concept 07: Tree Traversal Practice
- Concept 08: Search and Delete
- Concept 09: Insert
- Concept 10: Binary Search Trees
- Concept 11: Binary Tree Practice
- Concept 12: BSTs
- Concept 13: BST Complications
- Concept 14: BST Practice
- Concept 15: Heaps
- Concept 16: Heapify
- Concept 17: Heap Implementation
- Concept 18: Self-Balancing Trees
- Concept 19: Red-Black Trees - Insertion
- Concept 20: Tree Rotations
-
Lesson 06: Graphs
Examine the theoretical concept of a graph and understand common graph terms, coded representations, properties, traversals, and paths.
- Concept 01: Graph Introduction
- Concept 02: What Is a Graph?
- Concept 03: Directions and Cycles
- Concept 04: Connectivity
- Concept 05: Graph Practice
- Concept 06: Graph Representations
- Concept 07: Adjacency Matrices
- Concept 08: Graph Representation Practice
- Concept 09: Graph Traversal
- Concept 10: DFS
- Concept 11: BFS
- Concept 12: Graph Traversal Practice
- Concept 13: Eulerian Path
-
Lesson 07: Case Studies in Algorithms
Explore famous computer science problems, specifically the Shortest Path Problem, the Knapsack Problem, and the Traveling Salesman Problem.
-
Lesson 08: Technical Interview - Python
Practice with five technical interviewing questions on topics discussed in the data structures and algorithms course and get a personalized review on both your code and solutions.
- Concept 01: Interview Introduction
- Concept 02: Clarifying the Question
- Concept 03: Confirming Inputs
- Concept 04: Test Cases
- Concept 05: Brainstorming
- Concept 06: Runtime Analysis
- Concept 07: Coding
- Concept 08: Coding 2
- Concept 09: Debugging
- Concept 10: Interview Wrap-Up
- Concept 11: Time for Live Practice with Pramp
- Concept 12: Next Steps
- Concept 13: Resources in Your Career Portal
- Concept 14: Project Description
-
Part 11 (Elective): Deep Learning - Tensorflow
-
Module 01: Machine Learning to Deep Learning
-
Lesson 01: Software and Tools
How to setup TensorFlow and fetch assignment starter code
-
Lesson 02: Deep Learning
Now that you've been exposed to various types of learning (supervised, unsupervised, and reinforcement), it's time to get a deeper understanding of machine learning with deep learning!
-
-
Module 02: Intro to TensorFlow
-
Lesson 01: Intro to TensorFlow
In this lesson, we'll cover the basics of TensorFlow and how to get started creating a simple classifier using this library.
- Concept 01: What is Deep Learning
- Concept 02: Solving Problems - Big and Small
- Concept 03: Let's Get Started
- Concept 04: Installing TensorFlow
- Concept 05: Hello, Tensor World!
- Concept 06: Transition to Classification
- Concept 07: Supervised Classification
- Concept 08: Training Your Logistic Classifier
- Concept 09: Quiz: TensorFlow Linear Function
- Concept 10: Quiz: TensorFlow Softmax
- Concept 11: ReLU and Softmax Activation Functions
- Concept 12: One-Hot Encoding
- Concept 13: Quiz: TensorFlow Cross Entropy
- Concept 14: Minimizing Cross Entropy
- Concept 15: Categorical Cross-Entropy
- Concept 16: Practical Aspects of Learning
- Concept 17: Quiz: Numerical Stability
- Concept 18: Normalized Inputs and Initial Weights
- Concept 19: Measuring Performance
- Concept 20: Optimizing a Logistic Classifier
- Concept 21: Stochastic Gradient Descent
- Concept 22: Momentum and Learning Rate Decay
- Concept 23: Parameter Hyperspace
- Concept 24: Quiz: Mini-batch
- Concept 25: Epochs
-
-
Module 03: Intro to Neural Networks
-
Lesson 01: Intro to Neural Networks
In this lesson, you'll dive deeper into the intuition behind Logistic Regression and Neural Networks. You'll also implement gradient descent and backpropagation in python right here in the classroom.
- Concept 01: Introducing Luis
- Concept 02: Logistic Regression Quiz
- Concept 03: Logistic Regression Answer
- Concept 04: Neural Networks
- Concept 05: Perceptron
- Concept 06: AND Perceptron Quiz
- Concept 07: OR & NOT Perceptron Quiz
- Concept 08: XOR Perceptron Quiz
- Concept 09: The Simplest Neural Network
- Concept 10: Gradient Descent
- Concept 11: Gradient Descent: The Math
- Concept 12: Gradient Descent: The Code
- Concept 13: Implementing Gradient Descent
- Concept 14: Multilayer Perceptrons
- Concept 15: Backpropagation
- Concept 16: Implementing Backpropagation
- Concept 17: Further Reading
-
-
Module 04: Deep Neural Networks
-
Lesson 01: Deep Neural Networks
Vincent walks you through how to go from a simple neural network to a deep neural network. You'll learn about why additional layers can help and how to prevent overfitting.
- Concept 01: Intro to Deep Neural Networks
- Concept 02: Two-Layer Neural Network
- Concept 03: Quiz: TensorFlow ReLUs
- Concept 04: Deep Neural Network in TensorFlow
- Concept 05: Training a Deep Learning Network
- Concept 06: Save and Restore TensorFlow Models
- Concept 07: Finetuning
- Concept 08: Regularization Intro
- Concept 09: Regularization
- Concept 10: Regularization Quiz
- Concept 11: Dropout
- Concept 12: Dropout Pt. 2
- Concept 13: Quiz: TensorFlow Dropout
-
-
Module 05: Convolutional Neural Networks
-
Lesson 01: Convolutional Neural Networks
Vincent explains the theory behind Convolutional Neural Networks and how they help us dramatically improve performance in image classification.
- Concept 01: Intro To CNNs
- Concept 02: Color
- Concept 03: Statistical Invariance
- Concept 04: Convolutional Networks
- Concept 05: Intuition
- Concept 06: Filters
- Concept 07: Feature Map Sizes
- Concept 08: Convolutions continued
- Concept 09: Parameters
- Concept 10: Quiz: Convolution Output Shape
- Concept 11: Solution: Convolution Output Shape
- Concept 12: Quiz: Number of Parameters
- Concept 13: Solution: Number of Parameters
- Concept 14: Quiz: Parameter Sharing
- Concept 15: Solution: Parameter Sharing
- Concept 16: Visualizing CNNs
- Concept 17: TensorFlow Convolution Layer
- Concept 18: Explore The Design Space
- Concept 19: TensorFlow Max Pooling
- Concept 20: Quiz: Pooling Intuition
- Concept 21: Solution: Pooling Intuition
- Concept 22: Quiz: Pooling Mechanics
- Concept 23: Solution: Pooling Mechanics
- Concept 24: Quiz: Pooling Practice
- Concept 25: Solution: Pooling Practice
- Concept 26: Quiz: Average Pooling
- Concept 27: Solution: Average Pooling
- Concept 28: 1x1 Convolutions
- Concept 29: Inception Module
- Concept 30: Convolutional Network in TensorFlow
- Concept 31: TensorFlow Convolution Layer
- Concept 32: Solution: TensorFlow Convolution Layer
- Concept 33: TensorFlow Pooling Layer
- Concept 34: Solution: TensorFlow Pooling Layer
- Concept 35: CNNs - Additional Resources
-