1. Multiple features(多维特征)
我们提到过的线性回归中,我们只有一个单一特征量(变量)——房屋面积x。我们希望使用这个特征量来预测房子的价格。我们的假设在下图中用蓝线划出:
不妨思考一下,如果我们不仅仅知道房屋面积(作为预测房屋价格的特征量(变量)),我们还知道卧室的数量、楼层的数量以及房屋的使用年限,那么这就给了我们更多可以用来预测房屋价格的信息。
即,支持多变量的假设为:
这个公式中有n+1个参数和n个特征量(变量),为了使得公式能够简化一些,引入x0=1,则公式转化为:
可以简化为如下形式:
2. Gradient descent for multiple variables(多变量梯度下降)
3. Gradient descent in practice:Feature Scaling(特征缩放)
1、下面我们来介绍一些关于梯度下降运算中的实用技巧,首先是特征缩放 (feature scaling) 方法。
如果你有一个机器学习问题,并且这个问题有多个特征。如果你能确保这些特征都处在一个相近的范围(确保不同特征的取值在相近的范围内),这样梯度下降法就能更快地收敛。
具体来说,假如你有一个具有两个特征的问题,其中 x1 是房屋面积大小,它的取值在0到2000之间,x2 是卧室的数量,这个值取值范围在1到5之间。如果你画出代价函数J(θ) 的轮廓图:
那么这个轮廓看起来,应该是如上图左边的样子。
J(θ) 是一个关于参数 θ0 、θ1 和 θ2 的函数,我在此处忽略 θ0 (暂时不考虑 θ0)。并假想一个函数的参数,只有 θ1 和 θ2,但如果变量 x1 的取值范围远远大于 x2 的取值范围的话,那么最终画出来的代价函数 J(θ) 的轮廓图就会呈现出这样一种非常偏斜并且椭圆的形状。2000和5的比例会让这个椭圆更加瘦长。
所以