线性回归
什么是线性回归
3.1. 线性回归 — 动手学深度学习 2.0.0 documentation (d2l.ai)
模型
损失函数
模型拟合(fit)数据之前,我们需要确定一个拟合程度的度量。 损失函数(loss function)能够量化目标的实际值与预测值之间的差距。通常我们会选择非负数作为损失,且数值越小表示损失越小,完美预测时的损失为0。回归问题中最常用的损失函数是平方误差函数。
解析解
线性回归的解可以用一个公式简单地表达出来, 这类解叫作解析解(analytical solution)。像线性回归这样的简单问题存在解析解,但并不是所有的问题都存在解析解。 解析解可以进行很好的数学分析,但解析解对问题的限制很严格,导致它无法广泛应用在深度学习里。
随机梯度下降
即使在我们无法得到解析解的情况下,我们仍然可以有效地训练模型。 在许多任务上,那些难以优化的模型效果要更好。 因此,弄清楚如何训练这些难以优化的模型是非常重要的。
本书中我们用到一种名为**梯度下降(gradient descent)**的方法, 这种方法几乎可以优化所有深度学习模型。 它通过不断地在损失函数递减的方向上更新参数来降低误差。
用模型进行预测
给定“已学习”的线性回归模型wx+b, 现在我们可以通过房屋面积x1和房龄x2来估计一个(未包含在训练数据中的)新房屋价格。 给定特征估计目标的过程通常称为预测(prediction)或。
从线性回归到深度网络
线性回归可以看成是一个单层网络
实战
在了解线性回归的关键思想之后,我们可以开始通过代码来动手实现线性回归了。
流程如下
- 生成数据
- 读取数据
- 初始化模型参数
- 定义模型
- 定义损失函数
- 定义优化算法
- 训练
- 验证
具体代码如下
3.2. 线性回归的从零开始实现 — 动手学深度学习 2.0.0 documentation (d2l.ai)
hapter_linear-networks/linear-regression-scratch.html)