BP神经网络

【详解】matlab-BP神经网络-训练算法详解

作者 : 老饼 发表日期 : 2022-10-27 19:03:11 更新日期 : 2024-04-18 14:40:00
本站原创文章,转载请说明来自《老饼讲解-BP神经网络》www.bbbdata.com



matlab神经网络工具箱为BP神经网络提供了各种各样的训练算法

本文介绍matlab神经网络工具箱中各种BP神经网络训练算法、训练函数的详细说明



     01.matlab-BP神经网络的训练算法    




本节介绍在matlab工具箱中,BP神经网络的训练算法有哪些




  BP神经网络的训练方法有哪些  


matlab神经网络工具箱提供的所有训练方法和参数名如下
训练参数名训练方法
traingd梯度下降法
traingdm有动量的梯度下降法
traingda自适应lr梯度下降法
traingdx自适应lr动量梯度下降法
trainrp弹性梯度下降法
traincgfFletcher-Reeves共轭梯度法
traincgpPloak-Ribiere共轭梯度法
traincgbPowell-Beale共轭梯度法
trainscg量化共轭梯度法
trainbfg拟牛顿算法
trainoss一步正割算法
trainlmLevenberg-Marquardt法




      BP神经网络的关键训练算法说明      


BP神经网络比较经典、关键的训练方法如下
👉traingd :梯度下降法                                 
👉trainlm:Levenberg-Marquardt法            
👉trainscg:量化共轭梯度法                          
关于traingd训练算法
 
traingd是梯度下降法,也是最base的算法,
虽然效果并不是很好,随便一个都能吊打它,
但它却是一个最Base的方法,在理论上有不可替代的地位与意义,
很多算法都是在它的基础上进行改进,这也是为什么其它方法能吊打它
关于trainlm训练算法
 
trainlm是matlab神经网络工具箱的默认方法,
也是matlab最为推荐的方法,
它同时利用了一阶导信息和二阶导信息,训练速度比梯度法快得多
并且利用误差函数为均方差的特性,巧妙避开了Hession矩阵
它的缺点是随着变量个数的增长,所使用的内存也快速增长
因此,较为消耗内存,在变量极多时,不可用
关于trainscg训练算法
 
trainscg是量化共轭梯度法,
它是matlab神经网络工具箱的推荐的在trainlm无法使用时的备选方法






好了,以上就是matlab-BP神经网络的各种训练算法的说明了~







 End 






联系老饼