目录
1.自适应学习率
传统的梯度下降方法在优化过程中常常面临学习率设置不当的问题。固定的学习率在训练初期可能过大,导致模型训练不稳定,而在后期可能过小,导致训练速度缓慢。为了克服这些问题,自适应学习率方法应运而生。这些方法通过动态调整学习率,以适应不同参数的优化需求,从而提高训练效率和模型性能。
1.1 AdaGrad
AdaGrad(Adaptive Gradient)是一种自适应学习率算法,它根据每个参数的历史梯度调整学习率。具体而言,AdaGrad在每次更新时对每个参数的学习率进行缩放,使得学习率对于梯度较大的参数较小,而对于梯度较小的参数较大。
1.2 RMSProp
RMSProp(Root Mean Squared Propagation)是对AdaGrad的改进,旨在解决AdaGrad在训练后期学习率迅速下降的问题。RMSProp通过对梯度的平方进行指数加权平均来调整学习率.
1.3 Adam
Adam(Adaptive Moment Estimation)算法结合了AdaGrad和RMSProp的思想,通过利用梯度的一阶矩估计和二阶矩估计来调整学习率。
1.4 学习率调度
学习率调度是进一步优化模型训练的一种策略,包括学习率衰减和预热策略。学习率衰减通过逐步减小学习率,帮助模型在训练后期更精细地调整参数。预热策略则是在训练初期逐步增加学习率,以避免过大的初始步长导致的不稳定性。两者结合可以提高模型的训练效率和最终性能。
1.5 优化策略的总结
自适应学习率方法如AdaGrad、RMSProp和Adam各有优缺点。AdaGrad适合处理稀疏数据,但可能在训练后期导致学习率过小。RMSProp通过考虑梯度的近期信息来调整学习率,但仍然存在调整不够平滑的问题。Adam结合了动量和自适应学习率的优点,通常能够提供更好的训练效果。在实践中,根据具体问题选择合适的优化策略,并结合动量和自适应学习率,可以显著改进模型的训练过程。
2.分类
2.1 分类与回归的关系
分类与回归问题是机器学习中最常见的问题,二者的区别如下:
分类:分类任务的目标是将输入数据分配到预定义的离散类别中,模型输出的是离散的类别标签。
回归:回归任务的目标是预测连续的数值,模型输出的是一个连续的实数值。
2.2 带有 softmax 的分类
在多分类任务中,softmax 函数十分常见,它可以将一个未归一化的向量(通常是神经网络的输出)转换为一个概率分布,确保输出向量的每个分量都在0到1之间,并且所有分量的和等于1。这使得 softmax 函数特别适合用于分类问题的输出层,其中需要为每个类别分配一个概率值。
2.3 分类损失
通过计算预测值 y^ 与真实标签 y之间的距离,得到分类的损失。常用的损失函数包括均方误差和交叉熵损失。