参考文献
[1]王小川.MATLAB神经网络43个案例分析[M].北京航空航天大学出版社,2013.
正文
前提:安装matlab、下载matlab代码文件。
优化后的BP神经网络,一般分为function和main两种matlab代码。
修改之前,需要先运行main代码以检验代码十分能够正常运行。
代码正常运行之后,我们需要使用代码用于预测数据,则需要修改main代码中的输入输出、输入节点数和输出节点数,以及训练数据集和测试数据集。
修改输入输出
输入输出的矩阵方向十分重要,一般的代码输入矩阵都是行矩阵。查看原始data中的input就可以查看到矩阵方向。图1为第三章例子[1],图2为修改后代码其中X、Y是试验中获得的多组数据,越多预测越准。matlab.mat是X、Y的保存文件名(自取名)。
图1输入输出原始代码
图2修改后输入输出代码
修改输入节点数和输出节点数
图3为输入输出原始代码,图4为修改后输入输出代码。图4中我的数据输入个数为4个变量x,1个因变量y,hiddennum是隐含节点,可以[a,b,c,...]这样控制层数。要多次修改运行直到最好的预测网络并保存网络。
图3输入输出原始代码
图4修改后输入输出代码
修改训练数据集和测试数据集
图5为训练数据集和测试数据集原始代码,图6为训练数据集和测试数据集修改代码。
代码顺序稍微不一样,对程序没有影响。一般训练数据占原始数据的85%,测试数据占15%.
图5训练数据集和测试数据集原始代码
图6训练数据集和测试数据集修改代码
图7具体修改后代码
网络预测
一般神经网络的代码中没有自带预测代码,原因是代码很简单= =图8所示。
图8预测代码new_X为预测数据,行矩阵。
结语
本文为学习笔记,分享给各位一起学习。
身为材料人,要学代码太难了,学习了一个星期神经网络终于会用了,分享给各位了。