当前位置:网站首页>梅科尔工作室--BP神经网络培训笔记

梅科尔工作室--BP神经网络培训笔记

2022-08-09 07:51:00 m0_61169431

 BP 神经网络原理

BP(Back Propagation)神经网络的学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经隐层逐层处理后,传向输出层。若输出层的实际输出与期望输出不符,则转向误差的反向传播阶段。误差的反向传播是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。BP网络由输入层﹑输出层和隐层组成

BP 神经网络的结构如下:

算法流程:

 

BP 神经网络算法的示意图

 

输入层:信息的输入端,是读入你输入的数据的

隐藏层:信息的处理端,可以设置这个隐藏层的层数(在这里一层隐藏层,q个神经元)

输出层:信息的输出端,也就是我们要的结果

v,w分别的输入层到隐藏层,隐藏层到输出层的是权重

对于上图的只含一个隐层的神经网络模型:BP神经网络的过程主要分为两个阶段,第一阶段是信号的正向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置,输入层到隐含层的权重和偏置。

1.正向传播过程

正向传播就是让信息从输入层进入网络,依次经过每一层的计算,得到最终输出层结果的过程。在上面的网络中,我们的计算过程比较直接,用每一层的数值乘以对应的权重+偏置变量(激活函数)

从输入层到隐藏层:

从隐藏层到输出层:

以y1举例。y1里的输出自然有来自b1,b2,...bq的。那么分别按照权重去乘就可以了。

 

因为参数是随机的,所以第一次计算出的结果跟真实的结果会有一个非常大的误差,所以我们需要根据误差去调整参数,让参数可以更好的去拟合,直到误差达到最小值,这时就需要模型的反向传播

2.反向传播过程 

 通过计算输出层与期望值之间的误差来调整网络参数,从而使得误差变小

计算误差公式如下:(差值的平方)

3.权重反向更新

l 称为学习率,可以调整更新的步伐,合适的学习率能够使目标函数在合适的时间内收敛到局部最小值。

学习率设置太小,结果收敛非常缓慢;学习率设置太大,结果在最优值附近徘徊,难以收敛,一般选取为0.01−0.8

至此,我们完成了一次神经网络的训练过程,通过不断的使用所有数据记录进行训练,从而得到一个分类模型。

 

原网站

版权声明
本文为[m0_61169431]所创,转载请带上原文链接,感谢
https://blog.csdn.net/m0_61169431/article/details/126238011