
Installing and setting up Python for data analysis and machine learning
The three different types of machine learning
Making predictions about the future with supervised learning
Making predictions about the future with supervised learning
Classification for predicting class labels
Regression for predicting continuous outcomes
Solving interactive problems with reinforcement learning
Discovering hidden structures with unsupervised learning
Finding subgroups with clustering
Dimensionality reduction for data compression
Introduction to the basic terminology and notations
Notation and conventions
Machine learning terminology
A roadmap for building machine learning systems
Using Python for machine learning
Training Simple Machine Learning Algorithms for Classification
Artificial neurons – a brief glimpse into the early history of machine learning
The formal definition of an artificial neuron
The perceptron learning rule
Implementing a perceptron learning algorithm in Python
An object-oriented perceptron API
Implementing a perception learning algorithm in Python
Implementing a perception learning algorithm in Python
Training Perceptron
Perceptron training
Perceptron prediction
Perceptron decision boundaries
Adaptive linear neurons and the convergence of learning
Mathematical modeling ADALINE
Adaptive linear neurons and the convergence of learning
Minimizing cost functions with gradient descent
Python Implementation
Section entire contents
Source code Python notebook
Choosing a classification algorithm
First steps with scikit-learn – training a perceptron
Modeling class probabilities via logistic regression
Logistic regression and conditional probabilities
Training a logistic regression model with scikit-learn
Maximum margin classification with support vector machines
Maximum margin intuition
Dealing with a nonlinearly separable case using slack variables
Solving nonlinear problems using a kernel SVM
Kernel methods for linearly inseparable data
Using the kernel trick to find separating hyperplanes in a high-dimensional space
Decision tree learning
Maximizing IG
Building a decision tree
K-nearest neighbors – a lazy learning algorithm
Resolving ties
Parametric versus nonparametric models
Section entire contents
Source code Python notebook
Predicting Continuous Target Variables with Regression Analysis
Introducing linear regression
Simple linear regression
Multiple linear regression
Exploring the Housing dataset
Loading the Housing dataset into a data frame
Visualizing the important characteristics of a dataset
Looking at relationships using a correlation matrix
Implementing an ordinary least squares linear regression model
Ordinary least squares (OLS)
Linear least squares (LLS)
Solving regression for regression parameters with gradient descent
Estimating the coefficient of a regression model via scikit-learn
Fitting a robust regression model using RANSAC
Evaluating the performance of linear regression models
Residual plots
Mean squared error (MSE)
Coefficient of determination
Using regularized methods for regression
Ridge Regression
Least absolute shrinkage and selection operator (LASSO)
Elastic Net
Turning a linear regression model into a curve – polynomial regression
Adding polynomial terms using scikit-learn
Section entire contents
Source code Python notebook
Dealing with nonlinear relationships using random forests
Random forest regression
Working with Unlabeled Data – Clustering Analysis
Grouping objects by similarity using k-means
K-means clustering using scikit-learn
Prototype-based clustering
Hierarchical clustering
Density-based clustering
Organizing clusters as a hierarchical tree
Hierarchical clustering
Agglomerative and divisive hierarchical clustering
Dendrograms
Grouping clusters in bottom-up fashion
Single linkage agglomerative hierarchical clustering
Complete linkage agglomerative hierarchical clustering
Performing hierarchical clustering on a distance matrix
Locating regions of high density via DBSCAN
Density-based spatial clustering of applications with noise (DBSCAN)
Core point
Border point
Noise points
Graph-based clustering
Section entire contents
Source code Python notebook
Modeling complex functions with artificial neural networks
Implementing a Multilayer Artificial Neural Network from Scratch
Deep neural network (DNN)
Single-layer neural network recap
Introducing the multilayer neural network architecture
Activating a neural network via forward propagation
Classifying handwritten digits
Mixed National Institute of Standards and Technology (MNIST)
Obtaining and preparing the MNIST dataset
Multi Layer Perceptron (MLP)
Training an artificial neural network
Computing the logistic cost function
Developing understanding of backpropagation
Training neural networks via backpropagation
About the convergence in neural networks
A few last words about the neural network implementation
Parallelizing Neural Network Training with TensorFlow
TensorFlow and training performance
Performance challenges
What is TensorFlow?
Section entire contents
Source code Python notebook
Data Preprocessing
Hyperparameter Tuning
Building Good Training Sets
Handling categorical data
Ordinal Data
Nominal Data
Partitioning a dataset into separate training and test sets
Bringing features onto the same scale
Selecting meaningful features
Assessing feature importance with random forests
Compressing Data via Dimensionality Reduction
Unsupervised dimensionality reduction via principal component analysis
PCA
Supervised data compression via linear discriminant analysis
LDA
Using kernel principal component analysis for nonlinear mappings
KPCA
Learning Best Practices for Model Evaluation
Hyperparameter Tuning
Streamlining workflows with pipelines
Using k-fold cross-validation to assess model performance
Question Bank: All topics covered
Machine Learning: The three different types of machine learning, Introduction to the basic terminology and notations, A roadmap for building machine learning systems, Using Python for machine learning
Training Simple Machine Learning Algorithms for Classification, Artificial neurons – a brief glimpse into the early history of machine learning, Implementing a perception learning algorithm in Python, Adaptive linear neurons and the convergence of learning
A Tour of Machine Learning Classifiers Using scikit-learn, Choosing a classification algorithm, First steps with scikit-learn – training a perceptron, Modeling class probabilities via logistic regression, Maximum margin classification with support vector machines, Solving nonlinear problems using a kernel SVM, Decision tree learning, K-nearest neighbors – a lazy learning algorithm.
Data Preprocessing, Hyperparameter Tuning: Building Good Training Sets, Dealing with missing data, Handling categorical data, Partitioning a dataset into separate training and test sets, Bringing features onto the same scale, Selecting meaningful features, Assessing feature importance with random forests, Compressing Data via Dimensionality Reduction, Unsupervised dimensionality reduction via principal component analysis, Supervised data compression via linear discriminant analysis, Using kernel principal component analysis for nonlinear mappings, Learning Best Practices for Model Evaluation and Hyperparameter Tuning, Streamlining workflows with pipelines, Using k-fold cross-validation to assess model performance.
Regression Analysis: Predicting Continuous Target Variables, Introducing linear regression, Exploring the Housing dataset, Implementing an ordinary least squares linear regression model, Fitting a robust regression model using RANSAC, Evaluating the performance of linear regression models, Using regularized methods for regression, Turning a linear regression model into a curve – polynomial regression
Dealing with nonlinear relationships using random forests, Working with Unlabeled Data – Clustering Analysis, Grouping objects by similarity using k-means, Organizing clusters as a hierarchical tree, Locating regions of high density via DBSCAN
Multilayer Artificial Neural Network and Deep Learning: Modeling complex functions with artificial neural networks, Classifying handwritten digits, Training an artificial neural network, About the convergence in neural networks, A few last words about the neural network implementation, Parallelizing Neural Network Training with Tensor Flow, Tensor Flow and training performance