Course Overview
Hands-On Deep Learning Deep Dive is a fast-paced, hands-on course that teaches students the modern skills and concepts that reside in the mathematical side of ML / DL, providing attendees with a solid platform for next-level, continued learning in this space based on role or goal.
Working in a hands-on learning environment led by our expert Machine Learning practitioner, students will explore the fundamentals of Machine Learning, Neural Networks, Deep Learning and Recurrent Neural Networks. Attendees will learn about various applications within this space. This course emphasizes mathematical machine learning algorithms and deep learning concepts. Hands-on labs leverage Python programming as the language of choice.
Prerequisites
This in an intermediate-level course is geared for experienced developers or others (with prior Python experience) intending to start using learning about and working with machine learning algorithms, machine learning, deep learning fundamentals and concepts. Attendees should be experienced developers who are comfortable with Python programming. Students should also be able to navigate Linux command line, and who have basic knowledge of Linux editors (such as VI / nano) for editing code.
Some of the related useful skills
- Strong foundational mathematics in Linear Algebra and Probability
- Strong basic Python Skills and basic data science knowledge.
- Basic Linux skills, including familiarity with command-line options such as ls, cd, cp, and su
Course Objectives
Students will learn about and work with:
- Mathematical Concepts
- Machine Learning Concepts
- Machine Learning Algorithms Overview
- Deep Learning
- Deep Neural Networks
Outline: Hands-On Deep Learning Deep Dive (TTAI3018)
Mathematical Concepts (Theoretical)
- Linear Algebra Basics
- Vectors
- Matrices
- Matrix Operations
- Addition
- Multiplication
- Identity
- Inverse
- Transpose
- Dot Product
- Probability & Statistics
- Mean
- Mode
- Median
- Conditional Probability
- Standard Deviation
- Variance
Set up/Test Drive with Python/Jupyter
- Python Installation
- Installing Packages with Pip
- Jupyter Installation
- Tools Overview
- Pandas
- Numpy
- Scikit-learn
- Matplotlib
Machine Learning
- K-Nearest Neighbors Overview
- Voronoi Diagrams
- K-Nearest Neighbors Labs
- kNN Assumptions
- kNN Applications
- Data Scaling and Normalization
- Outliers
- Normalization & Standardization
- Cross Validation
- Clustering vs Classification
ML Decision Trees
- Decision Tree Overview
- Decision Tree Examples
- Splitting of Data
- Attributes of Decision Tree
- Use of Cross Validation in Decision Tree
- Ensemble Learning
- Random Forest
- Parameters in Decision Trees
- Overfitting
- Variance
- Underfitting
- Bias
- Trimming/Pruning
- Information Gain
- Gini Impurity
- Entropy
Machine Learning Probability & Naïve Bayes Classifier
- Bayesian Decision Theory
- Bayes Theorem
- Probability Overview
- Naïve Bayes Classifier Overview
- Naïve Bayes Lab
ML Linear Regression
- Linear Models
- Linear Regression Overview
- Linear Regression Lab
ML Gradient Descent Algorithm
- Definition of Gradient
- Definition of Gradient Descent
- Derivatives
- Partial Derivatives
- GD Applications
- Stochastic Gradient Descent
ML SVM Classifier
- SVM Classifier Overview
- Classifier Margin
- SVM Drawbacks
- SVM Examples
- SVM Classifier Lab
- SVM Kernels
ML Summary
- Data Preprocessing
- Model Evaluation
Deep Learning – AI Overview
- AI vs ML vs DL Overview
- State of AI
- Narrow AI or Weak AI
- Winograd Schemas
- Major Break through
- What does it take?
- Biological Neural Networks vs Artificial
- Future
Deep Learning – Overview & Basics (Theoretical)
- Deep Learning Overview
- Use cases & Key Applications
- Artificial Intelligence VS Machine Learning VS Deep Learning
- Deep Learning vs Neutral Networks
- Deep Learning Algorithm Overview
- Deep Learning Applications
- GPU vs CPU
- Deep Learning Libraries
Deep Neural Networks
- Fundamentals of Deep Networks
- Neural Networks – Basics and Overview
- Artificial Neural Networks - Overview
- Major Architectures of Deep Networks
- Building Deep Networks
- Regressions Overview
- Models and Overview
- Perceptron
- Single Hidden Layer
- Multiple Hidden Layer
- Convolutional Neural Network Overview
- CNN Architecture
- Recurrent Neural Network Overview
- RNN Architecture
GPU Programming Overview (Theoretical)
- GPUs, Memory and Other Advanced Topics
- GPU Programming Overview
- Thread Organization
- Inside a GPU
- Parallelization
- GPU Memory Breakdown
- Overview of GPU Accelerated Algorithms