在这节中,我们将开始讨论一种新的线性回归的版本。这是一种更为有效的形式,这种形式适用于多个变量或者多特征量的情况。
在我们之前的学习中,我们只有一个单一特征变量x(如下面例子中的房屋面积),我们希望用这个特征量来预测y(如下面例子中的房屋价格)。我们的假设就为hθ(x)=θ0+θ1x。
但是,我们在很多时候我们不仅有房屋面积这一个特征来预测房屋价格,我们还会有卧室的数量、楼层的数量和房子的年龄多个特征来预测房屋价格。
我们用变量x1、x2、x3、x4来表示这里的四个特征,用y来表示预测的输出变量。
- 我们用n来表示特征量的数目,如这里的n=4。
- 我们用m来表示样本的数量。
- 我们用x(i)表示第i个训练样本的输入特征量。举个例子,这个例子中x(2)表示第2个训练样本的特征向量,所以x(2)表示的就是向量[1416,3,2,40](列向量)。在这个表示方法中,2相当于一个训练集的一个索引。
- 我们用xj(i)来表示第i个训练样本中第j个特征量的值。这个例子中x3(2)表示第2个训练样本的特征向量里面的第3个特征值,所以它的值为2。
既然我们有了多个特征量,那我们的假设形式应该写成什么样呢?
- 我们之前的假设形式为:hθ(x)=θ0+θ1x。
- 现在我们的假设形式为:hθ(x)=θ0+θ1x1+θ2x2+θ3x3+θ4x4。假如我们有n个特征量,那么假设形式就为:hθ(x)=θ0+θ1x1+θ2x2+θ3x3+……+θnxn。
接下来,我们要简化上面写出的表达方式。为了分别我们设x0=1(这意味着对于第i个样本都有x0(i)=1)。当然你也可以认为我们定义了一个额外的第0个特征量。在此之前我们有n个特征量(x1,x2,……xn),由于我们另外定义了一个第0特征量,并且取值恒为1,所以现在有n+1个特征量。所以我们现在的特征向量X=[x0,x1,x2,……xn](列向量),这是一个n+1维的向量。同时我们还可以把所有的参数写成一个向量,θ=[θ0,θ1,θ2,……θn](列向量),这也是一个n+1维的向量。
- 这时我们的假设形式可以写成:hθ(x)=θ0x0+θ1x1+θ2x2+θ3x3+……+θnxn。
更巧妙的是,我们可以将这个式子写成θTX(θ的转置乘以X)。