吴恩达《机器学习》章节2单变量线性回归

1、模型描述

给定一组数据,如房屋的面积及其价格,根据给定的数据假设出一个模型,然后用来估计给定面积的房屋的价格。

m:训练样本的数量

x's:输入变量/特征

y's:输出变量/目标变量

(x,y):训练样本

(xi,yi):第i个训练样本,i表示样本中的第i行

吴恩达《机器学习》章节2单变量线性回归吴恩达《机器学习》章节2单变量线性回归

h(θ)=θ01x ; 是一个线性函数,类似于y=ax+b;单变量线性回归:即只有一个变量(特征)

h是一个假设函数(由x→y的映射)其作用是预测y是关于x的线性函数;x:特征/输入变量

2、代价函数

 损失函数(Loss/Error Function):计算单个训练集的误差

 代价函数(Cost Function):计算整个训练集所有损失函数之和的平均值

 代价函数又叫平方误差函数或平方误差代价函数

 代价函数为:吴恩达《机器学习》章节2单变量线性回归

 目标函数为:吴恩达《机器学习》章节2单变量线性回归

 吴恩达《机器学习》章节2单变量线性回归

为了直观理解代价函数到底是在做什么,先假设θ0=0,的变化。

吴恩达《机器学习》章节2单变量线性回归

上图中右侧J(θ0,θ1拟合程度最好的情况。

代价函数-直观理解

注:该部分由于涉及到了多变量成像,可能较难理解,要求只需要理解上节内容即可,该节如果不能较好理解可跳过。

给定数据集:

吴恩达《机器学习》章节2单变量线性回归

参数在θ0的3-D图像,图像中的高度为代价函数的值。

吴恩达《机器学习》章节2单变量线性回归

由于3-D图形不便于标注,所以将3-D图形转换为轮廓图(contour plot),下面用轮廓图(下图中的右图)来作直观理解,其中相同颜色的一个圈代表着同一高度(同一J(θ)值)。

 θ0=360,θ1=0时:

吴恩达《机器学习》章节2单变量线性回归

大概在θ0=0.12,θ1=250时:

吴恩达《机器学习》章节2单变量线性回归

上图中最中心的点(红点),近乎为图像中的最低点,也即代价函数的最小值,此时对应  对数据的拟合情况如左图所示,嗯,一看就拟合的很不错,预测应该比较精准啦。

3、梯度下降

 让计算机自动找出最小化代价函数时对应的θ值;

 思想:开始的时候,随便选择一个参数组合(θ0,θ1,θ2......θn),即起始点,计算代价函数。然后寻找下一个能使得代价函数下降最多的   参数组合,不懂迭代,直到找到一个局部最小值。由于下降的情况只考虑当前参数组合周围的情况,所以无法确定当前的局部最小值是否就   是全局最小值。不同的参数组合,可能会产生不同的局部最优值。如下图所示。

吴恩达《机器学习》章节2单变量线性回归吴恩达《机器学习》章节2单变量线性回归

梯度下降算法:(要同时更新θ的值)

 吴恩达《机器学习》章节2单变量线性回归吴恩达《机器学习》章节2单变量线性回归

 :=是赋值的意思

 α:学习速率,是一个大于0的数,α的取值很重要

  α过小:收敛的太慢,需要多次迭代

  α过大:可能越过最低点,甚至导致无法收敛

吴恩达《机器学习》章节2单变量线性回归

学习速率只需选定即可,不需要在运行梯度下降算法的时候进行动态改变,随着斜率越来越接近于0,代价函数的变化幅度会越来越小,直到收敛到局部极小值。

吴恩达《机器学习》章节2单变量线性回归

4、线性回归的梯度下降

  只需要将代价函数带入梯度下降算法中即可。

 吴恩达《机器学习》章节2单变量线性回归吴恩达《机器学习》章节2单变量线性回归

吴恩达《机器学习》章节2单变量线性回归