BP神经网络

【讲解】BP神经网络-隐节点个数的设置方法

作者 : 老饼 发表日期 : 2022-11-23 04:16:22 更新日期 : 2024-12-08 03:07:55
本站原创文章,转载请说明来自《老饼讲解-BP神经网络》www.bbbdata.com



对于BP神经网络来说,隐节点过多会导致过拟合,隐节点太少则无法拟合到复杂的关系

本文解讲BP神经网络隐层节点个数设置的一些常用方法,并展示一个隐节点设置的案例

通过本文,可以了解设置BP神经网络隐节点有什么方法,以及各种方法是什么




  01. BP隐节点设置-常用方法  




本节讲解BP神经网络隐节点设置的方法




       BP神经网络隐节点设置常用方法     


一般来说,要设几个隐节点,我们并没有什么明确的方法,但有指导方法
在设置隐节点时可以参考以下四个指导性方法:
一、原理指导
      
 在理论意义上,隐节点越多,模型拟合能力越强,但模型也更容易过拟合
 在设置隐节点时可以参考以下原理指导:
 1. 输入输出单元数越多,隐节点越多          
 2. x与y的关系越跌宕起伏,隐节点越多      

  二、经验公式
隐节点个数可参考以下两条公式:
       
 其中, n是隐节点个数,m是输入个数
   
或    
 其中,n1是隐节点个数,n是输入个数,m是输出个数,a在1-10之间

     三、建模师经验
可参考建模师以往的一些成功案例,下面是本人的建模经验:
在2个输入1个输出时,用3个隐节点   
在20个输入1个输出时,用7个隐节点 
 往往这是最直接的方法,说白了,就是根据经验和直觉拍脑袋设置一个隐节点参数
当然,这种直觉并非不无道理,它是基于对BP神经网络的深刻理解下的产物

    四、试凑法优化     
在设置了BP神经网络隐节点个数后,还可以用试凑法优化隐节点个数
试凑法指的是,在原设定的节点个数上,逐步增加(减少),试探多少个节点时拟合效果最佳
 由于网络训练好坏跟随机初始化有关,
每次试探隐节点参数的效果时,一般会多训练几次,取平均误差作为的该参数的误差评估






  02. BP隐节点设置-案例解说   




本节讲述一个确定BP神经网络隐节点个数的案例,以供参考




   隐节点个数确定流程-案例解说   


案例背景:20个输入,1个输出    
隐节点的确定分为两个阶段:初步确定和优化 

 
建模初步阶段寻找有效可用的隐节点个数
 
1. 先用建模经验,大概估计需要6个隐节点,进行初步建模 
2. 建模后发现训练数据和测试数据的预测效果都不错        
则可认为6个隐节点已经是较为合理的设置                
         如果效果不佳,则需要尝试不同的参数,直到效果可以接受
 
 建模收尾阶段优化隐节点个数
在建模开始进行收尾时,利用试凑法对隐节点个数进一步优化
 例如当前使用的是6个隐节点,不妨从3到12都试一遍,     
找出效果最好的隐节点个数,   最终发现隐节点设为7个时效果最佳

 试凑法具体见《隐节点试凑法例子与代码》 
  最终结果:以7作为最终隐节点的个数   










  End  





联系老饼