Welcome to the Nanodegree program
Welcome to the Machine Learning Engineer Program & Projects
Program Structure
Skills that Set You Apart
Access the Career Portal
How Do I Find Time for My Nanodegree?
Introduction to Software Engineering
In this lesson, you’ll write production-level code and practice object-oriented programming, which you can
integrate into machine learning projects.
02. Course Overview
Software Engineering Practices Pt I
02. Clean and Modular Code4:19
Quiz
03. Refactoring Code2:01
04. Writing Clean Code5:11
05. Quiz: Clean Code
06. Writing Modular Code5:25
07. Refactoring – Wine Quality
08. Solution: Refactoring – Wine Quality
09. Efficient Code1:45
10. Optimizing – Common Books3:35
Documentation1:20
In-line Comments1:38
Docstrings1:14
Project Documentation
19. Documentation
Version Control in Data Science0:41
Scenario #12:39
Scenario #21:19
Scenario n. ° 31:18
Model Versioning
Conclusion00:36
Software Engineering Practices Pt II
02. Testing1:03
03. Testing and Data Science1:50
04. Unit Tests2:36
05. Unit Testing Tools1:18
07. Test Driven Development and Data Science2:23
08. Logging00:50
09. Log Messages
Quiz
11. Code reviews00:47
12. Questions to Ask Yourself When Conducting a Code Review
13. Tips for Conducting a Code Review
14. Conclution00:27
OOP
01. Introduction00:00
02. Procedural vs. Object-Oriented Programmingedium00:00
02. Quiz
03. Class, Object, Method and Attribute00:00
03. Quiz
04. OOP Syntax00:00
05. Exercise: OOP Syntax Practice – Part 100:00
06. A Couple of Notes about OOP00:00
07. Exercise: OOP Syntax Practice – Part 200:00
08. Commenting Object-Oriented Code
09. Gaussian Class1:33
10. How the Gaussian Class Works00:00
11. Exercise: Code the Gaussian Class00:00
12. Magic Methods00:00
12.1 Magic Methods in Code00:00
13. Inheritance
13.1 Inheritance code
13. Exercise: Code Magic Methods00:00
14. Inheritance00:00
14.1 Inheritance Example V100:00
15. Exercise: Inheritance with Clothing00:00
16. Inheritance: Probability Distribution00:00
17. Demo: Inheritance Probability Distributions00:00
18. Advanced OOP Topics
19. Organizing into Modules3:27
20. Demo: Modularized Code00:00
21. Making a Package00:00
22. Python Environments00:00
24. Binomial Class00:00
24. Binomial Class 200:00
26. Scikit-learn Source Code00:00
27. Putting Code on PyPi00:00
29. Lesson Summary00:00
Portfolio Exercise: Upload a Package to PyPi
01. Introduction
02. Troubleshooting Possible Errors
03. Workspace00:00
Cloud Computing
01. AWS Overview
02. AWS Setup Instructions for Regular account
03. Get Access to GPU Instances
04. More Resources
05. Launch an Instance
06. Login to the Instance
Introduction to Deployment
Learn how to deploy machine learning models to a production environment using Amazon SageMaker.
02. What’s Ahead?
03. Introdution to the problem1:07
04. Machine Learning Workflow3:32
05. Machine Learning Workflow
06. What is Cloud Computing & Why Would We Use It?
07. Why Cloud Computing?
08. Machine Learning Applications2:24
09. Machine Learning Applications
10. Paths to Deployment
11. Paths to Deployment
12. Production Environments2:12
13. Production Environments
14. Endpoints & REST APIs
15. Endpoints & REST APIs
16. Containers
17.Containers
18. Containers – Straight From the Experts4:38
19. Characteristics of Deployment and Modeling
20. Characteristics of Modeling & Deployment
21. Comparing Cloud Providers
22. Comparing Cloud Providers
23. Closing Statements1:21
24. Summary
25. [Optional] Cloud Computing Defined
Quiz 25
Building a Model using SageMaker
02. How do I create and activate a new AWS account?
03. AWS SageMaker
04. SageMaker instance usage limits
05. Setting up a laptop instance2:27
06. Cloning Deployment Notebooks1:19
08. Boston Housing Example4:34
09. Boston Housing Ejemplo – Training the Model4:04
10. Boston Housing Example – Testing the Model00:00
11. Mini-project: Building your first model1:59
12. Mini-project: solution5:05
13. Boston Housing In Depth: Data Preparation00:00
14. Boston Housing in depth: creating a training job00:00
15. Boston Housing in depth: building a model4:20
16. Boston Housing In Depth: Creating a Batch Transformation Job00:00
Implement and use a mode
02. Example of housing in Boston: implementation of the model3:05
03. Boston Housing in depth: implementation of the model6:15
05. Text Processing, Bag of Words00:00
06. Building and Deploying the Model5:40
07. How to use an implemented model6:37
08. Creating and using an endpoint
09. Building a Lambda Function6:05
10. Building an API00:00
11. Using the Final Web Application3:11
12. Summary
04. Hyperparameter Tuning
02. Introducción al Hiperparámeter Tuning4:11
03. Boston Housing Example – Tuning the Model00:00
04. Mini-Project: Tuning the Sentiment Analysis Model00:00
05. Mini-Project: Solution – Tuning the Model00:00
06. Mini-Project: Solution – Fixing the Error and Testing00:00
07. Boston Housing In-Depth – Creating a Tuning Job00:00
08. Boston Housing In-Depth – Monitoring the Tuning Job00:00
09. Boston Housing In-Depth – Building and Testing the Model00:00
Summary
Updating a Model
02. Building a Sentiment Analysis Model (XGBoost)4:17
03. Building a Sentiment Analysis Model (Linear Learner)00:00
04. Combining the Models00:00
05. Mini-Project: Updating a Sentiment Analysis Model00:00
06. Loading and Testing the New Data00:00
07. Exploring the New Data00:00
08. Building a New Model00:00
09. SageMaker Retrospective00:00
11. SageMaker Tips and Tricks00:00
Project: Deploying a Sentiment Analysis Model
01. Deployment Project1:41
02. Setting up a Notebook Instance
03. SageMaker Instance Utilization Limits
Deploy a Sentiment Analysis Model
Project Rubric – Deploy a Sentiment Analysis Model
Population Segmentation
Apply machine learning techniques to solve real-world tasks; explore data and deploy both built-in and
custom-made Amazon SageMaker models.
Interview Segment00:00
02 What Applications Are Enabled By Amazon00:00
03 Why Should Students Gain Skills In Sagemaker And Cloud Services00:00
Course Outline, Case Studies
04. Unsupervised v Supervised Learning00:00
Model Design00:00
Population Segmentation00:00
K-means, Overview00:00
Creating a Notebook Instance00:00
09. Create a SageMaker Notebook Instance
10. Pre-Notebook: Population Segmentation
11. Exercise: Data Loading & Processing6:44
12. Solution: Data Pre-Processing00:00
13. Exercise: Normalization
14. Solution: Normalization00:00
15. PCA, Overview00:00
PCA Estimator & Training00:00
Exercise: PCA Model Attributes & Variance00:00
Solution: Variance00:00
Component Makeup00:00
20. Exercise: PCA Deployment & Data Transformation
21. Solution: Creating Transformed Data00:00
22. Exercise: K-means Estimator & Selecting K
23. Exercise: K-means Predictions (clusters)
24. Solution: K-means Predictor00:00
25. Exercise: Get the Model Attributes
26. Solution: Model Attributes00:00
27. Clean Up: All Resources
AWS Workflow & Summary00:00
Payment Fraud Detection
Pre-Notebook: Payment Fraud Detection
Exercise: Payment Transaction Data00:00
Solution: Data Distribution & Splitting00:00
LinearLearner & Class Imbalance00:00
Exercise: Define a LinearLearner
Solution: Default LinearLearner00:00
Exercise: Format Data & Train the LinearLearner
Solution: Training Job00:00
Precision & Recall, Overview
Exercise: Deploy Estimator
Solution: Deployment & Evaluation00:00
Model Improvements00:00
Improvement, Model Tuning00:00
Exercise: Improvement, Class Imbalance
Solution: Accounting for Class Imbalance00:00
Exercise: Define a Model w/ Specifications
One Solution: Tuned and Balanced LinearLearner
Summary and Improvements00:00
Interview Segment: SageMaker
Can You Explain The Idea Behind The GitHub Respository00:00
Does Sagemaker Work With Certain Products Or Use Cases00:00
How Do You Label Data At Scale00:00
What_S Your Prediction Of What Sagemaker Will Prioritize In The Next 1-2 Years00:00
Do You Have Advice For Someone Who Wants To Learn More00:00
Deploying Custom Models
Pre-Notebook: Custom Models & Moon Data
02. Moon Data & Custom Models4:27
03. Upload Data to S300:00
Exercise: Custom PyTorch Classifier00:00
Solution: Simple Neural Network00:00
Exercise: Training Script00:00
Solution: Complete Training Script00:00
Custom SKLearn Model
PyTorch Estimator00:00
Exercise: Create a PyTorchModel & Endpoint
Solution: PyTorchModel & Evaluation00:00
Clean Up: All Resources
Summary of Skills
Time-Series Forecasting
Forecasting Energy Consumption00:00
03. Pre-Notebook: Time-Series Forecasting
Processing Energy Data00:00
Exercise Creating Time Series00:00
06. Solution: Split Data
Exercise Convert to JSON00:00
Solution Formatting JSON Lines _ DeepAR Estimator00:00
09. Exercise: DeepAR Estimator
Solution Complete Estimator _ Hyperparameters00:00
Making Predictions3:50
12. Exercise: Predicting the Future
Solution Predicting Future Data00:00
14. Clean Up: All Resources
Project
02. Containment00:00
04. Longest Common Subsequence00:00
05. Dynamic Programming00:00
01. Project Overview
06. Project Files _ Evaluation
07. Notebooks
Project Description – Plagiarism Detector
All Required Files and Tests
Introduction to NLP
Learn Natural Language Processing one of the fields with the most real applications of Deep Learning
How NLP Pipelines Work1:11
Text Processing1:55
Feature Extraction0:42
Bag of Words3:17
TF-IDF1:38
One-Hot Encoding0:55
Word Embeddings1:02
Word2Vec2:19
GloVe3:01
Embeddings For Deep Learning3:38
Modeling00:00
Implementation of RNN _ LSTM
Time-Series Prediction00:00
Training _ Memory00:00
Hidden State Dimensions
Character-wise RNNs00:00
Sequence Batching00:00
Pre-Notebook: Character-Level RNN
Implementing a Char-RNN00:00
Batching Data, Solution00:00
Defining the Model00:00
Char-RNN, Solution00:00
Making Predictions00:00
Notebook: Character-Level RNN
Sentiment Prediction RNN
Pre-Notebook: Sentiment RNN
03. Notebook: Sentiment RNN
04. Data Pre-Processing00:00
Encoding Words, Solution00:00
Getting Rid of Zero-Length00:00
Cleaning & Padding Data00:00
Padded Features, Solution00:00
TensorDataset & Batching Data00:00
Defining the Model00:00
Complete Sentiment RNN
Training the Model00:00
Testing00:00
Inference, Solution
Convolutional Neural Networks
Applications of CNNs00:00
Lesson Outline00:00
MNIST Dataset00:00
How Computers Interpret Images00:00
MLP Structure & Class Scores00:00
Quiz
07. Do Your Research00:00
Loss & Optimization00:00
09. Defining a Network in PyTorch00:00
10. Training the Network00:00
11. Pre-Notebook: MLP Classification, Exercise
12. Notebook: MLP Classification, MNIST
One Solution00:00
14. Model Validation00:00
15. Validation Loss00:00
16. Image Classification Steps00:00
17. MLPs vs CNNs00:00
18. Local Connectivity00:00
19. Filters and the Convolutional Layer00:00
Filters & Edges00:00
21. Frequency in Images
22. High-pass Filters00:00
Quiz: Kernels
Notebook: Custom Filters
OpenCV & Creating Custom Filters
26. Convolutional Layer
27. Convolutional Layer00:00
28. Stride and Padding00:00
29. Pooling Layers
Notebook: Layer Visualization
Capsule Networks
Increasing Depth00:00
33. CNNs for Image Classification
Quiz 33
34. Convolutional Layers in PyTorch
Quiz 34
35. Feature Vector00:00
36. Pre-Notebook: CNN Classification
37. Notebook: CNNs for CIFAR Image Classification
38. CIFAR Classification Example00:00
39. CNNs in PyTorch00:00
40. Image Augmentation00:00
41. Augmentation Using Transformations00:00
42. Groundbreaking CNN Architectures00:00
43. Visualizing CNNs (Part 1)00:00
44. Visualizing CNNs (Part 2)
Summary of CNNs00:00
Transfer Learning
Useful Layers00:00
Fine-Tuning00:00
VGG Model & Classifier00:00
Pre-Notebook: Transfer Learning
06. Notebook: Transfer Learning, Flowers
07. Freezing Weights & Last Layer00:00
Training a Classifier00:00
Weight Initialization
Constant Weights00:00
Random Uniform00:00
General Rule00:00
Normal Distribution00:00
Pre-Notebook: Weight Initialization, Normal Distribution
07. Notebook: Normal & No Initialization
Solution and Default Initialization00:00
Additional Material
Autoencoders
Pre-Notebook: Linear Autoencoder00:00
A Linear Autoencoder00:00
Notebook: Linear Autoencoder
Defining & Training an Autoencoder00:00
A Simple Solution00:00
Learnable Upsampling00:00
Transpose Convolutions00:00
Convolutional Autoencoder00:00
Pre-Notebook: Convolutional Autoencoder
Notebook – Convolutional Autoencoder
Convolutional Solution00:00
Upsampling & Denoising00:00
De-noising00:00
Pre-Notebook: De-noising Autoencoder
Notebook: De-noising Autoencoder
Job Search
Find your dream job with continuous learning and constant effort
Intro1:22
Job Search Mindset1:27
Target Your Application to An Employer1:27
Open Yourself Up to Opportunity0:24
Refine Your Entry-Level Resume
Convey Your Skills Concisely1:23
Effective Resume Components1:36
Resume Structure2:12
Describe Your Work Experiences1:09
Resume Reflection1:24
Resume Review1:46
Craft Your Cover Letter
Get an Interview with a Cover Letter!1:39
Purpose of the Cover Letter1:10
Cover Letter Components0:54
Write the Introduction1:34
Write the Body2:07
Write the Conclusion0:27
Format1:10
Optimize Your GitHub Profile
Introduction0:52
GitHub profile important items1:35
Good GitHub repository1:11
Interview Part 12:11
Identify fixes for example “bad” profile0:13
Identify fixes for example “bad” profile 20:51
Quick Fixes #11:11
Quick Fixes #20:13
Writing READMEs0:41
Interview Part 21:19
Commit messages best practices
Reflect on your commit messages0:16
Participating in open source projects0:15
Interview Part 32:31
Participating in open source projects 20:54
Starting interesting repositories00:14
Develop Your Personal Brand
Why Network?2:01
Why Use Elevator Pitches?2:04
Personal Branding
Elevator Pitch1:08
Pitching to a Recruiter0:51
Why Use Elevator Pitches?1:41
01. Welcome
Introduction to Software Engineering
Although the language used throughout these videos is aimed primarily at data scientists, know these skills and their applications are relevant for many professions in software. Potential careers include, but are not limited to:
- Data Scientists
- Software Engineers
- Machine Learning Engineers
- Quality Software Engineers
- Database Administrators