Preface
Chapter 1: A Gentle Introduction to Machine Learning
Introduction - classic and adaptive machines
Descriptive analysis
Predictive analysis
Only learning matters
Supervised learning
Unsupervised learning
Semi-supervised learning
Reinforcement learning
Computational neuroscience
Beyond machine learning - deep learning and bio-inspired adaptive
systems
Machine learning and big data
Summary
Chapter 2: Important Elements in Machine Learning
Data formats
Multiclass strategies
One-vs-all
One-vs-one
Learnability
Underfitting and overfitting
Error measures and cost functions
PAC learning
Introduction to statistical learning concepts
MAP learning
Maximum likelihood learning
Class balancing
Resampling with replacement
SMOTE resampling
Elements of information theory
Entropy
Cross-entropy and mutual information
Divergence measures between two probability distributions
Summary
Chapter 3: Feature Selection and Feature Engineering
scikit-learn toy datasets
Creating training and test sets
Managing categorical data
Managing missing features
Data scaling and normalization
Whitening
Feature selection and filtering
Principal Component Analysis
Non-Negative Matrix Factorization
Sparse PCA
Kernel PCA
Independent Component Analysis
Atom extraction and dictionary learning
Visualizing high-dimensional datasets using t-SNE
Summary
Chapter 4: Regression Algorithms
Linear models for regression
A bidimensional example
Linear regression with scikit-learn and higher dimensionality
R2 score
Explained variance
Regressor analytic expression
Ridge, Lasso, and ElasticNet
Ridge
Lasso
ElasticNet
Robust regression
RANSAC
Huber regression
Bayesian regression
Polynomial regression
Isotonic regression
Summary
Chapter 5: Linear Classification Algorithms
Linear classification
Logistic regression
Implementation and optimizations
Stochastic gradient descent algorithms
Passive-aggressive algorithms
Passive-aggressive regression
Finding the optimal hyperparameters through a grid search
Classification metrics
Confusion matrix
Precision
Recall
F-Beta
Cohen's Kappa
Global classification report
Learning curve
ROC curve
Summary
Chapter 6: Naive Bayes and Discriminant Analysis
Bayes' theorem
Naive Bayes classifiers
Naive Bayes in scikit-learn
Bernoulli Naive Bayes
Multinomial Naive Bayes
An example of Multinomial Naive Bayes for text classification
Gaussian Naive Bayes
Discriminant analysis
Summary
Chapter 7: Support Vector Machines
Linear SVM
SVMs with scikit-learn
Linear classification
Kernel-based classification
Radial Basis Function
Polynomial kernel
Sigmoid kernel
Custom kernels
Non-linear examples
v-Support Vector Machines
Support Vector Regression
An example of SVR with the Airfoil Self-Noise dataset
Introducing semi-supervised Support Vector Machines (S3VM)
Summary
Chapter 8: Decision Trees and Ensemble Learning
Binary Decision Trees
Binary decisions
Impurity measures
Gini impurity index
Cross-entropy impurity index
Misclassification impurity index
Feature importance
Decision Tree classification with scikit-learn
Decision Tree regression
Example of Decision Tree regression with the Concrete Compressive
Strength dataset
Introduction to Ensemble Learning
Random Forests
Feature importance in Random Forests
AdaBoost
Gradient Tree Boosting
Voting classifier
Summary
Chapter 9: Clustering Fundamentals
Clustering basics
k-NN
Gaussian mixture
Finding the optimal number of components
K-means
Finding the optimal number of clusters
Optimizing the ine