线性回归应用场景
- 房价预测
- 销量预测
- 贷款额度预测
线性回归定义
线性回归是一种利用回归方程(函数)对因变量和一个或多个自变量之间关系进行建模的分析方法。
特点:只有一个自变量时称为一元回归;存在多个自变量时称为多元回归。
线性回归主要有两种模型类型:线性关系和非线性关系。
一元线性关系
单个自变量与因变量呈线性关系。
多元线性关系
多个自变量与因变量呈线性关系。
非线性关系
当变量之间的关系无法用直线表示时。
线性回归中的损失与优化
假设我们有一个学习成绩的例子,变量之间的真实关系是:
真实关系:期末分数 = 0.5 × 平时分数 + 0.3 × 期末考试成绩
现在假设我们猜测一个关系:
猜测关系:预测期末分数 = 0.45 × 平时分数 + 0.2 × 期末考试成绩
真实结果和预测结果之间会存在一定的误差。
既然存在这个误差,我们应该如何衡量它呢?
损失函数
总损失函数为:
∑(yi - h(xi))²
- yi 是第 i 个训练样本的真实值
- h(xi) 是第 i 个训练样本的特征组合预测值
- 也称为最小二乘法
优化算法
如何找到模型中使损失最小的 W(目标是找到对应最小损失的 W 值)。
线性回归中常用的两种优化算法:
- 解析解(正规方程)
- 梯度下降
解析解(正规方程):
理解:X 是特征矩阵,Y 是目标矩阵,直接求解得到最佳结果。
缺点:当特征复杂繁多时,求解速度太慢,甚至可能无法收敛。
梯度下降:
梯度下降的基本思想可以类比为下山。一个人被困在山上,需要下去(例如找到最低点、山谷),但有浓雾导致能见度很低。因此,无法确定下山的路线,必须利用周围的信息来找到下山的路。
梯度是微积分中的一个重要概念:
- 在单变量函数中,梯度就是函数的导数,表示给定点的切线斜率
- 在多变量函数中,梯度是一个有方向的向量,梯度方向是给定点的最陡上升方向
- 在微积分中,对多元函数关于每个参数求偏导 ∂ 并写成向量形式,就得到了梯度
α 的含义:梯度下降中的 α 称为学习率或步长,意味着我们可以通过 α 来控制每一步走多远。
为什么要乘以负号:
在梯度前加一个负号意味着沿着梯度的反方向移动。如前所述,梯度方向是给定点的最陡上升方向,所以负梯度方向就是最陡下降方向——因此要加负号。
单变量函数的梯度下降
- 假设单变量函数 J(θ) = θ²
- 初始化起始点 θ0 = 1
- 学习率 α = 0.4
经过四次迭代后,基本达到函数的最小值。
多变量函数的梯度下降
- 目标函数:J(θ) = θ1² + θ2²
- 起始点:θ0 = (1, 3)
- 学习率:α = 0.1
- 函数梯度:J(θ) = < 2θ1, 2θ2 >
经过多次迭代后,梯度下降接近函数的最小点 (0, 0)。
对比:梯度下降 vs 正规方程
| 特征 | 梯度下降 | 正规方程 |
|---|---|---|
| 优点 | 适用各种场景 | 直接求解 |
| 缺点 | 需要迭代 | 特征多时慢 |