文章目录
- 1.梯度下降简介
- 1.1 梯度下降的数学原理
- 1.2 学习率的选择
- 2 梯度下降变体
- 3.梯度下降优化器
- 3.1 动量法(Momentum)
- 3.2 AdaGrad
- 3.3 RMSprop
- 3.4 Adam
- 3.5 Python 使用不同优化器训练线性回归模型
- 4.案例:使用梯度下降优化加利福尼亚房价预测模型
- 4.1. 数据准备
- 4.2. 模型训练与优化
- 4.3. 实验结果对比
- 4.4. 结果分析
- 4.5. 总结
1.梯度下降简介
一种为机器学习模型奠定基础的优化算法是梯度下降法(Gradient Descent,简称GD)。梯度下降是一种简单而有效的工具,适用于训练此类模型。正如其名称所示,梯度下降涉及“向下移动”。我们在一个景观中选择一个方向,并沿着该方向采取每一步,让我们“向下走”。步长的大小取决于坡度(即梯度)的陡峭程度。在机器学习(ML)模型中,梯度下降估计误差的梯度,帮助最小化成本函数。很少有优化方法能够像梯度下降一样计算效率高。GD 还为深度学习模型的优化奠定了基础。
在参数无法通过线性代数方法解析计算的情况下,必须通过优化来搜索时,梯度下降法找到了它最好的用武之地。该算法通过沿着最陡下降方向迭代地移动来工作。在每次迭代中,模型参数(如线性回归中的系数和神经网络中的权重)都会更新。模型将持续更新其参数,直到成本函数收敛或达到最小值(即图1.1a中坡度的底部)。
1.1 梯度下降的数学原理
梯度下降法的目标是通过迭代的方法最小化目标函数 J ( θ