Mô tả

If you're here, you already know the truth: Machine Learning is the future of everything.

In the coming years, there won't be a single industry in the world untouched by Machine Learning.  A transformative force, you can either choose to understand it now, or lose out on a wave of incredible change.  You probably already use apps many times each day that rely upon Machine Learning techniques.  So why stay in the dark any longer?

There are many courses on Machine Learning already available.  I built this course to be the best introduction to the topic.  No subject is left untouched, and we never leave any area in the dark.  If you take this course, you will be prepared to enter and understand any sub-discipline in the world of Machine Learning.


A common question - Why Javascript?  I thought ML was all about Python and R?

The answer is simple - ML with Javascript is just plain easier to learn than with Python.  Although it is immensely popular, Python is an 'expressive' language, which is a code-word that means 'a confusing language'.  A single line of Python can contain a tremendous amount of functionality; this is great when you understand the language and the subject matter, but not so much when you're trying to learn a brand new topic.

Besides Javascript making ML easier to understand, it also opens new horizons for apps that you can build.  Rather than being limited to deploying Python code on the server for running your ML code, you can build single-page apps, or even browser extensions that run interesting algorithms, which can give you the possibility of developing a completely novel use case!


Does this course focus on algorithms, or math, or Tensorflow, or what?!?!

Let's be honest - the vast majority of ML courses available online dance around the confusing topics.  They encourage you to use pre-build algorithms and functions that do all the heavy lifting for you.  Although this can lead you to quick successes, in the end it will hamper your ability to understand ML.  You can only understand how to apply ML techniques if you understand the underlying algorithms.

That's the goal of this course - I want you to understand the exact math and programming techniques that are used in the most common ML algorithms.  Once you have this knowledge, you can easily pick up new algorithms on the fly, and build far more interesting projects and applications than other engineers who only understand how to hand data to a magic library.

Don't have a background in math?  That's OK! I take special care to make sure that no lecture gets too far into 'mathy' topics without giving a proper introduction to what is going on.


A short list of what you will learn:

  • Advanced memory profiling to enhance the performance of your algorithms

  • Build apps powered by the powerful Tensorflow JS library

  • Develop programs that work either in the browser or with Node JS

  • Write clean, easy to understand ML code, no one-name variables or confusing functions

  • Pick up the basics of Linear Algebra so you can dramatically speed up your code with matrix-based operations. (Don't worry, I'll make the math easy!)

  • Comprehend how to twist common algorithms to fit your unique use cases

  • Plot the results of your analysis using a custom-build graphing library

  • Learn performance-enhancing strategies that can be applied to any type of Javascript code

  • Data loading techniques, both in the browser and Node JS environments

Bạn sẽ học được gì

Yêu cầu

Nội dung khoá học

15 sections

What is Machine Learning?

11 lectures
Getting Started - How to Get Help
00:57
Course Resources
00:38
Join Our Community!
00:07
Solving Machine Learning Problems
06:04
A Complete Walkthrough
09:53
App Setup
02:01
Problem Outline
02:53
Identifying Relevant Data
04:11
Dataset Structures
05:47
Recording Observation Data
03:59
What Type of Problem?
04:35

Algorithm Overview

24 lectures
How K-Nearest Neighbor Works
08:23
Lodash Review
09:56
Implementing KNN
07:16
Finishing KNN Implementation
05:53
Testing the Algorithm
04:47
Interpreting Bad Results
04:12
Test and Training Data
04:05
Randomizing Test Data
03:48
Generalizing KNN
03:41
Gauging Accuracy
05:18
Printing a Report
03:29
Refactoring Accuracy Reporting
05:13
Investigating Optimal K Values
11:38
Updating KNN for Multiple Features
06:36
Multi-Dimensional KNN
03:56
N-Dimension Distance
09:50
Arbitrary Feature Spaces
08:27
Magnitude Offsets in Features
05:36
Feature Normalization
07:32
Normalization with MinMax
07:14
Applying Normalization
04:22
Feature Selection with KNN
07:47
Objective Feature Picking
06:10
Evaluating Different Feature Values
02:53

Onwards to Tensorflow JS!

13 lectures
Let's Get Our Bearings
07:27
A Plan to Move Forward
04:31
Tensor Shape and Dimension
12:04
Tensor Dimension and Shapes
9 questions
Elementwise Operations
08:18
Broadcasting Operations
06:47
Broadcasting Elementwise Operations
3 questions
Logging Tensor Data
03:47
Tensor Accessors
05:24
Creating Slices of Data
07:46
Tensor Concatenation
05:28
Summing Values Along an Axis
05:13
Massaging Dimensions with ExpandDims
07:47

Applications of Tensorflow

15 lectures
KNN with Regression
04:56
A Change in Data Structure
04:04
KNN with Tensorflow
09:18
Maintaining Order Relationships
06:30
Sorting Tensors
08:00
Averaging Top Values
07:43
Moving to the Editor
03:26
Loading CSV Data
10:10
Running an Analysis
06:10
Reporting Error Percentages
06:26
Normalization or Standardization?
07:33
Numerical Standardization with Tensorflow
07:37
Applying Standardization
04:01
Debugging Calculations
08:14
What Now?
04:00

Getting Started with Gradient Descent

12 lectures
Linear Regression
02:39
Why Linear Regression?
04:52
Understanding Gradient Descent
13:04
Guessing Coefficients with MSE
10:19
Observations Around MSE
05:56
Derivatives!
07:12
Gradient Descent in Action
11:46
Quick Breather and Review
05:46
Why a Learning Rate?
17:05
Answering Common Questions
03:48
Gradient Descent with Multiple Terms
04:43
Multiple Terms in Action
10:39

Gradient Descent with Tensorflow

13 lectures
Project Overview
06:01
Data Loading
05:17
Default Algorithm Options
08:32
Formulating the Training Loop
03:18
Initial Gradient Descent Implementation
09:24
Calculating MSE Slopes
06:52
Updating Coefficients
03:11
Interpreting Results
10:07
Matrix Multiplication
07:09
More on Matrix Multiplication
06:40
Matrix Form of Slope Equations
06:21
Simplification with Matrix Multiplication
09:28
How it All Works Together!
14:01

Increasing Performance with Vectorized Solutions

17 lectures
Refactoring the Linear Regression Class
07:40
Refactoring to One Equation
08:58
A Few More Changes
06:13
Same Results? Or Not?
03:19
Calculating Model Accuracy
08:37
Implementing Coefficient of Determination
07:44
Dealing with Bad Accuracy
07:47
Reminder on Standardization
04:36
Data Processing in a Helper Method
03:38
Reapplying Standardization
05:57
Fixing Standardization Issues
05:36
Massaging Learning Rates
03:15
Moving Towards Multivariate Regression
11:44
Refactoring for Multivariate Analysis
07:28
Learning Rate Optimization
08:04
Recording MSE History
05:21
Updating Learning Rate
06:41

Plotting Data with Javascript

3 lectures
Observing Changing Learning Rate and MSE
04:17
Plotting MSE Values
05:21
Plotting MSE History against B Values
04:22

Gradient Descent Alterations

6 lectures
Batch and Stochastic Gradient Descent
07:17
Refactoring Towards Batch Gradient Descent
05:06
Determining Batch Size and Quantity
06:02
Iterating Over Batches
07:48
Evaluating Batch Gradient Descent Results
05:41
Making Predictions with the Model
07:37

Natural Binary Classification

20 lectures
Introducing Logistic Regression
02:27
Logistic Regression in Action
06:31
Bad Equation Fits
05:31
The Sigmoid Equation
04:31
Decision Boundaries
07:47
Changes for Logistic Regression
01:11
Project Setup for Logistic Regression
05:51
Project Download
00:10
Importing Vehicle Data
04:27
Encoding Label Values
04:18
Updating Linear Regression for Logistic Regression
07:08
The Sigmoid Equation with Logistic Regression
04:27
A Touch More Refactoring
07:46
Gauging Classification Accuracy
03:27
Implementing a Test Function
05:16
Variable Decision Boundaries
07:16
Mean Squared Error vs Cross Entropy
05:46
Refactoring with Cross Entropy
05:08
Finishing the Cost Refactor
04:36
Plotting Changing Cost History
03:24

Multi-Value Classification

13 lectures
Multinominal Logistic Regression
02:19
A Smart Refactor to Multinominal Analysis
05:07
A Smarter Refactor!
03:44
A Single Instance Approach
09:50
Refactoring to Multi-Column Weights
04:39
A Problem to Test Multinominal Classification
04:37
Classifying Continuous Values
04:41
Training a Multinominal Model
06:19
Marginal vs Conditional Probability
09:56
Sigmoid vs Softmax
06:08
Refactoring Sigmoid to Softmax
04:42
Implementing Accuracy Gauges
02:36
Calculating Accuracy
03:15

Image Recognition In Action

10 lectures
Handwriting Recognition
02:10
Greyscale Values
05:11
Many Features
03:29
Flattening Image Data
06:06
Encoding Label Values
05:44
Implementing an Accuracy Gauge
07:26
Unchanging Accuracy
01:55
Debugging the Calculation Process
08:12
Dealing with Zero Variances
06:15
Backfilling Variance
02:36

Performance Optimization

21 lectures
Handing Large Datasets
04:14
Minimizing Memory Usage
04:50
Creating Memory Snapshots
05:14
The Javascript Garbage Collector
06:49
Shallow vs Retained Memory Usage
05:50
Measuring Memory Usage
08:29
Releasing References
03:14
Measuring Footprint Reduction
03:49
Optimization Tensorflow Memory Usage
01:30
Tensorflow's Eager Memory Usage
04:40
Cleaning up Tensors with Tidy
02:48
Implementing TF Tidy
03:31
Tidying the Training Loop
03:57
Measuring Reduced Memory Usage
01:34
One More Optimization
02:35
Final Memory Report
02:44
Plotting Cost History
04:03
NaN in Cost History
04:18
Fixing Cost History
04:45
Massaging Learning Parameters
01:40
Improving Model Accuracy
04:27

Appendix: Custom CSV Loader

10 lectures
Loading CSV Files
02:06
A Test Dataset
02:00
Reading Files from Disk
03:08
Splitting into Columns
02:54
Dropping Trailing Columns
02:30
Parsing Number Values
03:36
Custom Value Parsing
04:19
Extracting Data Columns
05:35
Shuffling Data via Seed Phrase
05:13
Splitting Test and Training
07:44

Extras

1 lectures
Bonus!
00:36

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.