(二)Deep Learning笔记:单变量线性回归1
- 模型描述
以Portland市房价预测为例,我们的数据集和表示符号如图所示:
监督学习算法是怎么工作的:
我们会提供一个训练集,学习算法的任务是给出一个函数h(假设函数),h(x)把房子的尺寸作为输入x,并试着输出房子的预测价格y值。
如何表示h(x)?假设h(x)是一个线性函数,可以表示为:
上图中的h(x)是一个线性函数,并且只有一个变量,是单变量线性回归问题。
- 代价函数(一)
上节已建立了假设函数的模型,我们要做的是如何选择模型中参数θ的值。选取不同的参数,则假设函数h(x)也不同,例如:
如何选取合适的参数θ?根据已知的训练集,我们让假设函数h(x)与训练集中的数据去进行拟合。求参数θ的问题,等同于一个求最小化的问题,尽可能的去减少假设函数输出的房价与房子真实价格的差。
我们定义代价函数cost function,m代表训练集的样本数量。
为了方便,假设θ0=0,探究假设函数h(x)与代价函数J(θ1)的关系。如图所示,h(x)是x的函数,J(θ1)是θ1的函数。
根据上图可知θ1=1时,J(1)=0,即图中红色标记处。
根据上图可知θ1=0.5时,J(0.5)=0.58。
根据上图可知θ1=0时,J(0)=2.3。依次类推,可以画出J(θ1)的曲线。
对于每一个θ1,对应一条h(x)直线,对应的代价函数J(θ1)上的一个点。线性回归的目的是找到一个θ1,使得代价函数最小。在这条曲线中,可以观察到θ1=1时,J(1)=0最小。
- 代价函数(二)
假设h是θ0、θ1的函数,我们无法画出J(θ0,θ1)的平面图,因为此时J(θ)是一个3D曲面图,比如这样:
它的x轴和y轴分别代表θ0,θ1,z轴为J(θ0,θ1)的值。
我们也可用等高线图来表示。等高线图中的每一个椭圆代表J(θ0,θ1)相同时所有θ0,θ1的取值,也就是说图中标注出的三个点,它们的θ0,θ1的取值并不相等,但是J(θ0,θ1)的值是相等的。可以把等高线图想象成一只碗,每个椭圆代表的高度是一样的,把这个碗立起来就是J(θ0,θ1)的3D图。