训练模型时,您会通过网络多次发送数据。把它想象成想成为最好的篮球运动员。你的目标是提高你的投篮、传球和站位,以尽量减少失误。同样,机器通过重复接触数据来识别模式。

本文将重点讨论称为反向传播的基本概念。读完后,您将了解:

  • 什么是反向传播及其重要性
  • 梯度下降及其类型
  • 机器学习中的反向传播

让我们深入研究反向传播及其意义。

<图>

什么是反向传播,为什么它在神经网络中很重要?

机器学习中,机器采取行动,分析错误,并努力改进。我们给机器一个输入,并要求进行前向传递,将输入转化为输出。但是,输出可能与我们的预期有所不同。

神经网络是监督学习系统,这意味着它们知道任何给定输入的正确输出。机器计算前向传播的理想输出和实际输出之间的误差。虽然前向传播会突出预测错误,但如果机器不纠正这些错误,它就缺乏智能。您可以加入 反向传播算法的时间复杂度,它指的是执行过程中每个步骤需要多长时间,取决于神经网络的结构。在深度学习的早期,简单的网络时间复杂度较低。然而,当今的网络更加复杂,具有许多参数,时间复杂度也更高。影响时间复杂度的主要因素是神经网络的大小,但其他因素(例如训练数据的大小和使用的数据量)也会发挥作用。

本质上,神经元和参数的数量直接影响反向传播的运行方式。当前向传递(输入数据在各层中移动)涉及更多神经元时,时间复杂度会增加。同样,在向后传递(调整参数以纠正错误)中,参数越多意味着时间复杂度越高。

梯度下降

梯度下降就像训练成为一名擅长直击的伟大板球运动员。在训练过程中,您要反复面对相同长度的球,以掌握特定的击球并减少出错的空间。同样,梯度下降是一种用于最小化成本函数(误差空间)的算法,以便输出最准确。人工智能使用这种梯度下降数据来训练模型。 AI 模型训练许多在线人工智能课程都深入介绍了这一点。从在线材料中学习将为 ML 模型训练提供良好的实践经验。

但是,在开始训练之前,您需要合适的设备。正如板球运动员需要一个球一样,您需要知道要最小化的函数(成本函数)、其导数以及当前输入、权重和偏差。目标是获得最准确的输出,作为回报,您可以获得误差幅度最小的权重和偏差值。

梯度下降是许多机器学习模型中的基本算法。其目的是找到成本函数的最小值,代表最低点或最深的山谷。成本函数有助于识别机器学习模型预测中的错误。

使用微积分,您可以找到函数的斜率,它是函数关于某个值的导数。了解每个重量的斜率可以引导您到达山谷的最低点。学习率是一个超参数,决定了迭代过程中每个权重的调整程度。它涉及反复试验,通常通过为神经网络提供更多数据集来改进。一个运行良好的梯度下降算法应该在每次迭代中减小成本函数,当它不能进一步减小时,就认为它是收敛的。

不同类型的梯度下降

批量梯度下降

它计算误差,但仅在评估整个数据集后更新模型。它的计算效率很高,但可能并不总是能获得最准确的结果。

随机梯度下降

它会在每个训练示例后更新模型,显示收敛之前的详细改进。

小批量梯度下降

它常用于深度学习,是批处理和随机梯度下降的组合。将数据集分为小批量并单独评估。

机器学习中的反向传播算法

反向传播是机器学习中的一种学习类型。它属于监督学习,我们已经知道每个输入的正确输出。这有助于计算损失函数梯度,显示预期输出与实际输出的差异。在监督学习中,我们使用带有明确标记的数据和指定的所需输出的训练数据集。

反向传播算法中的伪代码

反向传播算法伪代码作为开发人员和研究人员指导反向传播过程的基本蓝图。它提供高级说明,包括基本任务的代码片段。虽然概述涵盖了基础知识,但实际的实现通常更加复杂。伪代码概述了连续步骤,包括反向传播过程的核心组件。它可以用Python等常见编程语言编写。

结论

反向传播,也称为反向传播,是神经网络训练期间执行的关键步骤。它计算可学习参数的成本函数的梯度。这是人工神经网络中的一个重要主题网络(ANN)。感谢您到目前为止的阅读,我希望您发现这篇文章内容丰富。

Comments are closed.