Coursera机器学习第二周学习笔记——Linear Regression with Multiple Variables

来源:互联网 发布:java官网下载jdk7 编辑:程序博客网 时间:2024/05/17 09:34

1.Linear Regression with Multiple Variables(多变量线性回归)

1.1多维特征(Multiple features)


前面都是单变量的回归模型,通过对模型增加更多的特征,就可以构成一个含有多个变量的模型,模型中的特征为(x1,x2,...,xn)。
以房价举例,前面在单变量的学习中只是用到了房屋的尺寸作为x来预测房价y,现在可以增加房间数、楼层数、房屋年龄等因素来作为特征预测房价y。如下面两页ppt所示。
在这里,我们引入了新的注释:
n 表示特征的数量
x^(i)代表第 i 个训练实例,是特征矩阵中的第i 行,是一个向量(vector)。
x^(i)_j表示训练样本中第i行的第j个特征。
例如,上图中的x^(3)=[1534 3 2 30]T。


多变量的假设函数h可以表示为下式(第一次用在线LaTex编辑公式,不知道好不好用,链接在后面在线LaTex公式编辑器)

1.2多变量梯度下降(Gradient descent for multiple variables)

在多变量线性回归中,我们同样也构建代价函数,此函数为所有建模误差的平方和。

找出是的代价函数最小的一系列参数。
多变量线性回归的批量梯度下降算法为:


新旧算法对比为:


1.3Gradient descent in practice I: Feature Scaling 


确保这些特征都具有相近的尺度,这能够使梯度下降算法更快地收敛。尽可能的把所有特征的尺度都缩放到-1到1之间。

1.4 Gradient descent in practice II: Learning rate

梯度下降算法的每次迭代都受到学习率的影响,如果学习率α太小,则达到收敛的迭代次数会很高;如果α过大,每次迭代可能不会减少代价函数,可能会越过局部最小值而无法收敛。


1.5 Features and polynomial regression 

线性回归并不适用于所有数据,有时我们需要曲线来适应我们的数据,可以使用二次方程或者三次及更高次幂的方程。


1.6 Normal equation

到目前为止,我们都在使用梯度下降算法,但是对于某些线性回归问题,正则方程方法是更好的解决方案。





只要特征变量的数目并不大,正则方程是一个很好的计算θ的替代方案。只要特征变量的数量小于一万,可以使用正则方程法。但是由于求逆运算计算量较大,所以数据维度高时,使用梯度下降算法。
阅读全文
0 0
原创粉丝点击