.

Applications of Deep Neural Networks 575 page free book by Jeff Heaton

If you want some holiday reading, here is something for you 

I think  this is extraordinarily generous 

Applications of Deep Neural Networks 575 page free book by Jeff Heaton 

TOC below download links at the end of the post

Happy holidays :)  

0.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
1 Python Preliminaries 1
1.1 Part 1.1: Course Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Your Instructor: Jeff Heaton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.3 Course Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.4 What is Deep Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.5 What is Machine Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.6 Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.7 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.8 Beyond Classification and Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.9 What are Neural Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.10 Why Deep Learning? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.11 Python for Deep Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.12 Software Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.13 Python Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.14 Jupyter Notebooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.15 Python Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.16 Module 1 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Part 1.2: Introduction to Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Part 1.3: Python Lists, Dictionaries, Sets and JSON . . . . . . . . . . . . . . . . . . . . . . . 14
1.3.1 Lists and Tuples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.2 Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.3 Maps/Dictionaries/Hash Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3.4 More Advanced Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.3.5 An Introduction to JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.4 Part 1.4: File Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.4.1 Read a CSV File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.4.2 Read (stream) a Large CSV File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.4.3 Read a Text File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.4.4 Read an Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.5 Part 1.5: Functions, Lambdas, and Map/Reduce . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.5.1 Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.5.2 Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.5.3 Lambda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.5.4 Reduce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
v
vi CONTENTS

2 Python for Machine Learning 33
2.1 Part 2.1: Introduction to Pandas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.1.1 Missing Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.1.2 Dealing with Outliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.1.3 Dropping Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.1.4 Concatenating Rows and Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.1.5 Training and Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.1.6 Converting a Dataframe to a Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.1.7 Saving a Dataframe to CSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.1.8 Saving a Dataframe to Pickle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.1.9 Module 2 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2 Part 2.2: Categorical and Continuous Values . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2.1 Encoding Continuous Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.2.2 Encoding Categorical Values as Dummies . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2.3 Target Encoding for Categoricals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.2.4 Encoding Categorical Values as Ordinal . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3 Part 2.3: Grouping, Sorting, and Shuffling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.3.1 Shuffling a Dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.3.2 Sorting a Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.3 Grouping a Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.4 Part 2.4: Apply and Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.4.1 Using Map with Dataframes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.4.2 Using Apply with Dataframes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.4.3 Feature Engineering with Apply and Map . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.5 Part 2.5: Feature Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.5.1 Calculated Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.5.2 Google API Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.5.3 Other Examples: Dealing with Addresses . . . . . . . . . . . . . . . . . . . . . . . . . 62

3 Introduction to TensorFlow 67
3.1 Part 3.1: Deep Learning and Neural Network Introduction . . . . . . . . . . . . . . . . . . . . 67
3.1.1 Classification or Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.1.2 Neurons and Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.1.3 Types of Neurons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.1.4 Input and Output Neurons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.5 Hidden Neurons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.1.6 Bias Neurons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.1.7 Context Neurons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.1.8 Other Neuron Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.1.9 Why are Bias Neurons Needed? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.1.10 Modern Activation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.1.11 Linear Activation Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.1.12 Rectified Linear Units (ReLU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.1.13 Softmax Activation Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.1.14 Classic Activation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.1.15 Step Activation Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.1.16 Sigmoid Activation Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.1.17 Hyperbolic Tangent Activation Function . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.1.18 Why ReLU? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
CONTENTS vii
3.1.19 Module 3 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.2 Part 3.2: Introduction to Tensorflow and Keras . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.2.1 Why TensorFlow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.2.2 Deep Learning Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.2.3 Using TensorFlow Directly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.2.4 TensorFlow Linear Algebra Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.2.5 TensorFlow Mandelbrot Set Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.2.6 Introduction to Keras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.2.7 Simple TensorFlow Regression: MPG . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.2.8 Introduction to Neural Network Hyperparameters . . . . . . . . . . . . . . . . . . . . 89
3.2.9 Controlling the Amount of Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
3.2.10 Regression Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
3.2.11 Simple TensorFlow Classification: Iris . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3.3 Part 3.3: Saving and Loading a Keras Neural Network . . . . . . . . . . . . . . . . . . . . . . 97
3.4 Part 3.4: Early Stopping in Keras to Prevent Overfitting . . . . . . . . . . . . . . . . . . . . . 99
3.4.1 Early Stopping with Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.4.2 Early Stopping with Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
3.5 Part 3.5: Extracting Weights and Manual Network Calculation . . . . . . . . . . . . . . . . . 104
3.5.1 Weight Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
3.5.2 Manual Neural Network Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

4 Training for Tabular Data 111
4.1 Part 4.1: Encoding a Feature Vector for Keras Deep Learning . . . . . . . . . . . . . . . . . . 111
4.1.1 Generate X and Y for a Classification Neural Network . . . . . . . . . . . . . . . . . . 115
4.1.2 Generate X and Y for a Regression Neural Network . . . . . . . . . . . . . . . . . . . 116
4.1.3 Module 4 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
4.2 Part 4.2: Multiclass Classification with ROC and AUC . . . . . . . . . . . . . . . . . . . . . . 116
4.2.1 Binary Classification and ROC Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
4.2.2 ROC Chart Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.2.3 Multiclass Classification Error Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.2.4 Calculate Classification Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.2.5 Calculate Classification Log Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.3 Part 4.3: Keras Regression for Deep Neural Networks with RMSE . . . . . . . . . . . . . . . 128
4.3.1 Mean Square Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.3.2 Root Mean Square Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.3.3 Lift Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.4 Part 4.4: Training Neural Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.4.1 Classic Backpropagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.4.2 Momentum Backpropagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4.4.3 Batch and Online Backpropagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
4.4.4 Stochastic Gradient Descent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
4.4.5 Other Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4.4.6 ADAM Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4.4.7 Methods Compared . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
4.4.8 Specifying the Update Rule in Tensorflow . . . . . . . . . . . . . . . . . . . . . . . . . 137
4.5 Part 4.5: Error Calculation from Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.5.1 Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.5.2 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
viii CONTENTS

5 Regularization and Dropout 143
5.1 Part 5.1: Introduction to Regularization: Ridge and Lasso . . . . . . . . . . . . . . . . . . . . 143
5.1.1 L1 and L2 Regularization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
5.1.2 Linear Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.1.3 L1 (Lasso) Regularization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.1.4 L2 (Ridge) Regularization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
5.1.5 ElasticNet Regularization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
5.2 Part 5.2: Using K-Fold Cross-validation with Keras . . . . . . . . . . . . . . . . . . . . . . . . 152
5.2.1 Regression vs Classification K-Fold Cross-Validation . . . . . . . . . . . . . . . . . . . 152
5.2.2 Out-of-Sample Regression Predictions with K-Fold Cross-Validation . . . . . . . . . . 152
5.2.3 Classification with Stratified K-Fold Cross-Validation . . . . . . . . . . . . . . . . . . 155
5.2.4 Training with both a Cross-Validation and a Holdout Set . . . . . . . . . . . . . . . . 158
5.3 Part 5.3: L1 and L2 Regularization to Decrease Overfitting . . . . . . . . . . . . . . . . . . . 160
5.4 Part 5.4: Drop Out for Keras to Decrease Overfitting . . . . . . . . . . . . . . . . . . . . . . . 163
5.5 Part 5.5: Benchmarking Regularization Techniques . . . . . . . . . . . . . . . . . . . . . . . . 167
5.5.1 Additional Reading on Hyperparameter Tuning . . . . . . . . . . . . . . . . . . . . . . 168
5.5.2 Bootstrapping for Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
5.5.3 Bootstrapping for Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
5.5.4 Benchmarking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174

6 Convolutional Neural Networks (CNN) for Computer Vision 181
6.1 Part 6.1: Image Processing in Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
6.1.1 Creating Images (from pixels) in Python . . . . . . . . . . . . . . . . . . . . . . . . . . 182
6.1.2 Transform Images in Python (at the pixel level) . . . . . . . . . . . . . . . . . . . . . 183
6.1.3 Standardize Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
6.1.4 Adding Noise to an Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
6.1.5 Module 6 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
6.2 Part 6.2: Keras Neural Networks for Digits and Fashion MNIST . . . . . . . . . . . . . . . . 189
6.2.1 Computer Vision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
6.2.2 Computer Vision Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
6.2.3 MNIST Digits Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.2.4 MNIST Fashion Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.2.5 CIFAR Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.2.6 Other Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.2.7 Convolutional Neural Networks (CNNs) . . . . . . . . . . . . . . . . . . . . . . . . . . 191
6.2.8 Convolution Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.2.9 Max Pooling Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
6.2.10 TensorFlow with CNNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
6.2.11 Access to Data Sets - DIGITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
6.2.12 Display the Digits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
6.2.13 Training/Fitting CNN - DIGITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6.2.14 Evaluate Accuracy - DIGITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
6.2.15 MNIST Fashion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
6.2.16 Display the Apparel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.2.17 Training/Fitting CNN - Fashion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
6.3 Part 6.3: Implementing a ResNet in Keras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
6.3.1 Keras Sequence vs Functional Model API . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.3.2 CIFAR Dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.3.3 ResNet V1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
CONTENTS ix
6.3.4 ResNet V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
6.4 Part 6.4: Using Your Own Images with Keras . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
6.5 Part 6.5: Recognizing Multiple Images with Darknet . . . . . . . . . . . . . . . . . . . . . . . 225
6.5.1 How Does DarkNet/YOLO Work? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
6.5.2 Using YOLO in Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
6.5.3 Installing YoloV3-TF2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
6.5.4 Transfering Weights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
6.5.5 Running DarkFlow (YOLO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
6.5.6 Module 6 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

7 Generative Adversarial Networks 237
7.1 Part 7.1: Introduction to GANS for Image and Data Generation . . . . . . . . . . . . . . . . 237
7.2 Part 7.2: Implementing DCGANs in Keras . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
7.3 Part 7.3: Face Generation with StyleGAN and Python . . . . . . . . . . . . . . . . . . . . . . 250
7.3.1 Keras Sequence vs Functional Model API . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.3.2 Generating High Rez GAN Faces with Google CoLab . . . . . . . . . . . . . . . . . . 252
7.3.3 Run StyleGan2 From Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
7.3.4 Run StyleGAN2 From Python Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
7.3.5 Examining the Latent Vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
7.4 Part 7.4: GANS for Semi-Supervised Training in Keras . . . . . . . . . . . . . . . . . . . . . . 259
7.4.1 Semi-Supervised Classification Training . . . . . . . . . . . . . . . . . . . . . . . . . . 259
7.4.2 Semi-Supervised Regression Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
7.4.3 Application of Semi-Supervised Regression . . . . . . . . . . . . . . . . . . . . . . . . 260
7.5 Part 7.5: An Overview of GAN Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
7.5.1 Select Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

8 Kaggle Data Sets 263
8.1 Part 8.1: Introduction to Kaggle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.1.1 Kaggle Ranks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.1.2 Typical Kaggle Competition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.1.3 How Kaggle Competition Scoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.1.4 Preparing a Kaggle Submission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
8.1.5 Select Kaggle Competitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
8.1.6 Module 8 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
8.2 Part 8.2: Building Ensembles with Scikit-Learn and Keras . . . . . . . . . . . . . . . . . . . . 265
8.2.1 Evaluating Feature Importance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
8.2.2 Classification and Input Perturbation Ranking . . . . . . . . . . . . . . . . . . . . . . 266
8.2.3 Regression and Input Perturbation Ranking . . . . . . . . . . . . . . . . . . . . . . . . 269
8.2.4 Biological Response with Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . 271
8.2.5 What Features/Columns are Important . . . . . . . . . . . . . . . . . . . . . . . . . . 273
8.2.6 Neural Network Ensemble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
8.3 Part 8.3: Architecting Network: Hyperparameters . . . . . . . . . . . . . . . . . . . . . . . . 277
8.3.1 Number of Hidden Layers and Neuron Counts . . . . . . . . . . . . . . . . . . . . . . . 278
8.3.2 Activation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
8.3.3 Advanced Activation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
8.3.4 Regularization: L1, L2, Dropout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
8.3.5 Batch Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
8.3.6 Training Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
8.3.7 Experimenting with Hyperparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
x CONTENTS
8.4 Part 8.4: Bayesian Hyperparameter Optimization for Keras . . . . . . . . . . . . . . . . . . . 282
8.5 Part 8.5: Current Semester’s Kaggle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
8.5.1 Iris as a Kaggle Competition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
8.5.2 MPG as a Kaggle Competition (Regression) . . . . . . . . . . . . . . . . . . . . . . . . 292
8.5.3 Module 8 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295

9 Transfer Learning 297
9.1 Part 9.1: Introduction to Keras Transfer Learning . . . . . . . . . . . . . . . . . . . . . . . . 297
9.1.1 Transfer Learning Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
9.1.2 Module 9 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
9.2 Part 9.2: Popular Pretrained Neural Networks for Keras . . . . . . . . . . . . . . . . . . . . . 304
9.2.1 DenseNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
9.2.2 InceptionResNetV2 and InceptionV3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
9.2.3 MobileNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
9.2.4 MobileNetV2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
9.2.5 NASNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
9.2.6 ResNet, ResNetV2, ResNeXt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
9.2.7 VGG16 and VGG19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
9.2.8 Xception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
9.3 Part 9.3: Transfer Learning for Computer Vision and Keras . . . . . . . . . . . . . . . . . . . 306
9.3.1 Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
9.4 Part 9.4: Transfer Learning for Languages and Keras . . . . . . . . . . . . . . . . . . . . . . . 316
9.5 Part 9.5: Transfer Learning for Keras Feature Engineering . . . . . . . . . . . . . . . . . . . . 323

10 Time Series in Keras 327
10.1 Part 10.1: Time Series Data Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
10.1.1 Module 10 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
10.2 Part 10.2: Programming LSTM with Keras and TensorFlow . . . . . . . . . . . . . . . . . . . 331
10.2.1 Understanding LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
10.2.2 Simple TensorFlow LSTM Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
10.2.3 Sun Spots Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
10.2.4 Further Reading for LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
10.3 Part 10.3: Text Generation with LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.3.1 Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.3.2 Character-Level Text Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
10.4 Part 10.4: Image Captioning with Keras and TensorFlow . . . . . . . . . . . . . . . . . . . . 350
10.4.1 Needed Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
10.4.2 Running Locally . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
10.4.3 Clean/Build Dataset From Flickr8k . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
10.4.4 Choosing a Computer Vision Neural Network to Transfer . . . . . . . . . . . . . . . . 355
10.4.5 Creating the Training Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
10.4.6 Using a Data Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
10.4.7 Loading Glove Embeddings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.4.8 Building the Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
10.4.9 Train the Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
10.4.10 Generating Captions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
10.4.11Evaluate Performance on Test Data from Flicker8k . . . . . . . . . . . . . . . . . . . . 364
10.4.12Evaluate Performance on My Photos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
10.4.13Module 10 Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
CONTENTS xi
10.5 Part 10.5: Temporal CNN in Keras and TensorFlow . . . . . . . . . . . . . . . . . . . . . . . 368
10.5.1 Sun Spots Example - CNN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370

11 Natural Language Processing and Speech Recognition 375
11.1 Part 11.1: Getting Started with Spacy in Python . . . . . . . . . . . . . . . . . . . . . . . . . 375
11.1.1 Installing Spacy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
11.1.2 Tokenization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
11.1.3 Sentence Diagramming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
11.1.4 Stop Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
11.2 Part 11.2: Word2Vec and Text Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
11.2.1 Suggested Software for Word2Vec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
11.3 Part 11.3: What are Embedding Layers in Keras . . . . . . . . . . . . . . . . . . . . . . . . . 383
11.3.1 Simple Embedding Layer Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
11.3.2 Transferring An Embedding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
11.3.3 Training an Embedding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
11.4 Part 11.4: Natural Language Processing with Spacy and Keras . . . . . . . . . . . . . . . . . 391
11.4.1 Word-Level Text Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
11.5 Part 11.5: Learning English from Scratch with Keras and TensorFlow . . . . . . . . . . . . . 399
11.5.1 Imports and Utility Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
11.5.2 Getting the Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
11.5.3 Building the Vocabulary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
11.5.4 Building the Training and Test Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
11.5.5 Compile the Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
11.5.6 Train the Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
11.5.7 Evaluate Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
11.5.8 Adhoc Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410

12 Reinforcement Learning 413
12.1 Part 12.1: Introduction to the OpenAI Gym . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
12.1.1 OpenAI Gym Leaderboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
12.1.2 Looking at Gym Environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
12.1.3 Render OpenAI Gym Environments from CoLab . . . . . . . . . . . . . . . . . . . . . 416
12.2 Part 12.2: Introduction to Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
12.2.1 Introducing the Mountain Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
12.2.2 Programmed Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
12.2.3 Reinforcement Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
12.2.4 Running and Observing the Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
12.2.5 Inspecting the Q-Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
12.3 Part 12.3: Keras Q-Learning in the OpenAI Gym . . . . . . . . . . . . . . . . . . . . . . . . . 430
12.3.1 DQN and the Cart-Pole Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
12.3.2 Hyperparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
12.3.3 Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
12.3.4 Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
12.3.5 Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
12.3.6 Metrics and Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
12.3.7 Replay Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
12.3.8 Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
12.3.9 Training the agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
12.3.10 Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
xii CONTENTS
12.3.11 Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
12.3.12 Videos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
12.4 Part 12.4: Atari Games with Keras Neural Networks . . . . . . . . . . . . . . . . . . . . . . . 444
12.4.1 Actual Atari 2600 Specs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
12.4.2 OpenAI Lab Atari Pong . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
12.4.3 Hyperparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
12.4.4 Atari Environment’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
12.4.5 Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
12.4.6 Metrics and Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
12.4.7 Replay Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
12.4.8 Random Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
12.4.9 Training the agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
12.4.10 Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
12.4.11 Videos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
12.5 Part 12.5: Application of Reinforcement Learning . . . . . . . . . . . . . . . . . . . . . . . . . 455
12.5.1 Create an Environment of your Own . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
12.5.2 Testing the Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
12.5.3 Hyperparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
12.5.4 Instanciate the Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
12.5.5 Metrics and Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
12.5.6 Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
12.5.7 Training the agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
12.5.8 Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
12.5.9 Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
12.5.10 Videos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473

13 Advanced/Other Topics 475
13.1 Part 13.1: Flask and Deep Learning Web Services . . . . . . . . . . . . . . . . . . . . . . . . 475
13.1.1 Flask Hello World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
13.1.2 MPG Flask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
13.1.3 Flask MPG Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
13.1.4 Images and Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
13.2 Part 13.2: Deploying a Model to AWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
13.2.1 Train Model (optionally, outside of AWS) . . . . . . . . . . . . . . . . . . . . . . . . . 483
13.2.2 Next Step: Convert Model (must use AWS SageMaker Notebook) . . . . . . . . . . . 484
13.2.3 Step 1. Set up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
13.2.4 Step 2. Load the Keras model using the JSON and weights file . . . . . . . . . . . . . 485
13.2.5 Step 3. Export the Keras model to the TensorFlow ProtoBuf format (must use AWS
SageMaker Notebook) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
13.2.6 Step 4. Convert TensorFlow model to a SageMaker readable format (must use AWS
SageMaker Notebook) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
13.2.7 Tar the entire directory and upload to S3 . . . . . . . . . . . . . . . . . . . . . . . . . 487
13.2.8 Step 5. Deploy the trained model (must use AWS SageMaker Notebook) . . . . . . . . 488
13.2.9 Part 3: Test Model Deployment (optionally, outside of AWS) . . . . . . . . . . . . . . 489
13.2.10 Call the end point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
13.2.11Additional Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
13.3 Part 13.3: Using a Keras Deep Neural Network with a Web Application . . . . . . . . . . . . 490
13.4 Part 13.4: When to Retrain Your Neural Network . . . . . . . . . . . . . . . . . . . . . . . . 491
13.4.1 Preprocessing the Sberbank Russian Housing Market Data . . . . . . . . . . . . . . . 493
CONTENTS xiii
13.4.2 KS-Statistic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
13.4.3 Detecting Drift between Training and Testing Datasets by Training . . . . . . . . . . 496
13.5 Part 13.5: Using a Keras Deep Neural Network with a Web Application . . . . . . . . . . . . 497
13.5.1 Converting Keras to CoreML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
13.5.2 Creating an IOS CoreML Application . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
13.5.3 More Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500

14 Other Neural Network Techniques 503
14.1 Part 14.1: What is AutoML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
14.1.1 AutoML from your Local Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
14.1.2 AutoML from Google Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
14.1.3 A Simple AutoML System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
14.1.4 Running My Sample AutoML Program . . . . . . . . . . . . . . . . . . . . . . . . . . 514
14.2 Part 14.2: Using Denoising AutoEncoders in Keras . . . . . . . . . . . . . . . . . . . . . . . . 516
14.2.1 Function Approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
14.2.2 Multi-Output Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
14.2.3 Simple Autoencoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
14.2.4 Autoencode (single image) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
14.2.5 Standardize Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
14.2.6 Image Autoencoder (multi-image) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
14.2.7 Adding Noise to an Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
14.2.8 Denoising Autoencoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
14.3 Part 14.3: Anomaly Detection in Keras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
14.3.1 Read in KDD99 Data Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
14.3.2 Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
14.3.3 Training the Autoencoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
14.3.4 Detecting an Anomaly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
14.4 Part 14.4: Training an Intrusion Detection System with KDD99 . . . . . . . . . . . . . . . . . 545
14.4.1 Read in Raw KDD-99 Dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
14.4.2 Analyzing a Dataset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
14.4.3 Encode the feature vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
14.4.4 Train the Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
14.5 Part 14.5: New Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
14.5.1 Neural Structured Learning (NSL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
14.5.2 Bert, AlBert, and Other NLP Technologies . . . . . . . . . . . . . . . . . . . . . . . . 554
14.5.3 Explainability Frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 

link to download HERE

created by heaton research

youtube channnel heaton research 

Image source pixabay

Views: 985

Tags: dsc_ml, dsc_resource, dsc_tagged

Comment

You need to be a member of Data Science Central to add comments!

Join Data Science Central

© 2021   TechTarget, Inc.   Powered by

Badges  |  Report an Issue  |  Privacy Policy  |  Terms of Service