深圳Yolo 视觉
深圳
立即加入
词汇表

反向传播

探索反向传播的基础知识。了解这一基本算法如何训练神经网络、优化Ultralytics YOLO26并为现代AI系统提供支持。

反向传播(Backpropagation),是“误差反向传播”的简称,它是使现代人工智能系统能够从数据中学习的基础算法。在模型训练过程中,它充当数学信使,精确计算神经网络中的每个参数对不准确预测的贡献程度。通过确定损失函数相对于每个权重的梯度,反向传播提供了必要的反馈,使网络能够自我调整并随着时间推移提高准确性。如果没有这种高效的导数计算方法,训练深度复杂的模型在计算上将是不可行的。

学习机制

要理解反向传播,将其视为一个循环的一部分会有所帮助。当神经网络处理图像或文本时,它执行“前向传播”以进行预测。系统随后使用损失函数将此预测与正确答案进行比较,该函数量化误差。

反向传播从输出层开始,然后向后遍历网络层。它利用微积分链式法则来计算梯度。这些梯度有效地告诉系统:“要减少误差,请稍微增加这个权重”或“大幅减少那个偏置”。这些信息对于深度架构至关重要,例如卷积神经网络 (CNN),其中数百万个参数必须同时进行微调。

反向传播与优化

初学者常将反向传播与优化步骤混淆,但它们是训练循环中不同的过程。

  • 反向传播是一种诊断工具。它通过计算梯度,有效地绘制出一幅 图,显示误差景观的斜率。它能回答 "我们应该向哪个方向移动才能减少误差? 减少误差?
  • 优化就是行动。算法包括 随机梯度下降算法(SGDAdam 优化器等算法利用反向传播提供的梯度 并更新权重。如果说反向传播是一张地图,那么优化器就是一个徒步旅行者。 步。

人工智能在现实世界中的应用

反向传播是几乎所有现代AI成功的基础机制,使模型能够从训练数据泛化到新的、未见过的数据。

  • 计算机视觉: 在使用YOLO26等模型的object detection任务中,反向传播使网络能够学习空间层次结构。它帮助模型理解某些边缘形成形状,这些形状又形成汽车或行人等物体。展望未来,Ultralytics Platform利用这些训练技术帮助用户创建自定义模型,这些模型可以准确识别制造业中的缺陷或监测农业中的作物健康。
  • 自然语言处理 (NLP): 对于 大型语言模型 (LLMs),例如 OpenAI 开发的那些模型,反向传播使系统能够学习句子中下一个词的概率。通过传播不正确文本预测中的误差,模型学习细致入微的语法和上下文,这对于 机器翻译 等应用至关重要。

深度网络中的挑战

尽管该算法功能强大,但在非常深的神经网络中仍面临挑战。梯度消失问题发生在梯度在反向传播时变得过小,导致早期层停止学习。相反,梯度爆炸则涉及梯度累积到非常不稳定的值。通常采用批量归一化ResNet等专门架构来缓解这些问题。

Python 代码示例

虽然高级库,如 ultralytics 在训练过程中抽象此过程,其底层 PyTorch 框架 允许您直接查看该机制。 .backward() 该方法触发反向传播过程,计算任何 tensor 的导数,其中 requires_grad=True.

import torch

# Create a tensor that tracks operations for backpropagation
w = torch.tensor([2.0], requires_grad=True)
x = torch.tensor([3.0])

# Forward pass: compute prediction and loss (simple example)
# Let's assume the target value is 10.0
loss = (w * x - 10.0) ** 2

# Backward pass: This command executes backpropagation
loss.backward()

# The gradient is now stored in w.grad, showing how to adjust 'w'
# This tells us the slope of the loss with respect to w
print(f"Gradient (dL/dw): {w.grad.item()}")

更多阅读

要理解反向传播如何融入更广泛的AI开发范畴,探索数据增强的概念是有益的,因为它为算法有效泛化提供了必要的各种示例。此外,理解用于评估训练成功的特定指标,例如平均精度均值 (mAP),有助于解释反向传播过程优化模型的程度。对于更深入的理论探讨,斯坦福CS231n课程笔记提供了对所涉及微积分的优秀技术分析。

让我们一起共建AI的未来!

开启您的机器学习未来之旅