神经网络训练过程

更新中

神经网络结构:

神经网络是由多个相互连接的层组成的。每个连接都有一个权重,用于表示它对下一层神经元的影响程度

训练神经网络:

训练神经网络的目标是调整这些权重,使得网络能够根据输入数据生成正确的输出。

训练过程如下:

前向传播

定义:将上一层的输出作为下一层的输入,并计算下一层的输出。

传递方向是从模型输入向模型输出

设输入为X,权重为W,偏置为b,输出为A

Z = X * W + b
A = f(Z)

f是是激活函数(如 ReLU、Sigmoid 等)

可以看到第一步得到的Z和输入X的关系是线性的,激活函数的作用就是引入非线性

反向传播

目的:使模型与真实值更加接近

定义:将模型输出与真实值的误差,从输出层向输入层反向传播,在传播的过程中更新模型的权重和偏置。

输出结果与目标值之间的差距用损失函数衡量,也就是说我们可以用损失函数来衡量神经网络模型的准确性。损失函数越小,模型越好。

损失函数的导数即为梯度,我们可以根据导数的方向,寻找损失函数的最小值。

假设我们的损失函数为 L,我们需要计算 L 对每个权重的偏导数。以一个简单的网络为例,计算损失函数关于权重 W 的梯度:

dL/dW 
根据链式法则
dL/dW  = dL/dA * dA/dZ * dZ/dW

A,Z是 L和W 中间途径的两个权重

你可能感兴趣的:(目标识别/语义分割,神经网络,深度学习,人工智能)