Book Image

Mastering Machine Learning Algorithms

Book Image

Mastering Machine Learning Algorithms

Overview of this book

Machine learning is a subset of AI that aims to make modern-day computer systems smarter and more intelligent. The real power of machine learning resides in its algorithms, which make even the most difficult things capable of being handled by machines. However, with the advancement in the technology and requirements of data, machines will have to be smarter than they are today to meet the overwhelming data needs; mastering these algorithms and using them optimally is the need of the hour. Mastering Machine Learning Algorithms is your complete guide to quickly getting to grips with popular machine learning algorithms. You will be introduced to the most widely used algorithms in supervised, unsupervised, and semi-supervised machine learning, and will learn how to use them in the best possible manner. Ranging from Bayesian models to the MCMC algorithm to Hidden Markov models, this book will teach you how to extract features from your dataset and perform dimensionality reduction by making use of Python-based libraries such as scikit-learn v0.19.1. You will also learn how to use Keras and TensorFlow 1.x to train effective neural networks. If you are looking for a single resource to study, implement, and solve end-to-end machine learning problems and use-cases, this is the book you need.
Table of Contents (22 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
13
Deep Belief Networks
Index

Preface

Machine learning is a subset of AI which aims at making modern-day computers smarter, and intelligent. The real power of machine learning resides in its algorithms which make even the most difficult things possible for machines to handle. However, with the advancement in the technology and requirement of data, our machines will have to be smarter than they are today to meet the overwhelming needs, and knowing how different algorithms work to make ML effective is the need of the hour.  Mastering Machine Learning Algorithms is your tool, your guide to get your hands dirty with the most widely used algorithms. As a data science professional, you will need this book handy to deep dive into the most complex machine learning algorithms to get better at what you do, make machines learn and work to your needs.

What this book covers

Chapter 1,  Machine Learning Models Fundamentals, Machine Learning models are mathematical systems which share many common features. Even if, sometimes, they have been defined only from a theoretical viewpoint, the advancement in the research allowed to apply several concepts to better understand the behavior of complex systems like deep neural networks. In this chapter, we're going to introduce and discuss some fundamental elements that some skilled readers may already know, but that, at the same time, offer several possible interpretations and applications.

Chapter 2 , Introduction to Semi-Supervised Learning, Semi-Supervised Learning is a Machine Learning branch that tries to solve problems with both labeled and unlabeled data with an approach that employs concepts belonging to clustering and classification methods. The high availability of unlabeled samples, in contrast with the difficulty to label correctly huge datasets, drove many researchers to investigate the best approaches that allow extending the knowledge provided by the labeled samples to a larger unlabeled population without a loss of accuracy.

Chapter 3 , Graph-based Semi-Supervised Learning, in this chapter, we continue our discussion about Semi-Supervised Learning, considering a family of algorithms which is based on the graph obtained from the dataset and the existing relationships among samples. The problems that we are going to discuss belong to two main categories: the propagation of class labels to unlabeled samples and the usage of non-linear techniques based on the Manifold Assumption to reduce the dimensionality of the original dataset.

Chapter 4 ,  Bayesian Networks and Hidden Markov Models, in this chapter, we're going to introduce the basic concepts of Bayesian models, which allow working with several scenarios where it's necessary to consider the uncertainty as a structural part of the system. The discussion will focus on static (time-invariant) and dynamic methods, that can be employed where it's necessary to model time sequences.

Chapter 5 ,  EM algorithm and applications, in this chapter, we are going to introduce a very important algorithmic framework for many statistical learning tasks: the EM Algorithm. Contrary to its name, this is not a method to solve a single problem, but a methodology that can be applied in several contexts. Our goal is to explain the rationale and show the mathematical derivation, together with some practical examples.

Chapter 6 ,  Hebbian Learning, in this chapter we will discuss about how to discover rules, patterns and associations in large datasets and how to apply the Apriori algorithm to perform data mining.

Chapter 7 , Advanced Clustering and Feature Extraction, in this chapter we will cover the basics of Hebbian Learning. How the brain performs unsupervised learning and PCA. How to model a self organizing map. Examples in Python and Scikit-Learn.

Chapter 8 , Ensemble Learning, in this chapter we will learn how to implement efficient clustering algorithms and how to measure their performances. How to extract features from the data (like patterns, orientations, high-level features). Examples with Scikit-Learn.

Chapter 9 , Neural Networks for Machine Learning, in this chapter we analyze how to create an ensemble of classifiers using boosting and bagging techniques. He will also learn the Bayesian model combination technique and how voting classifiers work. Examples with Scikit-Learn and XGBoost.

Chapter 10, Auto-Encoders, in this chapter we discuss about t he basics of Neural Networks. How to build and train n-layers models. How to optimize and validate a neural model. Examples of regression (stock market) and classification (images).

Chapter 11, Advanced Neural Models, in this chapter we discuss about how to model and train efficiently an auto-encoder. Examples with Keras.

Chapter 12,  Generative Adversarial Networks, in this chapter we discuss about reinforcement learning techniques. How to model a RL algorithm based on Q-functions and policy gradient. How to solve complex end-to-end problems using advanced RL techniques.

Chapter 13, Deep Belief Networks, in this chapter we will learn how to model and train a (Restricted) Boltzmann machine. How to stack RBM to create DBNs and how to train them using the contrastive divergence algorithm.

Chapter 14, Introduction to Reinforcement Learning, in this chapter we discuss about reinforcement learning techniques. How to model a RL algorithm based on Q-functions and policy gradient. How to solve complex end-to-end problems using advanced RL techniques.

Chapter 15, Policy estimation algorithms, in this chapter we will learn how to model a RL algorithm based on Q-functions and policy gradient. How to solve complex end-to-end problems using advanced RL techniques like A3C and Deep-Q-Learning.