02 优化算法 & BP算法公式+问题理解
01 经典的优化算法
1 批量梯度下降算法 BGD
每次是使用所有样本进行更新,如果样本数目大,训练速度比较缓慢
2 随机梯度下降算法SGD
特点:每次都随即使用随机使用单个样本来更新整个模型参数
缺点:单个数据更新导致训练波动大,收敛不稳定
3 mini-batch GD gradient disent
每次都随机选择一定批次大小的数据进行梯度过
优点:提高了训练速效率,和收敛速度
4 动量法 Momentum 动量梯度下降法
用于解决梯度下降算法中的收敛速度慢,陷入局部最小值的问题
引入了一个动量概念,暂且用v表示,其中μ表示动量系数,α表示学习率
v = μ*v - αΔL
θ = θ + v 梯度更新,加上负梯度,最小化损失函数
5 AdaGrad 自适应梯度算法
通过自动地调整每个参数的学习率
对于梯度小或稀疏特征,此时学习率就会比较大,对于梯度大的特征此时学习率会比较小
AdaGrad算法维护一个累积梯度平方和的变量,用于调整学习率的大小
G = G + ΔL²
θ = θ - (μ/ 根号 G + ε)ΔL μ全局学习率,用户指定
缺点:由于平方项积累,学习率可能会过早的缩减到很小
6 RMSProp 算法
在AdaGrad 自适应梯度算法的