(二)——线性模型:没有记录。
1.优化
寻找使目标函数最小的权重组合
2.梯度下降
- 目标:从初始点到达全局最小值。
- 梯度方向: ∂ c o s t ∂ ω \frac{\partial cost}{\partial \omega} ∂ω∂cost。
- 权重更新: ω = ω − α ∂ c o s t ∂ ω \omega =\omega -\alpha \frac{\partial cost}{\partial \omega} ω=ω−α∂ω∂cost,其中α是学习率,一般取较小值。
- 不一定能得到全局最优结果(非凸函数),但能得到局部最优结果,类似于贪心算法思想。
- 为什么深度学习中还使用该算法呢?深度神经网络的损失函数中并没有很多的局部最优点,但存在一些特殊点,鞍点(一维时梯度为0,高维是就像一个立体的马鞍,在某一个方向最小值,另一个方向却是最大值),此时没办法继续计算。
3.随机梯度下降
- ω = ω − α ∂ l o s s ∂ ω \omega=\omega -\alpha\frac{\partial loss}{\partial \omega} ω=ω−α∂ω∂loss,仅使用随机的一个样本对权重进行更新,有可能引入随机噪声,就有可能跨过鞍点。
- 问题:当前样本和下一个样本不是并行计算的,时间复杂度较高。
4.批量(Batch/Mini-Batch)随机梯度下降
- 取时间与性能的折中。