术语表

随机梯度下降 (SGD)

了解随机梯度下降法如何优化机器学习模型,从而为大型数据集和深度学习任务提供高效训练。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

随机梯度下降(SGD)是机器学习和深度学习中广泛使用的优化算法。它是梯度下降算法的一种变体,旨在高效地训练模型,尤其是在处理大型数据集时。SGD 的工作原理是迭代更新模型参数,使损失函数最小化,从而引导模型达到一组能产生最佳性能的参数。与从整个数据集计算梯度的传统梯度下降法不同,SGD 从随机选择的单个数据点或一小批数据中估算梯度。这种方法计算速度更快,内存效率更高,尤其适用于大规模机器学习任务。

机器学习的相关性

随机梯度下降法是训练许多机器学习模型的基础,尤其是在深度学习领域,模型通常有数百万甚至数十亿个参数。它在处理大型数据集方面的高效率使其成为训练复杂神经网络的理想选择,这些网络被广泛应用于图像分类物体检测自然语言处理等领域。像 PyTorch和TensorFlow 等框架广泛实施了 SGD 及其变体,使其成为现代人工智能开发的基石。 Ultralytics YOLO例如,在《Google AI》中,就利用了包括 SGD 在内的优化算法,实现了最先进的实时物体检测性能。

主要概念和变体

虽然 SGD 的基本原理保持不变,但已开发出几种变体来提高其性能并解决其局限性。主要概念和流行变体包括

  • 梯度下降:梯度下降:SGD 的基础优化算法,利用整个数据集计算梯度。
  • 小批量梯度下降法:SGD 和传统梯度下降法的折中方案,使用小批量数据计算梯度,在计算效率和梯度精度之间取得平衡。
  • 亚当优化器:这是一种自适应优化算法,它以 SGD 为基础,为每个参数加入了动量和自适应学习率,通常能带来更快的收敛速度和更好的性能。

与相关概念的区别

SGD 与其他优化技术和机器学习概念密切相关,但又有所不同:

  • 优化算法:虽然 SGD 是一种优化算法,但更广泛的类别还包括其他方法,如亚当优化器优化算法,它们可能使用不同的方法来最小化损失函数。SGD 的特点是随机性,使用随机数据点或批次。
  • 批量大小:批量大小会影响 SGD 的性能。使用 1(真正的 SGD)的批次大小会在梯度更新中引入更多噪音,而更大的迷你批次可以提供更稳定但可能效率更低的更新。
  • 学习率:与其他基于梯度的优化算法一样,SGD 的有效性对学习率非常敏感,学习率控制着参数更新时的步长。仔细调整学习率是成功训练模型的关键。

实际应用

SGD 的高效性和多功能性使其适用于现实世界的各种情况:

示例 1:医学图像分析

医学图像分析中,SGD 对于训练深度学习模型至关重要,这些模型可以从 X 光、核磁共振成像和 CT 扫描等医学图像中检测疾病。例如,使用 SGD 训练的卷积神经网络(CNN)可以学会识别表明肿瘤或其他异常的微妙模式,从而帮助更快、更准确地进行诊断。这对于人工智能在医疗保健领域的应用至关重要,因为及时准确的检测可以显著改善患者的治疗效果。

示例 2:自动驾驶

自动驾驶汽车主要依靠物体检测模型来感知周围环境。SGD 在训练这些模型实时准确地识别行人、车辆、交通标志和其他物体方面发挥着至关重要的作用。 Ultralytics YOLO在自动驾驶系统中,可以使用 SGD 训练的人工智能(AI)模型,因其在物体检测任务中的速度和准确性而经常被采用,从而实现更安全、更高效的导航。了解更多有关自动驾驶汽车中的人工智能如何利用这些技术实现实时感知的信息。

随机梯度下降算法基于小数据子集有效地更新模型参数,是为大量人工智能应用训练复杂而有效的机器学习模型的基础算法。

阅读全部