Neural Networks

  • Get familiar with the diagram and components of a neural network
  • Understand the concept of a "layer" in a neural network
  • Understand how neural networks learn new features.
  • Understand how activations are calculated at each layer.
  • Learn how a neural network can perform classification on an image.
  • Use a framework, TensorFlow, to build a neural network for classification of an image.
  • Learn how data goes into and out of a neural network layer in TensorFlow
  • Build a neural network in regular Python code (from scratch) to make predictions.
  • (Optional): Learn how neural networks use parallel processing (vectorization) to make computations faster.

Neural Network Training

  • Train a neural network on data using TensorFlow
  • Understand the difference between various activation functions (sigmoid, ReLU, and linear)
  • Understand which activation functions to use for which type of layer
  • Understand why we need non-linear activation functions
  • Understand multiclass classification
  • Calculate the softmax activation for implementing multiclass classification
  • Use the categorical cross entropy loss function for multiclass classification
  • Use the recommended method for implementing multiclass classification in code
  • (Optional): Explain the difference between multi-label and multiclass classification

Advice to apply maching learning

  • Evaluate and then modify your learning algorithm or data to improve your model's performance
  • Evaluate your learning algorithm using cross validation and test datasets.
  • Diagnose bias and variance in your learning algorithm
  • Use regularization to adjust bias and variance in your learning algorithm
  • Identify a baseline level of performance for your learning algorithm
  • Understand how bias and variance apply to neural networks
  • Learn about the iterative loop of Machine Learning Development that's used to update and improve a machine learning model
  • Learn to use error analysis to identify the types of errors that a learning algorithm is making
  • Learn how to add more training data to improve your model, including data augmentation and data synthesis
  • Use transfer learning to improve your model's performance.
  • Learn to include fairness and ethics in your machine learning model development
  • Measure precision and recall to work with skewed (imbalanced) datasets

Decision Trees

  • See what a decision tree looks like and how it can be used to make predictions
  • Learn how a decision tree learns from training data
  • Learn the "impurity" metric "entropy" and how it's used when building a decision tree
  • Learn how to use multiple trees, "tree ensembles" such as random forests and boosted trees
  • Learn when to use decision trees or neural networks