单变量线性回归

假设函数:抽象出来的数据模型,含有大量的参数变量
代价函数:用来计算使假设函数和实际值差距最小的方法。进而确定假设函数中参数变量的值。

代价函数

目标:寻找一个theta_1, theta_0 使得预测值接近训练集中的样本

方法:预测值与ground truth求差的平方,对于所有样本的该值进行求和,最后除以2m(1/2为简化计算,后面有求导2*1/2变1),形成代价函数。最小化该代价函数,得到对应的theta_0和theta_1.

平方误差——解决回归问题的最常用手段

1

1

求解假设函数的方式:

  1. 先给两个参数一组值,
  2. 求出对应的代价函数,画图
  3. 寻找出图中代价函数的最小值

    用到了等高图的思想

    梯度下降(Gradient descent):

定义:梯度下降是迭代法中的一种,可以用于求解最小二乘问题。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。在机器学习中,基于基本的梯度下降法发展了两种梯度下降方法,分别为随机梯度下降法和批量梯度下降法。

等高线图:

将三维的空间图转化为二维图形求两个参数下的代价函数最小值。不同的梯度下降起始点可能会得到不同的局部最优点。

1

梯度下降算法:

  • 目的:寻找代价函数最小时的参数
  • 方法:找到梯度最大的方向
  • 结果:局部最优解
  • 注意:同步更新

1

学习率α代表更新的幅度。

考虑偏导数项,考虑其正负,正或负都会将参数更新的方向引导向最低谷。
若学习率过小,更新效率会很低;
若学习率过大,或许会错过最低谷。
考虑梯度下降法已经将参数调整至一个局部低谷,若继续用梯度下降法,由于导数项为0,所以更新会停滞。
即使学习率不变,梯度下降法也可以找到局部低谷。

1

“Batch” Gradient Descent:

“Batch” : Each step of gradient descent uses all the training examples

1

Donate? comment?