前置内容
最小二乘法
了解完上面的内容,最后我们要求解W的最优解,需要计算 W = ( X T X ) − 1 X T Y W = (X^TX)^{-1}X^TY W=(XTX)−1XTY,重点在于 ( X T X ) − 1 (X^TX)^{-1} (XTX)−1,对逆矩阵的求解复杂度是非常高的,加入一个矩阵n*n,如果矩阵为n阶方阵,那么它的时间复杂度为 O ( n 3 ) O(n^3) O(n3),一般 n 3 n^3 n3大于10000就会很慢,我们就会采用梯度下降法求解,如果数据维度太大,计算时间成本也会很大,也会采用梯度下降法。计算时间如果矩阵不可逆,可以采用伪逆的思想求解。如果函数为非凸函数,就会有多个极值点,那么也要采用梯度下降法求解。
梯度下降法
梯度下降法对学习率的选择比较苛刻,不能太大也不能太小,梯度下降法需要进行归一化操作,最小二乘法不需要。如果数据维度小,函数为凸函数,并且矩阵可逆,选用有最小二乘法进行求解。
其次,梯度下降法需要不断的去迭代,来找到一个相对的最优解,速度会慢一些。