BP入门学习
1.神经网络是什么
2.BP神经网络基础理论
3.BP神经网络的建模
4.自实现一个BP神经网络
【结构】BP神经网络的模型结构
作者 : 老饼 日期 : 2023-03-26 19:15:08 更新 : 2023-05-08 18:18:55
本站原创文章,转载请说明来自《老饼讲解-BP神经网络》bp.bbbdata.com


本文介绍BP神经网络的通用结构和常用结构,

通过本文,更具体地了解,BP神经网络的拓扑结构



  01. BP神经网络结构  



本节先介绍BP神经网络的通用结构



    BP的通用网络结构    


BP神经网络的通用结构如下
    
它包含了输入层、隐层和输出层,
隐层和输出层的神经元都有自己的阈值和激活函数
它属于前馈型神经网络,即神经元是层层连接、逐层传递,
以上仅是一个通用的结构形式,
在使用时,我们需要设定具体的参数,让它有具体的结构
 需要确定的参数有以下:
 
👉 隐层个数                         
 👉 每个隐层的隐神经元个数 
 👉 每层神经元的激活函数    



    神经元的工作原理   


除了输入层之外,其它层的神经元都有自己的阈值和激活函数,
 每个神经元的工作原理如下
 

它将接收到的输入值加权后并加上阈值,
经过自身激活函数进行转换,然后输出给下一个神经元





   02. BP神经网络常用结构   



下面介绍实践中一般使用的BP神经网络结构



     BP神经网络常用结构与配置     


虽然通用结构里允许有多个隐层,并且可以设置不同的激活函数,
 但实际上,最常用的是设一个隐层      
隐层神经元的激活函数设为tansig函数 
输出层的激活函数设为purelin      
    

 
如此一来,结构就如下图所示:
 
   
 
其中 
tansig函数为S型函数:     
purelin 为恒等线性映射函数:             
上图为3个隐神经元,在实际中,隐神经元个数由具体问题具体设定
✍️说明
1、输出层设为purelin,也即相当于输出层没有激活函数.
2、 隐层激活函数也可以设为logsig                             
 logsig的表达式为
 ,它和tansig没有太多质的区别 , 
区别只在于,logsig的取值范围是【0,1】,而tansig是【-1,1】    




     为什么实践中采用三层结构     


为什么实践中一般采用上述结构呢?
 
主要是因为这样的结构简单又有效
简单是因为它只有一个隐层,比起多隐层网络,无疑是要简洁许多               
有效是因为隐层激活函数采用了S型函数,这样网络就有了拟合非线性的能力
而输出层采用purelin,又可以让它的输出不受限制                                      
如此一来,这种结构就“麻雀虽小,却五脏俱全”,简单又有效
后来有人证明,这种结构只要隐神经元足够,就能逼近任何函数,
因此一来,基本就都使用这种结构了









 End 








联系老饼