学习机器学习的第一个模型是线性回归。除了作为一个简单的理解算法,结合正确的特征,还可以是一个强大的预测模型。
在本文中,我们将在Python中构建一个线性回归模型,并应用梯度下降的优化技术来降低成本函数。
以下是我们将要讨论的主题:
- 线性回归:模型的解释和概念;
- 梯度下降:关于GD及其变化的解释;
- 代码实现:通过编写Python代码来演示学习的概念;
线性回归
线性回归是一种基本的预测算法,能够找到两个或多个变量之间的关系,模型基本上调整了观察到的数据之间的线性方程。在线性回归中,我们有输入变量(x)和输出变量(y)。当x是模型中的唯一变量时,我们称之为简单线性回归,当有多个输入时,我们称之为多元线性回归。
在试图将线性模型拟合到数据之前,必须确定变量之间是否存在关系。散点图可以是显示元素分布的绝佳工具。
模型表示
简单线性回归是以下形式的公式:
- Y - 预测值;
- β0 -偏差系数,该系数允许模型具有额外的自由度;
- β1 -称为比例因子;
- X -特征的值;
同样的概念也适用于多线性回归,但有更多的变量。
梯度下降
梯度下降是一种通用的优化算法,能够找到一种方法来最小化成本函数。我们使用成本函数来查找模型预测中的错误。因此,最小化意味着在预测值中有较小的误差范围。
该技术通过将输入变量的权重转换为与数据集的每个交互的小部分来工作。
一个重要的参数是算法将作为基础的步骤的大小,称为“学习速率”。如果学习速率很小,算法将不得不经历许多交互并花费更多时间来收敛。否则,如果它太大,算法可能会跳过最小点。
梯度下降有三种变体