用示例一步步解释BP反向传播神经网络 您所在的位置:网站首页 bp神经网络训练结果解释 用示例一步步解释BP反向传播神经网络

用示例一步步解释BP反向传播神经网络

2023-05-25 16:07| 来源: 网络整理| 查看: 265

Python中的反向传播

可以试用编写的Python脚本,该脚本在此Github存储库中实现了反向传播算法。

反向传播代码:github.com/mattm/simpl…

反向传播可视化

要获得显示神经网络的交互式可视化效果,请查看神经网络可视化:

www.emergentmind.com/neural-netw…

总览

在本教程中,我们将使用具有两个输入,两个隐藏的神经元,两个输出神经元的神经网络。另外,隐藏和输出的神经元将包括偏差。

基本结构如下:

用示例一步步解释BP反向传播神经网络

 

为了获得一些数字,下面是初始权重,偏差和训练输入/输出:

 

用示例一步步解释BP反向传播神经网络

 

反向传播的目标是优化权重,以便神经网络可以学习如何正确地将任意输入映射到输出。

对于本教程的其余部分,我们将使用单个训练集:给定输入0.05和0.10,我们希望神经网络输出0.01和0.99。

前进通道

首先,让我们看看在上述权重和偏差以及输入为0.05和0.10的情况下,神经网络目前预测的结果。

为此,我们将通过网络提供这些输入。我们计算出每个隐含层神经元的总输入,使用激活函数(这里我们使用逻辑函数)压缩总输入,然后对输出层神经元重复这个过程。

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

计算总误差

现在,我们可以使用平方误差函数计算每个输出神经元的误差,并对它们求和以获得总误差:

用示例一步步解释BP反向传播神经网络

 

该1/2包括在内,以便我们以后区分该指数被取消。无论如何,最终结果还是要乘以学习率,因此我们在此处引入常数[ 1 ] 都没关系。

 

用示例一步步解释BP反向传播神经网络

 

向后通行

我们反向传播的目标是更新网络中的每个权重,以便它们使实际输出更接近目标输出,从而将每个输出神经元和整个网络的误差最小化。

输出层

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 

 

用示例一步步解释BP反向传播神经网络

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有