Book Image

Ensemble Machine Learning Cookbook

By : Dipayan Sarkar, Vijayalakshmi Natarajan
Book Image

Ensemble Machine Learning Cookbook

By: Dipayan Sarkar, Vijayalakshmi Natarajan

Overview of this book

Ensemble modeling is an approach used to improve the performance of machine learning models. It combines two or more similar or dissimilar machine learning algorithms to deliver superior intellectual powers. This book will help you to implement popular machine learning algorithms to cover different paradigms of ensemble machine learning such as boosting, bagging, and stacking. The Ensemble Machine Learning Cookbook will start by getting you acquainted with the basics of ensemble techniques and exploratory data analysis. You'll then learn to implement tasks related to statistical and machine learning algorithms to understand the ensemble of multiple heterogeneous algorithms. It will also ensure that you don't miss out on key topics, such as like resampling methods. As you progress, you’ll get a better understanding of bagging, boosting, stacking, and working with the Random Forest algorithm using real-world examples. The book will highlight how these ensemble methods use multiple models to improve machine learning results, as compared to a single model. In the concluding chapters, you'll delve into advanced ensemble models using neural networks, natural language processing, and more. You’ll also be able to implement models such as fraud detection, text categorization, and sentiment analysis. By the end of this book, you'll be able to harness ensemble techniques and the working mechanisms of machine learning algorithms to build intelligent models using individual recipes.
Table of Contents (14 chapters)

An ensemble of homogeneous models for energy prediction

In the following example, we will use the Keras API. Keras is an open source high-level framework for building deep neural networks. It's written on top of TensorFlow or Theano and uses them for its calculations behind the scenes. Keras can run on both CPU and GPU. The default settings of Keras are designed to deliver good results in most cases.

The focus of Keras is the idea of a model. Keras supports two types of models. The main type of model is a sequence of layers, called sequential. The other type of model in Keras is the non-sequential model, called model.

To build a sequential model, carry out the following steps:

  1. Instantiate a sequential model using Sequential()
  2. Add layers to it one by one using the Dense class
  3. Compile the model with the following:
    • A mandatory loss function
    • A mandatory optimizer
    • Optional...