01 多元线性回归–多特征向量情况下的假设形式
- 一些符号表示:
- 简化下面等式的表达方法:向量内积转化
02 多元梯度下降算法
- 多元线性回归方程+代价函数+梯度下降函数
- 单元及多元线性回归的梯度下降法对比
03 多元梯度下降法–特征缩放
- 特征缩放的目的只是为了运行更快。使特征值比较接近,使图像变得比较圆。以至于梯度下降的速度更快,收敛所需要的迭代次数更少,收敛更快。缩放前后对比图如下:
- 特征值的取值别太大也别太小,与下面这个范围足够接近最好。
- 均值归一化的工作:X =(当前值-平均值)/【(最大值-最小值)只要是这个范围左右就可以】
04 多元梯度下降法–学习率
- 梯度算法正常工作图如下:代价函数随迭代次数的变化,最终收敛。
- 如果所得图像不是一直减小的,那么需要减小学习率,当然学习率也不能过小,否则梯度下降将会十分缓慢,迭代次数无限增加。
- 得到一个不错的学习率:按照三的倍数来取值,尝试一系列的学习率,找到个太小的值,再找到另一个太大的值,然后取太大的值,或者比太大的值略小的比较合理的值
05 特征和多项式回归
- 特征可以根据自己的需求选择合适的特征,例如将两个不同的特征相乘得到一个新的特征
- 如果只用多次函数,适当使用特征缩放将起到很好的效果:
- 可以有多种合理的选择,比如也可以是平方根。
06 正规方程–区别于迭代方法的直接解法
- 正规方程:对代价函数求偏导数,并将其置0,就可以得到使代价函数最小的值。
- 方程的形式及例子:
-
使用正规方程就不用对特征进行缩放了。
-
选择合适的算法(梯度下降还是正规方程)一般特征<10000时选用正规方程直接求解,他们二者的优缺点:
07 正规方程在矩阵不可逆情况下的解决方法
-
在Octave中pinv(伪逆)与inv(逆)是求逆矩阵的,就算矩阵没有逆,pinv也会求出它的逆。
-
首先看是否有多余的特征(两个特征线性相关),选择进行删除,直到没有多余的为止;再观察是否特征过多,选择没有影响的特征进行删除。