目录
第2周-4 多变量线性回归(Linear Regression with Multiple Variables)
4.1 多维特征
现在我们对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(𝑥1, 𝑥1, . . . , 𝑥𝑛)。
增添更多特征后,我们引入一系列新的注释:
𝑛 代表特征的数量
𝑥^(𝑖)代表第 𝑖 个训练实例,是特征矩阵中的第𝑖行,是一个向量(vector);
这个公式中有𝑛 + 1个参数和𝑛个变量,为了使得公式能够简化一些,引入𝑥0 = 1,则公
式转化:
公式可以简化为:ℎ𝜃(𝑥) = 𝜃^𝑇𝑋,其中上标𝑇代表矩阵转置;
4.2 多变量梯度下降
在多变量线性回归中,我们也构建一个代价函数,则这个代价函数是所有建模误差的平方和,即:
其中对各个参数𝜃求导的偏导数如下:
进而得到:
4.3 梯度下降法实践 1-特征缩放
面对多维特征问题的时候,我们要保证这些特征都具有相近的尺度,以房价问题为例,假设我们使用两个特征,房屋的尺寸和房间的数量,尺寸的值为 0-2000 平方英尺,而房间数量的值则是 0-5,以两个参数分别为横纵坐标,绘制代价函数的等高线图能,看出图像会显得很扁,梯度下降算法需要非常多次的迭代才能收敛;
解决的方法是尝试将所有特征的尺度都尽量缩放到-1 到 1 之间,也就是归一化处理。如图
4.4 梯度下降法实践 2-学习率
梯度下降算法收敛所需要的迭代次数根据模型的不同而不同,我们可以绘制迭代次数和代价函数的图表来观测算法在何时趋于收敛。
形如下左两种情况都是α选取太大导致的。
选取合适的α:… \dots…, 0.001,0.003,0.01,0.03,0.1,0.3,1,… \dots…
以3为倍数找到一个最大值,以该最大值或比该最大值略小的值作为α
4.5 特征和多项式回归
如房价预测问题,假设有两个特征:x1 是土地宽度,x2 是土地纵向深度,则有hθ(x) = θ0 + θ1x1 + θ2x2
由于房价实际与面积挂钩,所以可假设x = x1 * x2,则有hθ(x) = θ0 + θ1x
数据集样本分布如图所示:
线性回归并不适用于所有数据,有时我们需要曲线来适应我们的数据,
比如一个二次方模型:
或者三次方模型:
预测走势如图:
4.6 正规方程
到目前为止,我们都在使用梯度下降算法,但是对于某些线性回归问题,正规方程方法是更好的解决方案。
正规方程是通过求解下面的方程来找出使得代价函数最小的参数的:
用正规方程解出向量:
运用正规方程方法求解参数:
梯度下降与正规方程的比较: