## Introduction

**scikit-learn** is a free, open source library built for Python that contains an assortment of supervised and unsupervised machine learning algorithms. Additionally, scikit-learn provides functions for data preprocessing, hyperparameter tuning, and model evaluation, which we will be covering in the upcoming chapters. It streamlines the model-building process and is easy to install on a wide variety of platforms. scikit-learn started in 2007 as a Google Summer of Code project by David Corneapeau, and after a series of developments and releases, scikit-learn has evolved into one of the premier tools used by academics and professionals for machine learning.

In this chapter, we will learn to build a variety of widely used modeling algorithms, namely, linear and logistic regression, support vector machines (SVMs), decision trees, and random forests. First, we will cover linear and logistic regression.