老饼讲解-神经网络 机器学习 神经网络 深度学习
BP神经网络建模
1.BP神经网络-工具箱说明
2.BP神经网络-建模代码
3.BP神经网络-训练技巧
4.BP神经网络-应用案例
5.BP神经网络-问题答疑

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

作者 : 老饼 发表日期 : 2022-06-09 05:26:02 更新日期 : 2024-03-04 21:24:51
本站原创文章,转载请说明来自《老饼讲解-BP神经网络》www.bbbdata.com



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

本文解讲BP神经网络隐层节点个数设置的一些常用方法(这里假设只有一个隐层)



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



一般来说,要设几个隐节点,我们并没有什么明确的方法,但有指导方法,

在设置隐节点时可以参考以下四个指导性方法



      01. 原理指导      


从隐节点的理论意义来说,隐节点越多,拟合能力越强,
但同时出现模型不稳定的概率也增大
在设置隐节点时可以参考以下原理指导

 1.输入输出单元数越多,隐节点越多          
 2.要求逼近的规则越跌宕起伏,隐节点越多  



     02. 经验公式     


隐节点个数可参考以下两条公式
  
 n是隐节点个数,m是输入个数



n1是隐节点个数,n是输入个数,m是输出个数,a在1-10之间



     03. 建模师经验     


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


     04. 试凑法优化     


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






  02. 实际操作参考   



本节讲述一个确定BP神经网络隐节点个数的案例

本案例仅供参考,给大家设置BP神经网络隐节点时提供思路和借鉴




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


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

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










  End  







联系老饼