更新时间:2023-11-20 来源:黑马程序员 浏览量:
SGD代表随机梯度下降(Stochastic Gradient Descent)。这是一种优化算法,用于机器学习和深度学习中的模型训练过程。
在传统的梯度下降算法中,每次更新模型参数都是基于整个训练数据集计算的损失函数梯度。但在大规模数据集情况下,这种方法计算梯度非常耗时。SGD是针对这个问题的一种优化方法。
SGD的"S"表示随机,它与传统梯度下降的区别在于每次更新模型参数时,并不是使用整个数据集的梯度,而是随机选择一个样本或者一小部分样本来计算损失函数的梯度。具体步骤如下:
从整个训练数据集中随机选择一个样本或者一个小的批次(mini-batch)的样本。
对于选定的样本或批次,计算其对应的损失函数关于模型参数的梯度。
使用计算得到的梯度来更新模型的参数。更新公式通常为:新参数 = 旧参数 - 学习率 * 梯度。学习率是控制参数更新步长的超参数。
重复以上步骤,直到达到一定的迭代次数或者损失函数收敛到某个阈值。
SGD的优点是由于每次只用一个样本或小批次样本来计算梯度,计算速度更快,尤其对于大规模数据集训练效果明显。然而,由于随机选择样本会引入一些噪声,因此 SGD 的收敛过程可能更加不稳定。为了解决这个问题,还有一些SGD的变体,比如带动量的SGD、AdaGrad、RMSProp和Adam等,它们在不同场景下有不同的表现和优化效果。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19