现在的目标就是让特征趋向一个相近的范围。左边的图像因为两个特征取值差异很大,所以会导致代价函数J(x)的呈椭圆形。
进行梯度下降时会如红色线条所示产生很大的抖动。
右边我们为两个特征进行缩放,除以特征的最大值。让他们取值都再0-1的区间。让代价函数J(x)呈圆形,这人收敛的很快。
通常认为缩放至-1-1是比较合适的。
!!!!!重点
均值归一化
均值归一化,让特征值有靠近0的值
这句话我想了半天,我觉得时让所有样本中的特征值减去平均值之后靠近了,为了将值定在(-1,-1)区间中。或者是有了靠近0的数,简化计算云云。。往后学吧
做法就是用(x-u1)/s1代替x1,其中u1为平均值,s1是范围。及最大值与最小值的差。也称为标准差(standard deviation)。
特征缩放就是让梯度下降更快,收敛所需的迭代次数减小
学习率
用来确定阿尔法的值
debuging:确认梯度下降函数正常进行
横坐标表示多少次梯度下降后J(X)收敛。
看图是一种方式,也可以通过算法自动判断函数是否收敛,自动收敛测试。如果J(x)下降到10^-3表示收敛,当然这个阈值可以根据实际情况来选取。作者更倾向与通过图像来观察,而不是自动收敛测试。
如果代价函数J(x)不断上涨,则需要降低学习率,大概率出现右边的情况。
根据数学家的证明,只要速率足够小,总能保证收敛。当然也不象出现太小导致收敛非常慢的情况。
特征与多项式回归
在预测房子价格这个例子中,我们可以不许用上述两个特征,而使用面积作为新的特征值(变量)。
如图所示,我们想用三次函数来拟合该图像,就把特征值列成上述h(x)
同时特征缩放也就十分重要,因为三次之后的数十分的大,会导致代价函数J(x)图像非常的大。
开始的时候不选择二次函数是因为它最终会下降,这与实际面积大了价格会降不符合。在实例中不光可以选择三次函数,也可以选择开方函数进行拟合,选择有很多
在之后的课程中会有算法提供需要的特征值与更好地模型。加油往后学吧!