文章目录

  • 1.代价函数(cost function)
  • 1.1 代价函数图像
  • 2.gradient descent(梯度下降)
  • 2.1 正导数:positive derivative
  • 2.2 负导数:negative derivatvie
  • 2.3 线性回归的梯度下降(gradient descent of linear regression )
  • 3.矩阵的介绍
  • 4.多元线性回归和其梯度下降
  • 4.1 多元线性回归
  • 4.2 多元线性回归的梯度下降
  • 4.3 多元线性回归的梯度下降——特征缩放
  • 4.4 多项式回归

1.代价函数(cost function)

1.1 代价函数图像

机器学习——线性回归_人工智能


上图两个坐标表示参数机器学习——线性回归_机器学习_02机器学习——线性回归_梯度下降_03,它们是动态变化的。通常使用contour figure(等高线线)来描述上面的3D图像:

机器学习——线性回归_机器学习_04

在右图的等高线中,每个圆圈上面的点的值是一致的。当前红色点处于参数机器学习——线性回归_梯度下降_05对应于左图的直线,但这时候的直线没有很好拟合数据。

2.gradient descent(梯度下降)

  • 微积分:calculus
  • 导数:derivatives
  • 收敛:converge
  • 不收敛:diverge

梯度下降更新公式:
机器学习——线性回归_逻辑回归_06

上面两个参数需要同步更新,也就是说在一次迭代中,这两个参数是同时更新的。假设首先需要更新参数机器学习——线性回归_梯度下降_03,其cost function为:
机器学习——线性回归_人工智能_08

同时其cost function的函数图像为:

2.1 正导数:positive derivative

机器学习——线性回归_人工智能_09

当利用公式(2-1)可以求得导数为positive number,则机器学习——线性回归_梯度下降_03会偏向于向最小值移动。

2.2 负导数:negative derivatvie

机器学习——线性回归_吴恩达_11

同样的,求得的导数会出现negative number,则使得更新之后的机器学习——线性回归_梯度下降_03也会偏向于最小值。

2.3 线性回归的梯度下降(gradient descent of linear regression )

在线性回归中,通常使用square error(平方误差)来计算代价函数:
机器学习——线性回归_人工智能_13

机器学习——线性回归_人工智能_14
公式中机器学习——线性回归_吴恩达_15代表真实样本的值,机器学习——线性回归_逻辑回归_16则代表线性回归模型的预测值。机器学习——线性回归_人工智能_17为data set中的样本数。

  • 为什么要在分子上加上2呢这是因为在求解partial derivative(偏导数)中可以化简出比较简便的形式。

最后可以分别求得两个参数的partial derivative:
机器学习——线性回归_机器学习_18

机器学习——线性回归_人工智能_19

  • Batch:每完成一次梯度更新,则默认为完成了一个batch。在batch里面,梯度更新会计算所有的机器学习——线性回归_逻辑回归_20个样本。

3.矩阵的介绍

  • 单位(identity)矩阵:机器学习——线性回归_吴恩达_21(对角矩阵都为1)
  • 转置矩阵
  • 矩阵的逆(matrix inverse):
    机器学习——线性回归_人工智能_22
    其中矩阵机器学习——线性回归_梯度下降_23的维度为机器学习——线性回归_逻辑回归_24,它必定是一个方阵。如果一个矩阵没有逆矩阵,则称为奇异矩阵(Singular matrix),元素为0的矩阵就是一个奇异矩阵。

4.多元线性回归和其梯度下降

4.1 多元线性回归

之间已经简要叙述过简单的线性回归模型,其公式为:
机器学习——线性回归_人工智能_13

为了引出多元线性回归模型,引入一个预测房价的问题,其具体的特征如下:

机器学习——线性回归_吴恩达_26


在上面的房价预测问题中,共有4个特征:size,房间数量,楼层,使用年限,需要预测的是:价格

  • 机器学习——线性回归_机器学习_27:共有n个特征
  • 机器学习——线性回归_人工智能_28:表示在数据集中的第机器学习——线性回归_逻辑回归_29个样本
  • 机器学习——线性回归_人工智能_30:表示在第机器学习——线性回归_逻辑回归_29个样本中,第机器学习——线性回归_逻辑回归_32个特征。

最后可以列出多元线性回归模型:
机器学习——线性回归_吴恩达_33
其中,机器学习——线性回归_梯度下降_34机器学习——线性回归_机器学习_35都为一维向量,同时机器学习——线性回归_人工智能_36

4.2 多元线性回归的梯度下降

在2.3节中已经简单介绍了线性回归的梯度下降,那么多元线性回归的梯度下降也是一样的,在一次迭代的过程当中,需要更新所有的参数机器学习——线性回归_梯度下降_34
机器学习——线性回归_吴恩达_38

具体的,上述公式中的偏导数可以化简为:
机器学习——线性回归_人工智能_39

4.3 多元线性回归的梯度下降——特征缩放

在原始的算法当中,不同特征之间的取值范围不同,会造成gradient descent时收敛过慢。例如,假设存在两个特征:房子的面积和房子的年龄。房子面积机器学习——线性回归_人工智能_40的取值范围在**(1-2000),而房子年龄机器学习——线性回归_逻辑回归_41的取值范围为(1-10)**。这两个特征对应的参数为:机器学习——线性回归_梯度下降_42。它们的代价函数contour图像如下:

机器学习——线性回归_吴恩达_43


可以看出机器学习——线性回归_梯度下降_03的取值范围会比机器学习——线性回归_梯度下降_45要小,这是因为只要改变一点点的机器学习——线性回归_梯度下降_03,则代价函数机器学习——线性回归_逻辑回归_47会影响比较大,所以它的取值会比较小。这时候如果利用梯度下降算法,它会收敛速度比较慢。而如果把这两个特征进行缩放,缩放到0-1之间,这时候图像会变成:

机器学习——线性回归_逻辑回归_48


此时收敛速度加快,能够更快找到全局最优点。缩放特征有两种比较常见的方法:

  • 最大最小归一化
    机器学习——线性回归_梯度下降_49
    首先找出该特征所有值的最大值和最小值,然后按照公式对每个特征值进行缩放。
  • Z-score标准化
    机器学习——线性回归_人工智能_50
    其中机器学习——线性回归_人工智能_51为均值,机器学习——线性回归_机器学习_52为方差

4.4 多项式回归

有些数据不能简单用多元线性回归来进行拟合,这时候可以利用多项式回归来进行拟合。

具体的,polynomial regression可以拟合下图:

机器学习——线性回归_逻辑回归_53


可以用下面公式表示

机器学习——线性回归_人工智能_54

也即是说可以用cubic model(三次模型)来拟合曲线,同时作为多项式回归方程。