# AI building blocks - from scratch with Python

Linear regression and gradient descent are techniques that form the basis of many other, more complicated, ML/AI techniques (e.g., deep learning models). They are, thus, building blocks that all ML/AI engineers need to understand.

## Regression

Regression is a process in which we model how one variable (for example, sales) changes with respect to another variable (for example, number of users). Generally, **regression** techniques in machine learning are concerned with predicting continuous values (for example, stock price, temperature, or disease progression). **Classification**, on the other hand, is concerned with predicting discrete variables, or one of a discrete set of categories (for example, fraud/not fraud, sitting/standing/running, or hot dog/not hot dog).

**Linear regression**, as you might expect, models the relationship a response (e.g., sales) and a feature (e.g., users) using the...