2020/5/141神经网络工具箱介绍2020/5/142MATLAB2009b的神经网络工具箱neuralnetworktoolbox提供了图形用户界面(graphuserinterface,GUI),从而使用户在图形界面上,通过与计算机的交互操作设计和仿真神经网络,使得神经网络的设计和仿真变得简单易学.2020/5/1431图形用户界面简介函数nntool的详解见help文档。在MATLAB命令窗口(commandwindow)输入nntool,按Enter后即可打network\datamanager(网络/数据管理器窗补如图1所示。)(或点击Start/Toolboxes/NeuralNetwork)2020/5/144•图1图形用户界面2020/5/145•2.nntool使用过程与实例•step.1数据构造与预处理•step.2训练数据导入nntool•step.3建立网络•step.4训练网络•step.5仿真网络•step.6输出与存储模拟结果•step.7加载先前仿真过的网络于nntool2020/5/146•step.1数据构造与预处理•TimeSeriesForecasting121112d1231211:{,,...,,},,xY…,',()nnndddndndnnnGiventimeseriesxxxxinordertoforecastxConsiderxxxxxxxXxxxxbylearningtheresapatternfwhichYfXthenifpx…………………12'11,,'()Forecastingerror'dndnnnxxisavailablehencetxfpxt…2020/5/147•step.1数据构造与预处理•2020/5/148•step.2训练数据导入nntool•根据数据的多少,数据文件的格式等获取样本数据的方法有:•1)直接输入数据:通过采用元素列表方式输入。适用于样本数目较少时。New…按钮•2)ImportfromMatlabWorkspace:Import…按钮。•3)Loadfromdiskfile:适合从M-file文件中读取数据。Import…按钮。2020/5/149ImportfromMatlabWorkspace2020/5/1410Loadfromdiskfile2020/5/1411•step.3建立网络•Network/DataManager窗口中New…打开CreateNetworkorData,如右图。•Name:定义网络名为network1•选择Input/TargetData,设置训练函数等参数。•View:查看模型2020/5/1412•step.4训练网络•Network/DataManager窗口中选中network1,双击或Open…。打开如下图•在Train中,见下页图,2020/5/14132020/5/1414可以看出,该窗口为一个多页面对话框,在Train页面有2个子页面:●Training:训练数据(TrainingData)的输入向量(Inputs)选择为p,目标向量(Targets)选择为t;训练结果(TrainingResults)的输出变量(outputs)和误差性能变量(Errors)采用系统自动生成的network1_output,和network1_errors,当然它们也可以由用户重新定义。2020/5/1415●TrainingParameters:设置训练的各种参数,这要根据具体训练和学习函数进行确定,相关内容可参看各神经网络模型的训练和学习算法。本例采用其默认值即可。•epochs:训练的最大循环次数•goal:性能目标•max_fail:最大验证数据失败的次数•mem_reduc:降低内存需求的系数•min_grad:最小性能梯度•mu:动量的初始值•mu_dec:动量减少系数•mu_inc:动量增加系数•mu_max:动量最大值•show:每格多少训练循环次数会显示训练过程•time:最大的训练所须时间,单位为秒2020/5/1416以上过程完成后,单击该页面的TrainNetwork按钮,开始训练,其训练过程如图9所示。图9训练误差性能曲线Algorithms:相关参数Progress:终止条件(只要一个满足则停止)Plots:各种图形曲线2020/5/1417训练完成后,在Network/DataManager窗口可以看到,在Outputs区域显示出输出变量名network1_outputs,在Errors区域显示出误差性能变量名network1_errors。选中变量名,单击该窗口的Open按钮,则弹出数据(Data)窗口,在该窗口可以查看到该所选中变量的具体数据。2020/5/1418•step.5仿真•Network/DataManager窗口中选中network1,双击或Open…。•在Simulate中,见图,2020/5/1419将仿真数据选择为testX,仿真结果选择为network1_outputs_sim;Targets选为TestY,误差errors为network1_errors_sim。单击SimulateNetwork按钮,则在Network/DataManager窗口的Outputs和Errors区域分别显示出相应的仿真结果,选中变量名,单击该窗口的Open按钮,弹出数据窗口,在该窗口可以查看仿真结果的具体数据,如图所示。2020/5/1420•step.6结果Export和Save•Network/DataManager窗口中点击Export…•选择一个或多个变量,Export(导出至Workspace)或Save(存储为*.mat文件)2020/5/1421•step.7加载先前仿真过的网络于nntool•假设已通过step6将先前的网络等数据保存至mat文件里,那么可以通过Import,将网络和数据导入至nntool,过程同step.2中Loadfromdiskfile2020/5/1422总结需要注意的是,源文件名及路径名不能是汉字,否则导致读取文件失败。本部分介绍了MATLAB神经网络工具箱的图形用户界面,为尚不熟悉以MATLAB编程进行神经网络设计与仿真的用户提供了一个非常好的交互式图形界,使得神经网络的设计和仿真变得轻而易举。