【深度学习】参数初始化

学习流程跟着是b站up的5分钟学习深度学习

链接地址:参数初始化

回顾: 梯度下降、反向传播、学习率

反向传播:
反向传播是一种有效计算梯度(即损失函数相对于每个权重的偏导数)的方法,特别适用于具有多层结构的神经网络。它利用链式法则,从输出层开始,逐层向前计算,直到输入层,以此来确定每一层权重应该如何调整,以便减小预测输出与实际输出之间的差异(损失)。简而言之,反向传播提供了梯度信息,告诉我们在参数空间中应该朝哪个方向移动以减少损失。

随机梯度下降:
随机梯度下降是利用这些梯度信息进行权重更新的一种策略。与批量梯度下降(在每次更新前计算整个训练集的梯度)不同,SGD在每次更新时只考虑单个样例(或者一小批样例,这被称为小批量随机梯度下降)的梯度,这大大加快了训练速度并允许在大数据集上进行有效学习。SGD的“随机”体现在每次迭代时使用的训练样本是随机抽取的,这样可以在梯度估计上引入一定的噪声,有助于跳出局部最优解。

学习率:
学习率决定了在每一步中,根据梯度信息调整权重时的步伐大小。如果学习率设置得过高,可能会导致模型在最优解附近震荡或完全错过最优解(因为步子太大,可能会“跨越”最佳位置)。如果学习率过低,虽然可以保证逐渐接近最优解,但学习过程会非常缓慢,可能需要大量迭代才能收敛。因此,选择合适的学习率是优化过程中的一个重要方面,有时还会采用动态调整学习率的策略,如学习率衰减、自适应学习率算法(如Adagrad, RMSprop, Adam等)来平衡收敛速度和精度。

比较通俗易懂版本:
梯度下降:想象一下,你站在一座山的山顶,目标是到达最低点。梯度下降就是这样一个过程,它帮助模型找到损失函数(衡量模型预测错误程度的一个量)的最小值。模型通过计算损失函数关于各个参数的梯度(即方向导数,告诉你损失增大的方向),然后朝着负梯度方向(损失减少最快的方向)移动参数,逐步接近最低点。这就是为什么它被称为“梯度下降”。

反向传播:这是计算梯度的关键步骤,特别是在神经网络中。当你有一个复杂的多层模型如BERT时,你需要知道如何调整每一层的参数以减少损失。反向传播算法从输出层开始,一层一层地向后计算,直到输入层,计算出每个参数对最终损失的贡献(即梯度)。这样,模型就知道了如何调整参数来减少预测错误。

学习率:学习率就像是你在下山时迈出的步子大小。如果步子太大(学习率过高),你可能会跳过最低点,甚至在山间震荡;如果步子太小(学习率过低),则可能需要很长时间才能到达最低点。选择合适的学习率对于模型的训练效率和最终性能至关重要。

关系:随机梯度下降(Stochastic Gradient Descent, SGD)和反向传播(Backpropagation)是机器学习,尤其是深度学习中用于优化模型权重的核心算法,而学习率(Learning Rate)是控制这些算法如何快速或慢速调整权重的关键超参数。

参数初始化:

在训练开始之前,模型的所有参数都需要被赋予初始值。这个初始状态对模型能否快速且有效地收敛到一个好的解至关重要。如果参数初始化不当,可能导致模型难以学习(比如初始化的权重太大或太小,可能会使网络中的信号消失或爆炸)。良好的初始化方法(如Xavier初始化、He初始化)能确保网络的各层在开始训练时具有适当的激活值范围,促进梯度的有效流动,从而加速收敛过程。

与梯度下降、反向传播、学习率的关联:参数初始化的质量影响着首次反向传播时梯度的质量和方向,进而影响梯度下降的效率。如果初始化得好,模型可能会更快地找到一个较好的解,并且对学习率的选择更加宽容。相反,糟糕的初始化可能导致训练早期就陷入局部最优或训练困难,即使使用正确的学习率和多次反向传播也可能难以纠正。

注意:
损失函数与梯度下降的关系
损失函数:衡量模型预测误差的函数,目标是最小化它。
梯度下降:一种优化算法,通过计算损失函数的梯度并迭代更新模型参数来最小化损失函数。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值