Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

第二章 单变量线性回归(Linear Regression with One Variable)(一)

第1节 模型和代价函数(Model and Cost Function)

2.1 模型表示

参考视频 : 2 - 1 - Model Representation (8 min).mkv

我们学习的第一个算法是线性回归算法。你将会了解这个算法的概况,以及监督学习过程完整的流程。

还是预测房价的例子。已知一个数据集,其中包含不同尺寸的房子的价格。通过构建模型(直线、曲线或其他),可以对数据集外的房子预测价格。这就是监督学习中的回归问题。
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

在这个例子中,假设我们的数据训练集(training set)如下表所示:
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

回归问题的符号标记规定如下:

  • m 代表训练集中实例的数量(数据集中样本的数量)
  • x 代表特征/输入变量
  • y 代表目标变量/输出变量
  • (x,y) 代表训练集中的实例
  • (x(i),y(i)) 代表第 i 个观察实例
  • h 代表学习算法的解决方案或函数(也称为假设)

Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

这就是监督学习算法的工作方式,我们把训练集“喂”给学习算法,输出一个函数,通常用小写h表示;然后再将我们要预测的房屋的大小作为输入变量给h,该房屋的房价(输出变量)输出为结果。

那么我们该如何表达h呢?一种可能的表达方式为:hθ(x)=θ0+θ1x,其中只含有一个特征/输入变量,因此这样的问题叫做单变量线性回归问题

2.2 代价函数

参考视频: 2 - 2 - Cost Function (8 min).mkv

学习如何定义代价函数,这有助于我们弄清楚如何把最有可能的直线与给定的数据集相拟合。如图:
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

训练集的数量m = 47,假设函数也就是用来预测的函数是线性函数形式:hθ(x)=θ0+θ1x,其中θ0θ1参数,我们选择的参数决定了得到的直线,训练集中变量在所得直线上的值与训练集中实际值之间的差距(下图中蓝线所指)是建模误差
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

我们的目标是选择出 建模误差平方和最小 的模型参数,这里就是θ0θ1。代价函数为

J(θ0,θ1)=12mi=1m(hθ(x(i))y(i))2

其中分母是 2m,原因看这里 代价函数除2m的原因。根据代价函数绘出等高线图,三个坐标分别为θ0θ1J(θ0,θ1)
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

可以看出三维空间中存在一个使得J(θ0,θ1)最小的点(θ0,θ1)。

代价函数也被称作平方误差函数,求出误差的平方和对于大多数问题,特别是回归问题,是一个合理的选择。还有其他代价函数也能很好地发挥作用,但是平方误差代价函数是解决回归问题最常用的手段。接下来进一步解释代价函数J的工作原理,并尝试更直观第解释它在计算什么,以及我们使用它的目的。

2.3 代价函数的直观了解I

参考视频:2 - 3 - Cost Function - Intuition I (11 min).mkv

我们通过一些例子来获取一些直观的感受,看看代价函数到底是在干什么。
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)
代价函数的直观理解如下图,
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)

上图中令θ0=0,J(0,0)=14/6,J(0,1)=0。即如果固定其中一个参数为定值,则代价函数 J 为二次函数,可用中学数学知识求出最小值。

2.4 代价函数的直观了解II

参考视频:2 - 4 - Cost Function - Intuition II (11 min).mkv

本节课中深入学习代价函数的作用。下图为等高线图,多看几遍就能看懂了,如果不熟悉的话也没关系,对后续课程理解影响不大。
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)
把代价函数绘成等高线图,从图中可以看书三维空间中存在一个使得J(θ0,θ1)最小的点,此点对应的坐标记为所求参数θ0,θ1
Coursera机器学习笔记 第1周 第二章 单变量线性回归(一)
当然,我们真正需要的是一种有效的算法,能够自动地找出使代价函数 J 取最小值的参数θ0,θ1来。我们不想编程序把这些点画出来,然后人工读出来这些点的值,这不是一个好办法。我们真正需要的是编写程序来找出这写最小化代价函数的θ0,θ1