第二章 单变量线性回归

第二章 单变量线性回归

2.1 模型描述 Model representation

  • 房价模型:已知样本数据集(训练集)中的房子对应的面积和价格,学习任何预测房价(输出一个假设函数 hypothesis)。

    监督学习模型,回归模型(预测连续值)

  • 定义符号
    1. m m m 表示数据集训练样本集的数量
    2. x x x 表示输入变量/特征
    3. y y y 表示输出变量/目标
    4. ( x , y ) (x,y) (x,y) 表示一个训练样本
    5. ( x ( i ) , y ( i ) ) (x^{(i)},y^{(i)}) (x(i),y(i)) 表示特定样本,其中 ⋅ ( i ) \cdot^{(i)} (i) 表示索引
  • 单变量线性回归 Univariate linear Regression:预测线性函数 h ( x ) = θ 0 + θ 1 x h(x)=\theta_0+\theta_1 x h(x)=θ0+θ1x

2.2 代价函数 Cost function

假设函数 Hypothesis h ( x ) = θ 0 + θ 1 x h(x)=\theta_0+\theta_1 x h(x)=θ0+θ1x

目标:合适的选择模型参数 θ i \theta_i θi

  • 解决最小化问题:尽量减少预测价格和实际卖出价格的差的平方和
    minimize  θ 0 , θ 1 1 2 m ∑ i = 1 m ( h ( x ( i ) ) − y ( i ) ) 2 \text{minimize }\theta_0,\theta_1\quad \dfrac{1}{2m}\sum\limits_{i=1}^m \left(h(x^{(i)})-y^{(i)}\right)^2 minimize θ0,θ12m1i=1m(h(x(i))y(i))2

  • 代价函数 Cost Function(平方误差函数)

    • 定义 J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h ( x ( i ) ) − y ( i ) ) 2 , h ( x ) = θ 0 + θ 1 x J(\theta_0,\theta_1)= \dfrac{1}{2m}\sum\limits_{i=1}^m \left(h(x^{(i)})-y^{(i)}\right)^2,\quad h(x)=\theta_0+\theta_1 x J(θ0,θ1)=2m1i=1m(h(x(i))y(i))2,h(x)=θ0+θ1x

    • 使用

      Hypothesis: h θ ( x ) = θ 0 + θ 1 x h_\theta(x)=\theta_0+\theta_1 x hθ(x)=θ0+θ1x

      Parameters: θ 0 , θ 1 \theta_0,\theta_1 θ0,θ1

      Cost Function: J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h ( x ( i ) ) − y ( i ) ) 2 J(\theta_0,\theta_1)= \dfrac{1}{2m}\sum\limits_{i=1}^m \left(h(x^{(i)})-y^{(i)}\right)^2 J(θ0,θ1)=2m1i=1m(h(x(i))y(i))2

      Goal: min ⁡ θ 0 , θ 1 J ( θ 0 , θ 1 ) \min\limits_{\theta_0,\theta_1} J(\theta_0,\theta_1) θ0,θ1minJ(θ0,θ1)

      • 首先简化假设函数(使 θ 0 = 0 \theta_0=0 θ0=0): h = θ 1 x h=\theta_1x h=θ1x
      • 根据不同斜率 θ 1 \theta_1 θ1,得到 J J J 关于 θ 1 \theta_1 θ1 的图像
  • θ 0 ≠ 0 \theta_0\ne 0 θ0=0时,可以绘制 J J J 关于 θ 1 \theta_1 θ1 的三维图像(等高图像 Contour Figures)

2.3 梯度下降 Gradient Descent

目的:最小化函数值

  • 定义:反复迭代 θ j \theta_j θj 直到收敛 θ i : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) ( for  j = 0  and  j = 1 ) \color{red}\theta_i :=\theta_j-\alpha\dfrac{\partial }{\partial \theta_j}J(\theta_0,\theta_1)\qquad (\text{for }j=0\text{ and }j=1) θi:=θjαθjJ(θ0,θ1)(for j=0 and j=1),其中 α \alpha α 称为学习速率 learning rate,用来控制梯度下降时的迈步大小

    : = := := 赋值 Assignment

    = = = 判等 Truth Assertion

    • 重点:同时更新 simultaneous updates θ 0 , θ 1 \theta_0,\theta_1 θ0,θ1
      temp0 : = θ 0 − α ∂ ∂ θ j J ( θ 0 , θ 1 ) \text{temp0}:=\theta_0-\alpha\dfrac{\partial }{\partial \theta_j}J(\theta_0,\theta_1) temp0:=θ0αθjJ(θ0,θ1)
  • 实例观察更新过程:当只有一个参数 θ 1 \theta_1 θ1

    • 目标 min ⁡ θ 1 J ( θ 1 ) , θ 1 ∈ R \min\limits_{\theta_1}J(\theta_1),\quad \theta_1\in R θ1minJ(θ1),θ1R

    • 更新 θ 1 : = θ 1 − α d d θ 1 J ( θ 1 ) \theta_1:=\theta_1-\alpha\dfrac{d}{d\theta_1}J(\theta_1) θ1:=θ1αdθ1dJ(θ1)

    • 注意

      1. 初始 θ 1 \theta_1 θ1 的选择不影响局部结果
      2. α \alpha α 太小,每一次更新速度太慢;若 α \alpha α 太大,可能导致原理最优点(无法收敛)
    • 疑问:若学习速率 α \alpha α 不变,梯度下降法每次步长不变吗,如何保证一定收敛到最优解?

      解:由于越靠近最优解, d d θ J ( θ ) \dfrac{d}{d\theta}J(\theta) dθdJ(θ) 会越小。故 α \alpha α 不变时,梯度下降法将自动减小步长。当 θ 1 \theta_1 θ1 为局部最优解时, d d θ J ( θ ) = 0 \dfrac{d}{d\theta}J(\theta)=0 dθdJ(θ)=0 使得 θ 1 \theta_1 θ1 不变

2.4 线性回归中的梯度下降法 Gradient descent for linear regression

  • Batch 梯度下降法:每一步下降均遍历整个数据集

    • 计算步骤

      • ⨀ \color{red}\bigodot 1.计算导数项 ∂ ∂ θ j J ( θ 0 , θ 1 ) = ∂ ∂ θ j ⋅ 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 = ∂ ∂ θ j ⋅ 1 2 m ∑ i = 1 m ( θ 0 + θ 1 x ( i ) − y ( i ) ) 2 \dfrac{\partial }{\partial \theta_j}J(\theta_0,\theta_1)=\dfrac{\partial }{\partial \theta_j}\cdot\dfrac{1}{2m}\sum\limits_{i=1}^m \left(h_\theta(x^{(i)})-y^{(i)}\right)^2=\dfrac{\partial }{\partial \theta_j}\cdot\dfrac{1}{2m}\sum\limits_{i=1}^m \left(\theta_0+\theta_1x^{(i)}-y^{(i)}\right)^2 θjJ(θ0,θ1)=θj2m1i=1m(hθ(x(i))y(i))2=θj2m1i=1m(θ0+θ1x(i)y(i))2
        j = 0 : ∂ ∂ θ 0 J ( θ 0 , θ 1 ) = 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) j = 1 : ∂ ∂ θ 1 J ( θ 0 , θ 1 ) = 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) ⋅ x ( i ) \begin{aligned}&j=0:\dfrac{\partial }{\partial \theta_0}J(\theta_0,\theta_1)=\dfrac{1}{m}\sum\limits_{i=1}^m \left(h_\theta(x^{(i)})-y^{(i)}\right)\\ &j=1:\dfrac{\partial }{\partial \theta_1}J(\theta_0,\theta_1)=\dfrac{1}{m}\sum\limits_{i=1}^m \left(h_\theta(x^{(i)})-y^{(i)}\right)\cdot x^{(i)}\\ \end{aligned} j=0:θ0J(θ0,θ1)=m1i=1m(hθ(x(i))y(i))j=1:θ1J(θ0,θ1)=m1i=1m(hθ(x(i))y(i))x(i)

      • ⨀ \color{red}\bigodot 2.运用梯度下降法:重复计算直到收敛(一定要同时更新)
        θ 0 : = θ 0 − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) θ 1 : = θ 1 − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) ⋅ x ( i ) \begin{aligned}&\theta_0:=\theta_0-\alpha\dfrac{1}{m}\sum\limits_{i=1}^m \left(h_\theta(x^{(i)})-y^{(i)}\right)\\ &\theta_1:=\theta_1-\alpha\dfrac{1}{m}\sum\limits_{i=1}^m \left(h_\theta(x^{(i)})-y^{(i)}\right)\cdot x^{(i)}\\ \end{aligned} θ0:=θ0αm1i=1m(hθ(x(i))y(i))θ1:=θ1αm1i=1m(hθ(x(i))y(i))x(i)

    • 注意:由于线性回归代价函数的定义,所有代价函数(平方误差函数)均为凸函数 Convex function,可理解为弓形函数 Bow shaped function。于是代价函数只有全局最优解,而不存在错误的局部最优解,因此一定可以运用梯度下降法找到正确答案。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值