BP神经网络

【提示】关于新老版本BP神经网络工具箱建模差异

作者 : 老饼 发表日期 : 2022-10-25 17:53:00 更新日期 : 2024-01-19 17:38:32
本站原创文章,转载请说明来自《老饼讲解-BP神经网络》www.bbbdata.com


本文用于说明新老版本matlab神经网络工具箱的BP神经网络建模差异

并藉此理解老教材要求归一化的原因


   01. BP使用新老版本matlab的建模差异   



本节讲解使用新老matlab的BP神经网络版本在建模时的差异



    matlab的BP神经网络版本建模差异     


matlab2012b之前
 
在matlab2012b之前的神经网络工具箱,
是不会将数据处理的,只会负责构建,
使用BP神经网络工具箱必须按三大步六大步来搞,
即需要将数据归一化,将数据分割为训练和测试数据,并在最后用测试数据对模型进行验证
matlab2012b之后
 
但在matlab2012b之后,
BP神经网络工具箱已经增加了归一化的功能,
因此,不需要自行将数据归一化,
并且,matlab工具箱会自行分割一分部分据留于测试,
因此,也不需要自行另留测试数据,而是改为提出工具箱预留的测试数据进行检验模型效果



    新老matlab版本的BP神经网络建模流程    


下面是新老版本的建模流程
 matlab2012b版本之后
 设置BP神经网络参数--训练---提取训练、测试数据查看建模效果
matlab2012b版本之前
 归一化--数据分割---设置BP神经网络参数--训练--分别查看训练、测试数据的建模效果




    02. 版本对教材的影响   





    对教材的影响   


BP神经网络最初的教材都是基于matlab2012b之前的版本的,
因此,这些教材中的代码一般都将数据进行归一化,
 为什么老教材要将数据进行归一化?因为当时matlab还不会归一化
现在有些新教材,仍然受老教材影响



    使用老教材代码需要注意的地方   


由于老教材中的代码,都进行归一化并自行分割数据,
有部分同学将老教材代码拿来即用
这本来也没什么问题,无非是过程繁琐点,多写些代码,
但有一个细节需要注意,就是新版本默认会分割一些数据留作预测数据,
如果直接使用,会浪费部分数据,
不过,这并非什么伤筋痛骨的事,也无大碍







  End  







联系老饼