第二周课程主要介绍了 梯度下降算法,和基于其的线性回归算法。
1.梯度下降算法:
首先涉及到cost function的概念:
梯度下降的目的就是让cost function收敛到一个最小值以达到最佳拟合的目的。
具体的表达形式如下:
而在实际的应用中,由于输入的多个特征值之间大小差距很大,这会导致梯度下降的过程加快从而无法很好的进行收敛。
所以要对数据进行预处理,即 Feature Scaling,这个很好理解,就是数据的标准化过程。
当然,对于学习速率(learning rate)α也有一定要求,需要通过调整来找到最佳的数值。
2.正规方程法
类似于二次方程的求根公式,可以直接求出所要求的参数:
对于现在计算机来说,适合数据量小于10,000的情况。
3.Matlab入门
讲了很多Matlab的基本语法,编程练习就是通过matlab实现一个线性回归的模型。具体代码可以在我的github上查看。