声明:本文是以吴恩达机器学习系列课程为学习对象而作的学习笔记。本文对应P5-P8。
模型描述
引例
仍然是上期运用的房价例子:
假设现出售的房子大小为1250平方英尺,想要推测它的房价。可以进行模型拟合,这组数据似乎适合直线:
根据这个模型,将数据拟合成一个直线后,可以推测1250平方英尺的房子可以卖出220000美元左右的价格。
这是一个监督学习算法的例子。它之所以是监督学习,是因为每个例子都有一个“正确的答案”。而且这也是个回归问题的例子。
正式化表达
在监督学习里,我们有一个数据集,被称为训练集。我们所要做的就是从这个数据中学习如何预测房价。
监督算法的工作流程
向学习算法提供训练集。学习算法的任务是输出一个函数(通常用h表示),h代表假设函数。假设函数的作用是把房子的大小作为输入变量,把它作为x的值,而它会试着输出相应房子的预测y值。h是一个引导从x得到y的函数。
当我们设计一个学习算法时,下一个需要做的事情是决定这么表示这个假设函数h,此后便是运用各种函数来拟合的步骤了。
代价函数
平方误差代价函数
在线性回归中我们有一个像这样的训练集:
M代表了训练样本的数量,即M=47
而图中的假设函数为线性函数形式
接下来谈谈如何选择θ0和θ1这两个参数值。
选择不同的θ0和θ1,我们会得到不同的假设函数:
因此,想要选择最合适的两个参数,在线性回归中,我们要解决的是一个最小化问题,即需要h(x)和y之间的差异要小,所以我们现在要做的事情就是尽量减少假设的输出与房子真实价格之差的平方:
(hθ(x) - y)^2
我们对所有上式数值进行求和并除以总数:
因此,简单地说,我们正在把这个问题变成:找到能使我的训练集中预测值和真实值的差的平方的和的1/2M最小的θ0和θ1的值。
代价函数如下:
这种代价函数被称为平方误差代价函数,是解决回归问题最常用的手段之一。
代价函数深入
以下列出现有要素:
仍然是这个例子:
我们可以知道,通过改变θ0和θ1这两个参数值,我们可以拟合出不同的假设函数,同时对应的J也会不同。我们根据数据得出以下代价函数的图像:
我们可以在代价函数的图像上任意选择一个点,都能绘制出不同的假设函数图像,拟合程度自然不同。
于上可得,可以通过寻找代价函数J最小值的点,从而寻求更好的假设函数。