线性回归应用场景

  • 房价预测
  • 销量预测
  • 贷款额度预测

线性回归定义

线性回归是一种利用回归方程(函数)对因变量和一个或多个自变量之间关系进行建模的分析方法。

特点:只有一个自变量时称为一元回归;存在多个自变量时称为多元回归。

线性回归主要有两种模型类型:线性关系和非线性关系。

一元线性关系

单个自变量与因变量呈线性关系。

多元线性关系

多个自变量与因变量呈线性关系。

非线性关系

当变量之间的关系无法用直线表示时。

线性回归中的损失与优化

假设我们有一个学习成绩的例子,变量之间的真实关系是:

真实关系:期末分数 = 0.5 × 平时分数 + 0.3 × 期末考试成绩

现在假设我们猜测一个关系:

猜测关系:预测期末分数 = 0.45 × 平时分数 + 0.2 × 期末考试成绩

真实结果和预测结果之间会存在一定的误差。

既然存在这个误差,我们应该如何衡量它呢?

损失函数

总损失函数为:

∑(yi - h(xi))²

  • yi 是第 i 个训练样本的真实值
  • h(xi) 是第 i 个训练样本的特征组合预测值
  • 也称为最小二乘法

优化算法

如何找到模型中使损失最小的 W(目标是找到对应最小损失的 W 值)。

线性回归中常用的两种优化算法:

  1. 解析解(正规方程)
  2. 梯度下降

解析解(正规方程)

理解:X 是特征矩阵,Y 是目标矩阵,直接求解得到最佳结果。

缺点:当特征复杂繁多时,求解速度太慢,甚至可能无法收敛。

梯度下降

梯度下降的基本思想可以类比为下山。一个人被困在山上,需要下去(例如找到最低点、山谷),但有浓雾导致能见度很低。因此,无法确定下山的路线,必须利用周围的信息来找到下山的路。

梯度是微积分中的一个重要概念:

  • 在单变量函数中,梯度就是函数的导数,表示给定点的切线斜率
  • 在多变量函数中,梯度是一个有方向的向量,梯度方向是给定点的最陡上升方向
  • 在微积分中,对多元函数关于每个参数求偏导 ∂ 并写成向量形式,就得到了梯度

α 的含义:梯度下降中的 α 称为学习率或步长,意味着我们可以通过 α 来控制每一步走多远。

为什么要乘以负号

在梯度前加一个负号意味着沿着梯度的反方向移动。如前所述,梯度方向是给定点的最陡上升方向,所以负梯度方向就是最陡下降方向——因此要加负号。

单变量函数的梯度下降

  • 假设单变量函数 J(θ) = θ²
  • 初始化起始点 θ0 = 1
  • 学习率 α = 0.4

经过四次迭代后,基本达到函数的最小值。

多变量函数的梯度下降

  • 目标函数:J(θ) = θ1² + θ2²
  • 起始点:θ0 = (1, 3)
  • 学习率:α = 0.1
  • 函数梯度:J(θ) = < 2θ1, 2θ2 >

经过多次迭代后,梯度下降接近函数的最小点 (0, 0)。

对比:梯度下降 vs 正规方程

特征梯度下降正规方程
优点适用各种场景直接求解
缺点需要迭代特征多时慢