文章目录
1. 前向传播与反向传播?
前向传播和反向传播是深度学习中神经网络训练的两个关键步骤。它们通常用于训练神经网络,以便网络可以学习从输入到输出的映射关系。
-
前向传播(Forward Propagation):
前向传播是神经网络中的第一步,它用于计算从输入到输出的预测。在前向传播过程中,输入数据被传递给神经网络的各个层,每一层都执行一些线性变换(例如权重矩阵相乘)和非线性激活函数操作(例如ReLU、Sigmoid、Tanh等)。这些操作在每个层中逐步进行,最终得到网络的输出。前向传播的目标是根据当前模型参数生成预测结果。具体步骤:
a. 将输入数据传递给输入层。
b. 在每一隐藏层中,进行线性变换和激活函数操作,将数据传递到下一层。
c. 重复b步骤,直到达到输出层,得到最终的预测结果。 -
反向传播(Backpropagation):
反向传播是神经网络训练中的关键步骤,用于更新神经网络的权重,以减小预测误差。一旦前向传播生成了预测结果,就需要计算模型的误差,然后将这个误差传递回网络,以调整权重,使网络的输出更加接近实际目标。反向传播使用梯度下降法或其变种来更新网络的权重,从而最小化损失函数。具体步骤:
a. 计算损失函数,该函数度量了模型的预测结果与实际目标之间的差距。
b. 从输出层到输入层,计算每个权重对损失函数的偏导数(梯度),以确定如何调整权重。
c. 使用梯度下降法或其他优化算法来更新权重,以减小损失函数的值。
d. 重复b和c步骤,直到损失函数收敛到一个合理的值,或达到预定的训练轮次。
通过不断迭代前向传播和反向传播过程,神经网络逐渐调整其权重和参数,以提高模型的性能,使其能够更好地预测输入数据的目标。这是深度学习中的一种监督学习方法。