This book is a comprehensive guide to machine learning, covering the theoretical and practical aspects. It provides a thorough overview of the subject, detailed explanations and examples of various methods and models. It is intended for students, researchers and practitioners who want to learn the fundamentals and applications of machine learning.
Salient features
C R Rene Robin is Professor at the Department of Computer Science and Engineering, and Dean (Innovation), at Sri Sairam Engineering College, Chennai, Tamil Nadu.
Doreen Robin is Founder and Director of the Computational Intelligence Research Foundation (CIRF), Chennai, Tamil Nadu.
Chandra Mouli P V S S R is Professor at the Department of Computer Science, Central University of Tamil Nadu, Thiruvarur, Tamil Nadu.
About the Authors Preface Acknowledgements Chapter 1 Introduction to Machine Learning Introduction | What is Machine Learning? | History of Machine Learning | Role of Machine Learning in Computer Science and Problem Solving | Why Machine Learning? | Adaptivity of Machine Learning | Designing versus Learning | Training versus Testing in Machine Learning | Machine Learning versus Automation | Predictive and Descriptive Tasks in Machine Learning | Some Terminology Related to Machine Learning | Types of Machine Learning | Passive Learning versus Active Learning | Online versus Batch Machine Learning | Differences between Machine Learning Models and Algorithms | Disadvantages of Data-driven Solutions | Well-posed Machine Learning Problems | Designing a Learning System (Life Cycle of Machine Learning) Chapter 2 Probability Theory and Statistics in Machine Learning Introduction | Probability | Probability Theory | Joint, Marginal, and Conditional Probability | Statistics | Key Concepts of Probability Distributions | Probability Distributions | Examples of Probability Distributions | Conditional Distribution | Joint Distribution | Combinatorics | Probability Rules and Axioms | Moment Generating Function | Maximum Likelihood Estimation | Density Functions | Density Estimation | Challenges and Future Directions in Probability and Statistics for Machine Learning Chapter 3 Linear Algebra Introduction | Linear Regression | Matrix Decomposition | Vectors and Matrices | Eigenvalue and Eigenvectors | Norms and Vector Spaces | Optimization | Linear Transformation | Cramer’s Rule | Gaussian Elimination | LU Decomposition | QR Decomposition | Eigen Decomposition | Symmetric Matrices | Orthogonalization | Deep Learning with Linear Algebra Chapter 4 Algorithms and Complex Optimizations Sets, Relations, and Functions | Convex Sets and Convex Functions | Optimization Problems | Convex Optimization | Unconstrained Optimization | Constrained Optimization | Dual Optimization Problems | Dynamic Programming | Sublinear Algorithms | Graphs | Transforms | Information Theory | Manifolds Chapter 5 Computational Learning Theory Introduction | Objectives of Computational Learning Theory | History | Importance of Computational Learning Theory | The Main Methods | Probably Approximately Correct Learning | Complexity Theory of Machine Learning | Mistake-bound Learning Model | Instance-based learning | Lazy and Eager Learning | Generative Learning | Consistent Learning | Worst Case (Online) Learning | Applications of Computational Learning Theory | Evaluation Metrics for Computational Learning Theory | Future Directions in Computational Learning Theory Chapter 6 Machine Learning Models Introduction | Models in Machine Learning | Features | Concept Learning Chapter 7 Unsupervised Learning Introduction | What and Why of Unsupervised Learning | Types of Unsupervised Learning | Markov Models | Hidden Markov Model | Matrix Factorization and Matrix Completion Models | Generative Models | Latent Factor Models | Inference Models | Non-negative Matrix Factorization | Advantages of Unsupervised Learning | Disadvantages of Unsupervised Learning Chapter 8 Supervised Learning: Classification Introduction | K-Nearest Neighbor (KNN) | Decision Trees | Random Forests | Linear Classifiers | Applications of Supervised Learning | Limitations and Challenges of Supervised Learning Chapter 9 Supervised Learning: Regression Introduction | Linear Regression versus Non-Linear Regression | Types of Linear Models | Least Squares Method (LSM) | Multivariate Linear Regression | Nonlinearity and Kernel Methods | Generalized Linear Models | AdaBoost (Adaptive Boosting) | Regularized Regression | Backpropagation | Support Vector Regression | Decision Tree Regression | Random Forest Regression | Neural Network Regression | Multi-layer Propagation | Radial Basis Functions | Splines | Curse of Dimensionality | Interpolations and Basis Functions | Multi-class/Structured Outputs, Ranking Chapter 10 Artificial Neural Networks Introduction to Neural Networks | Introduction to Artificial Neural Networks | Types of Artificial Neural Networks | Other Types of ANNs | Building Neural Network Architectures | Training Neural Networks with Backpropagation | Autoencoders | Applications of ANNs | Future of ANNs Chapter 11 Trends in Machine Learning Reinforcement Learning | Multitask Learning | Online Learning | Sequence Learning | Prediction Learning | Bagging and Boosting in Machine Learning | Trends in Machine Learning Technology Chapter 12 Applications of Machine Learning in Various Industries Real-World Problems Solved by Machine Learning | Applications of Machine Learning in the Retail Industry | Applications of Machine Learning in the Logistics Industry | Applications of Machine Learning in the Manufacturing Industry | Applications of Machine Learning in the Energy and Utilities Industry | Applications of Machine Learning in the Travel Industry | Applications of Machine Learning in the Banking Industry | Applications of Machine Learning in the Finance Industry | Applications of Machine Learning in the Insurance Industry Chapter 13 Machine Learning Programming: Capstone Projects Using Python and R Introduction | Installing Python | The sklearn Package | Anaconda Navigator | Data Operations on the Iris Data Set | Finding Outliers | Removing Outliers | Imputing Null Values | Capping the Outlier Values | Splitting the Data into Training and Testing Data | Training and Evaluating the Model | Regularization Techniques that Prevent Overfitting | Implement Linear Regression | Implement Logistic Regression | Decision Tree Classifier | Implement SVM | Implement PCA | Implement Steepest Descent | Implement Random Forest | Implement Random Search | Implement Naïve Bayes | Implement Single-Layer Perceptron Learning Algorithm | Implement Radial Basis Functions | Implement Linear Classifier | Implement Bayesian Classifier | Implement K-Nearest Neighbor Classifier | Implement Linear Discriminant Analysis | Implement Locality Preserving Projection | Implement Logic Gates without Perceptron Model | Implement Logic Gates with Perceptron Model | Handwritten Classification using CNN | Introduction to R Programming Chapter 14 Machine Learning Programming Using Jupyter Notebook Introduction | Using the Online Interface of Jupyter Notebook | A Python Program that Demonstrates the Use of Data Types | A Python Program that Asks for User Input and Uses Conditional Statements to Respond with Different Outputs | A Python Program that Prints Out a Sequence of Numbers using a for Loop and then Asks the User to Do the Same with a while Loop | A Python Program that Defines a Function to Calculate the Area of a Circle, Given its Radius, and then Calls that Function with Different Values | A Python Program that Creates a List of Items and a Dictionary of Key–Value Pairs, and then Demonstrates How to Access and Modify Elements | A Python Program that Reads a Text File, Counts the Number of Words, and Writes the Result to a New File | A Python Program that Intentionally Raises an Error and then Catches it with a try-except Block, Printing an Informative Message to the User | A Program to Define a Python Class with Attributes and Methods to Demonstrate OOP | A Program to Use the Matplotlib Library to Plot a Graph based on the Given Data Points, and Enhancing the Graph with Labels and a Legend | A Program to Introduce the pandas Library by Creating a DataFrame from a Dictionary, and Performing Basic Data Manipulation Operations such as Sorting and Filtering | Basic Operations Using the Iris Data Set | Iris Data Loading and Visualization | Data Processing | Feature Selection | Classification Algorithm: SVM | Classification Algorithm: Decision Tree | Classification Algorithm: KNN | Classification Algorithm: Logistic Regression | Model Evaluation | Hyperparameter Tuning | Cross-validation | Ensemble Methods | Clustering Analysis | Deep Learning | Deep Learning: Keras Appendix A: Model Course Structure Appendix B: Model Question Papers Index