Course Contents
Introduction
Course Outline
Join Our Online Classroom!
Exercise: Meet Your Classmates & Instructor
Asking Questions + Getting Help
Your First Day
Machine Learning 101
What Is Machine Learning?
AI/Machine Learning/Data Science
ZTM Resources
Exercise: Machine Learning Playground
How Did We Get Here?
Exercise: YouTube Recommendation Engine
Types of Machine Learning
Are You Getting It Yet?
What Is Machine Learning? Round 2
Section Review
Monthly Coding Challenges, Free Resources and Guides
Machine Learning and Data Science Framework
Section Overview
Introducing Our Framework
6 Step Machine Learning Framework
Types of Machine Learning Problems
Types of Data
Types of Evaluation
Features In Data
Modelling - Splitting Data
Modelling - Picking the Model
Modelling - Tuning
Modelling - Comparison
Overfitting and Underfitting Definitions
Experimentation
Tools We Will Use
Optional: Elements of AI
The 2 Paths
The 2 Paths
Python + Machine Learning Monthly
Endorsements On LinkedIN
Data Science Environment Setup
Section Overview
Introducing Our Tools
What is Conda?
Conda Environments
Mac Environment Setup
Mac Environment Setup 2
Windows Environment Setup
Windows Environment Setup 2
Linux Environment Setup
Sharing your Conda Environment
Jupyter Notebook Walkthrough
Jupyter Notebook Walkthrough 2
Jupyter Notebook Walkthrough 3
Pandas: Data Analysis
Section Overview
Downloading Workbooks and Assignments
Pandas Introduction
Series, Data Frames and CSVs
Data from URLs
Quick Note: Upcoming Videos
Describing Data with Pandas
Selecting and Viewing Data with Pandas
Selecting and Viewing Data with Pandas Part 2
Manipulating Data
Manipulating Data 2
Manipulating Data 3
Assignment: Pandas Practice
How To Download The Course Assignments
NumPy
Section Overview
NumPy Introduction
Quick Note: Correction In Next Video
NumPy DataTypes and Attributes
Creating NumPy Arrays
NumPy Random Seed
Viewing Arrays and Matrices
Manipulating Arrays
Manipulating Arrays 2
Standard Deviation and Variance
Reshape and Transpose
Dot Product vs Element Wise
Exercise: Nut Butter Store Sales
Comparison Operators
Sorting Arrays
Turn Images Into NumPy Arrays
Assignment: NumPy Practice
Exercise: Imposter Syndrome
Optional: Extra NumPy resources
Matplotlib: Plotting and Data Visualizations
Section Overview
Matplotlib Introduction
Importing And Using Matplotlib
Anatomy Of A Matplotlib Figure
Scatter Plot And Bar Plot
Histograms And Subplots
Subplots Option 2
Quick Tip: Data Visualizations
Plotting From Pandas Data Frames
Quick Note: Regular Expressions
Plotting From Pandas Data Frames 2
Plotting from Pandas DataFrames 3
Plotting from Pandas DataFrames 4
Plotting from Pandas DataFrames 5
Plotting from Pandas DataFrames 6
Plotting from Pandas DataFrames 7
Customizing Your Plots
Customizing Your Plots 2
Assignment: Matplotlib Practice
Scikit-learn: Creating Machine Learning Models
Section Overview
Scikit-learn Introduction
Quick Note: Upcoming Video
Refresher: What Is Machine Learning?
Quick Note: Upcoming Videos
Scikit-learn Cheatsheet
Typical scikit-learn Workflow
Optional: Debugging Warnings In Jupyter
Getting Your Data Ready: Splitting Your Data
Quick Tip: Clean, Transform, Reduce
Getting Your Data Ready: Convert Data To Numbers
Note: Update to next video (OneHotEncoder can handle NaN/None values)
Getting Your Data Ready: Handling Missing Values With Pandas
Extension: Feature Scaling
Note: Correction in the upcoming video (splitting data)
Getting Your Data Ready: Handling Missing Values With Scikit-learn
NEW: Choosing The Right Model For Your Data
NEW: Choosing The Right Model For Your Data 2 (Regression)
Quick Note: Decision Trees
Quick Tip: How ML Algorithms Work
Choosing The Right Model For Your Data 3 (Classification)
Fitting A Model To The Data
Making Predictions With Our Model
predict() vs predict_proba()
NEW: Making Predictions With Our Model (Regression)
NEW: Evaluating A Machine Learning Model (Score) Part 1
NEW: Evaluating A Machine Learning Model (Score) Part 2
Evaluating A Machine Learning Model 2 (Cross Validation)
Evaluating A Classification Model 1 (Accuracy)
Evaluating A Classification Model 2 (ROC Curve)
Evaluating A Classification Model 3 (ROC Curve)
Reading Extension: ROC Curve + AUC
Evaluating A Classification Model 4 (Confusion Matrix)
NEW: Evaluating A Classification Model 5 (Confusion Matrix)
Evaluating A Classification Model 6 (Classification Report)
NEW: Evaluating A Regression Model 1 (R2 Score)
NEW: Evaluating A Regression Model 2 (MAE)
NEW: Evaluating A Regression Model 3 (MSE)
Machine Learning Model Evaluation
NEW: Evaluating A Model With Cross Validation and Scoring Parameter
NEW: Evaluating A Model With Scikit-learn Functions
Improving A Machine Learning Model
Tuning Hyperparameters
Tuning Hyperparameters 2
Tuning Hyperparameters 3
Note: Metric Comparison Improvement
Quick Tip: Correlation Analysis
Saving And Loading A Model
Saving And Loading A Model 2
Putting It All Together
Putting It All Together 2
Scikit-Learn Practice
Supervised Learning: Classification + Regression
Milestone Projects!
Milestone Project 1: Learning (Classification)
Section Overview
Project Overview
Project Environment Setup
Optional: Windows Project Environment Setup Getting a project environment setup on Windows (same as the previous video but tailored for Windows).
Step 1~4 Framework Setup
Note: Code update for next video
Getting Our Tools Ready
Exploring Our Data
Finding Patterns
Finding Patterns 2
Finding Patterns 3
Preparing Our Data For Machine Learning
Choosing The Right Models
Experimenting With Machine Learning Models
Tuning/Improving Our Model
Tuning Hyperparameters
Tuning Hyperparameters 2
Tuning Hyperparameters 3
Quick Note: Confusion Matrix Labels
Note: Code change in upcoming video
Evaluating Our Model
Evaluating Our Model 2
Evaluating Our Model 3
Finding The Most Important Features
Reviewing The Project
Milestone Project 2: Supervised Learning (Time Series Data)
Section Overview
Project Overview
Downloading the data for the next two projects
Project Environment Setup
Step 1~4 Framework Setup
Exploring Our Data
Exploring Our Data 2
Feature Engineering
Turning Data Into Numbers
Filling Missing Numerical Values
Filling Missing Categorical Values
Fitting A Machine Learning Model
Splitting Data
Challenge: What's wrong with splitting data after filling it?
Custom Evaluation Function
Reducing Data
Randomized Search CV
Improving Hyperparameters
Preproccessing Our Data
Making Predictions
Feature Importance
Data Engineering
Data Engineering Introduction
What Is Data?
What Is A Data Engineer?
What Is A Data Engineer 2?
What Is A Data Engineer 3?
What Is A Data Engineer 4?
Types Of Databases
Quick Note: Upcoming Video
Optional: OLTP Databases
Optional: Learn SQL
Hadoop, HDFS and MapReduce
Apache Spark and Apache Flink
Kafka and Stream Processing
Neural Networks: Deep Learning, Transfer Learning and TensorFlow 2
Section Overview
Deep Learning and Unstructured Data
Setting Up With Google
Setting Up Google Colab
Google Colab Workspace
Uploading Project Data
Setting Up Our Data
Setting Up Our Data 2
Importing TensorFlow 2
Optional: TensorFlow 2.0 Default Issue
Using A GPU
Optional: GPU and Google Colab
Optional: Reloading Colab Notebook
Loading Our Data Labels
Preparing The Images
Turning Data Labels Into Numbers
Creating Our Own Validation Set
Preprocess Images
Preprocess Images 2
Turning Data Into Batches
Turning Data Into Batches 2
Visualizing Our Data
Preparing Our Inputs and Outputs
Optional: How machines learn and what's going on behind the scenes?
Building A Deep Learning Model
Building A Deep Learning Model 2
Building A Deep Learning Model 3
Building A Deep Learning Model 4
Summarizing Our Model
Evaluating Our Model
Preventing Overfitting
Training Your Deep Neural Network
Evaluating Performance With TensorBoard
Make And Transform Predictions
Transform Predictions To Text
Visualizing Model Predictions
Visualizing And Evaluate Model Predictions 2
Visualizing And Evaluate Model Predictions 3
Saving And Loading A Trained Model
Training Model On Full Dataset
Making Predictions On Test Images
Submitting Model to Kaggle
Making Predictions On Our Images
Finishing Dog Vision: Where to next?
Storytelling + Communication: How To Present Your Work
Section Overview
Communicating Your Work
Communicating With Managers
Communicating With Co-Workers
Weekend Project Principle
Communicating With Outside World
Storytelling
Communicating and sharing your work: Further reading
Career Advice + Extra Bits
Endorsements On LinkedIn
Quick Note: Upcoming Video
What If I Don't Have Enough Experience?
Learning Guideline
Quick Note: Upcoming Videos
JTS: Learn to Learn
JTS: Start With Why
CWD: Git + Github
CWD: Git + Github 2
Contributing To Open Source
Contributing To Open Source 2
Exercise: Contribute To Open Source
Coding Challenges
Learn Python
What Is A Programming Language
Python Interpreter
How To Run Python Code
Latest Version Of Python
Our First Python Program
Python 2 vs Python 3
Exercise: How Does Python Work?
Learning Python
Python Data Types
How To Succeed
Numbers
Math Functions
DEVELOPER FUNDAMENTALS: I
Operator Precedence
Exercise: Operator Precedence
Optional: bin() and complex
Variables
Expressions vs Statements
Augmented Assignment Operator
Strings
String Concatenation
Type Conversion
Escape Sequences
Formatted Strings
String Indexes
Immutability
Built-In Functions + Methods
Booleans
Exercise: Type Conversion
DEVELOPER FUNDAMENTALS: II
Exercise: Password Checker
Lists
List Slicing
Matrix
List Methods
List Methods 2
List Methods 3
Common List Patterns
None
Dictionaries
DEVELOPER FUNDAMENTALS: III
Dictionary Keys
Dictionary Methods
Dictionary Methods 2
Tuples
Tuples 2
Sets
Sets 2
Learn Python Part 2
Breaking The Flow
Conditional Logic
Indentation In Python
Truthy vs Falsey
Ternary Operator
Short Circuiting
Logical Operators
Exercise: Logical Operators
is vs ==
For Loops
Iterables
Exercise: Tricky Counter
range()
enumerate()
While Loops
While Loops 2
break, continue, pass
Our First GUI
DEVELOPER FUNDAMENTALS: IV
Exercise: Find Duplicates
Functions
Parameters and Arguments
Default Parameters and Keyword Arguments
return
Exercise: Tesla
Methods vs Functions
Docstrings
Clean Code
*args and **kwargs
Exercise: Functions
Scope
Scope Rules
global Keyword
nonlocal Keyword
Why Do We Need Scope?
Pure Functions
map()
filter()
zip()
reduce()
List Comprehensions
Set Comprehensions
Exercise: Comprehensions
Python Exam: Testing Your Understanding
Modules in Python
Quick Note: Upcoming Videos
Optional: PyCharm
Packages in Python
Different Ways To Import
Next Steps
Bonus Resource: Python Cheatsheet
Extra: Learn Advanced Statistics and Mathematics
Statistics and Mathematics
Where To Go From Here
Become An Alumni
Thank You
Thank You Part 2
Course Review
The Final Challenge
BONUS SECTION
Special Bonus Lecture




















































