特征缩放
如果有多个特征,为了让这多个特征都在一个相近的范围内,这样梯度下降法就能更快的收敛。
均值归一化
x−μs x − μ s
其中 μ μ 为均值,s为特征值的范围,即max-min。
学习率 α α
梯度下降算法迭代过程中的代价函数J(
θ
θ
)的值,如果梯度下降算法正常工作,那么每迭代一部后代价函数下降,当到达多次迭代后,代价函数不继续下降了,梯度下降算法收敛。
如果代价函数随迭代次数程上升趋势,说明梯度下降算法没好好工作,我们应该用更小的
α
α
值。
标准方程法
标准方程法是求解
θ
θ
的另一种不迭代的方法,
矩阵表示求
θ
θ
:
θ=(XTX)−1XTy
θ
=
(
X
T
X
)
−
1
X
T
y
何时使用梯度下降法,何时使用标准方程法
1、梯度下降法需要选择学习速率
α
α
,需要多次迭代;
2、标准方程法不需要选择学习速率
α
α
,不需要多次迭代,也不需要画出J(
θ
θ
)的曲线来检查收敛性或者采取所有的额外步骤;
3、梯度下降法在很多特征变量的情况下也能运行很好;
4、标准方程法需要计算
(XTX)−1
(
X
T
X
)
−
1
,但是
XTX
X
T
X
是一个n*n的矩阵,实现逆矩阵的计算量大致是矩阵维度的三次方,当n很大时,计算量很大,标准方程法会很慢。
所以当n很大的时候使用梯度下降法,例如n上万。