多变量线性回归(Multivariate Linear Regression)
多特征(Multiple Features)
首先定义我们将要用到的变量
在房价模型中
- Xi表示一个矩阵,含有第i栋房子的所有特征
- Xij表示第i栋房子的第j个特征值为多少
- m表示有多少栋房子
- n表示有多少个特征
最后我们的
h(x)
函数化为
可以由两个
(n+1)
阶向量表示
其中为了方便我们设定
多变量的梯度下降(Gradient Descent For Multiple Variables)
多变量的梯度下降就是在对单一变量梯度下降的延伸
将公式推广到多个特征变量之中
直观公式推导出来形式为:
总结一遍:
它与单变量梯度下降的区别就只在于变量由一维度变为多维度:
特征缩放(Feature Scaling)
在梯度下降中,有时候特征变量的取值之间的偏差会很大,导致梯度下降的效率偏低,这种时候就该用上特征缩放的方法
- 先将特征通过运算是其取值范围在(-1,1)之间
- 运行算法,得出结果取值
- 将结果反向计算,还原出该有的值
特征缩放的通式为:
举一个例子,当prise落在(100,2000)的区间上,且其均值为1000,
学习速率(Learning Rate)
之前提到过,梯度下降的效果与学习速率
α
息息相关,我们需要找到一个合适的学习速率以确保算法得到应有的结果看图能够很好的体现出来:
- A为
α
取值恰好合适- B为
α
取值过小- C为
α
取值过大
多项式拟合(Features and Polynomial Regression)
当我们有多个特征变量时,我们可以选择多种方法改进我们的
h(x)
我们可以将两个变量整合为一个,如
X1*X2
也可以改变原有函数式
如
或者
/exc.PNG)
注意,特征变量的取值范围也会随之改变,所以需要利用特征缩放来使该式子正常发挥功能
上式中,我们需要把
x1
除以1000以保证运算效果
正规方程法(Normal Equation)
正规方程为直接写出使Cost Function-J(θ)最优的θ值的方程,具体为:
以房价为例:
它与梯度下降法不同之处首先在于,它不需要进行特征缩放(Feature Scaling)
其余的对比如下图:
该算法的时间复杂度为O(n3),所以当
n
大于10000之后就可以考虑改变方法,使用梯度下降法