- Introduction to Software Engineering
- Learn about the course and meet your instructors.
- Software Engineering Practices Pt I
- Part one covers clean and modular code, code efficiency, refactoring, documentation, and version control.
- Software Engineering Practices Pt II
- Part two covers testing code, logging, and conducting code reviews.
- Introduction to Object-Oriented Programming
- Learn the basics of object-oriented programming so that you can build your own Python package.
- Introduction to Deployment
- This lesson will familiarizing the student with cloud and deployment terminology along with demonstrating how deployment fits within the machine learning workflow.
- Building a Model using SageMaker
- Learn how to use Amazon's SageMaker service to predict Boston housing prices using SageMaker's built-in XGBoost algorithm.
- Deploying and Using a Model
- In this lesson students will learn how to deploy a model using SageMaker and how to make use of their deployed model with a simple web application.
- Hyperparameter Tuning
- In this lesson students will see how to use SageMaker's automatic hyperparameter tuning tools on the Boston housing prices model from lesson 2 and with a sentiment analysis model.
- Updating a Model
- In this lesson students will learn how to update their model to account for changes in the underlying data used to train their model.
- Population Segmentation
- Train and deploy unsupervised models(PCA and k-means clustering) to group US counties by similarities and differences. Visualize the trained model attributes and interpret the results.
- Payment Fraud Detection
- Train a linear model to do credit card fraud detection. Improve the model by accounting for class imbalance in the training data and tuning for a specific performance metric.
- Interview Segment: SageMaker as a Tool & the Future of ML
- If you're interested in how SageMaker has developed to serve businesses and learners, take a look at this short interview segment with Dan Mbanga.
- Deploying Custom Models
- Design and train a custom PyTorch classifier by writing a training script. This is an especially useful skill for tasks that cannot be easily solved by built-in algorithms.
- Time-Series Forecasting
- Learn how to format time series data into context(input) and prediction(output) data, and train the built-in algorithm, DeepAR; this uses an RNN to find recurring patterns in time series data.
Extracurricular: NLP Fundamentals
- Introduction to NLP
- Learn how text is represented in natural language models; transform text using methods like Bag-of-Words, TF-IDF, Word2Vec and GloVE.
- Implementation of RNN & LSTM
- Learn how to represent memory in code. Then define and train RNNs in PyTorch and apply them to tasks that involve sequential data.
- Sentiment Prediction RNN
- Implement a sentiment prediction RNN for predicting whether a movie review is positive or negative.
Extracurricular: Convolutional Neural Networks
- Convolutional Neural Networks
- Convolutional Neural Networks allow for spatial pattern recognition. Alexis and Cezanne go over how they help us dramatically improve performance in image classification.
- GPU Workspaces Demo
- See a demonstration of GPU workspaces in the Udacity classroom.
- 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.
- Transfer Learning
- Learn how to apply a pre-trained network to a new problem with transfer learning.
- Weight Initialization
- In this lesson, you'll learn how to find good initial weights for a neural network. Having good initial weights can place the neural network closer to the optimal solution.
- Autoencoders
- Autoencoders are neural networks used for data compression, image denoising, and dimension reduction. Here, you'll build autoencoders using Pytorch.
Extracurricular: Web Deployment with Flask
- Web Development
- Develop a data dashboard using Flask, Bootstrap, Plotly and Pandas.
- Portfolio Exercise: Deploy a Data Dashboard
- Customize the data dashboard from the previous lesson to make it your own. Upload the dashboard to the web.