多变量线性回归

形式:

机器学习-多变量线性回归
这里要注意的是x0=1(恒等)

如果了解一点线性代数就知道可以简化为向量相乘(默认向量为列向量)
机器学习-多变量线性回归

特征缩放(feature scaling)
当特征值的取值范围过大时,画出的函数图像可能会有点畸形
例如下面这样瘪瘪的椭圆
这样可能会在梯度下降时来回震荡
机器学习-多变量线性回归
解决的办法就是特征缩放,一般来说控制特征值的范围在(-1,1)范围附近即可

如上 : x1=x1/2000, x2=x2/5

这样特征值的范围就都控制在一个合适的范围了

另一个方法是均值归一化
机器学习-多变量线性回归
即减去特征值的平均值,再除以该特征值的标准差(max-min)

机器学习-多变量线性回归
这样得到的函数图形应该是这样

除了梯度下降外,对于线性回归问题,还可以正规方程来处理且只需要一步就能得到最优解

举个最简单的例子:
对于只有一个参数的线性方程来说,假设它的cost function J(θ)是如下函数:
机器学习-多变量线性回归
学过微积分或者高中毕业的同学应该都知道这个函数要求最小值,直接求导并且再令导数等于0就可以了,这就是正规方程

对于多元线性回归方程来说也是如此:
只需要对每个参数θi求偏导,然后全部令他们为0就可以求得最优解了
机器学习-多变量线性回归
对于多元线性回归方程来说有如下公式:
机器学习-多变量线性回归
不去推导,知道就行
且正规方程并不需要特征缩放

Q:那么有这么简单的方法,为什么还要用梯度下降呢?
原因之一是正规方程不适用复杂方程(如逻辑回归)

下图是梯度下降和正规方程的对比
机器学习-多变量线性回归

相关文章: