神经网络工具箱的使用.doc

上传人:sk****8 文档编号:2984828 上传时间:2019-05-15 格式:DOC 页数:6 大小:144.50KB
下载 相关 举报
神经网络工具箱的使用.doc_第1页
第1页 / 共6页
神经网络工具箱的使用.doc_第2页
第2页 / 共6页
神经网络工具箱的使用.doc_第3页
第3页 / 共6页
神经网络工具箱的使用.doc_第4页
第4页 / 共6页
神经网络工具箱的使用.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、神经网络工具箱的使用 本章主要介绍神经网络工具箱的使用 ,使用 nntool可以使得原本用编程来创建神经网络变得容易,而且不容易出错。 1 神经网络的创建与训练 神经网络的创建主要分为以下四步: 1)在命令窗口键入 nntool命令打开神经网络工具箱 。如图 1: 图 1 2)点击 Import按钮两次,分别把 输入 向量和目标 输出 加入到对应的窗口( Inputs和Targets)中,有两种可供选择的加入对象(点击 Import后可以看见),一种是把当前 工作区中的某个矩阵 加入,另一种是 通过 .mat文件 读入 。 如图 2和图 3: 图 2 图 3 3)点击 New Network按

2、钮,填入各参数:(以最常用的带一个隐层的 3层神经网络为例说明,下面没有列出的参数表示使用默认值就可以了,例如 Network Type为默认的 BP神经网络); i)Input Range 这个通过点击 Get From Input下拉框选择你加入的输入向量便可自动完成 ,当然也可以自己手动添加。 ii) Training Function 最好使用 TRAINSCG,即 共轭梯度法 ,其好处是当训练不收敛时,它会自动停止训练,而且 耗时较其他算法( TRAINLM, TRAINGD)少,也就是收敛很快(如果收敛的话),而且 Train Parameters输入不多,也不用太多的技巧调整,一

3、般指定 迭代次数、结果显示频率和目标误差 就可以了(详见下文)。 iii) Layer 1 Number of Neurons 隐层 的神经元个数,这是需要经验慢慢尝试并调整的,大致上由 输入向量的维数 、 样本的数量 和 输出层( Layer2)的神经元个数 决定 。一般来说,神经元越多,输出的数值与目标值越接近,但所花费的训练时间也越长,反之,神经元越少,输出值与 目标值相差越大,但训练时间会相应地减少,这是由于神经元越多其算法越复杂造成的,所以需要自己慢慢尝试,找到一个合适的中间点。 比 如输入是 3行 5000列的0-9的随 机 整数矩阵,在一开始 选择 1000个神经元,虽然精度比较

4、高,但是花费的训练时间较长,而且这样神经网络的结构与算法都非常复杂,不容易在实际应用中实现, 尝试 改为 100个,再调整为 50个, 如果 发现在 50个以下时精度较差, 则可 最后定为 50个神经元 ,等等 。 iv)Layer 1 Transfer Function 一般用 TANSIG(当然也可以 LOGSIG),即表示隐层输出是 -1,1之间的实数,与 LOGSIG相比范围更大。 v) Layer 2 Number of Neurons 输出层 的神经元个数, 需要与输出的矩阵行数对应,比如 设置为 3,等等 。 vi) Layer 2 Transfer Function 如果是模式

5、识别的两类(或者多类)问题,一般用 LOGSIG,即表示输出层的输出是 0,1之间的实数 ;如果输出超过 0,1则可选择 PURELIN。如图 4和图 5。 图 4 图 5 所有参数输入后,可以先用 View按钮预览一下, 如图 6。 没有问题的话就可以 Create了。另外,网络创建完毕后,如果需要手动设置权重的初始值,按 View按钮后有个 Initialize选项卡,在那里可以设定。当然了, 也 可以不自行设定,这时候 Matlab执行默认的程序进行权重的初始化(没有具体研究过,可能是随机设定)。 图 6 4)点击 Train按钮,到达 Training Info选项卡,在输入向量 In

6、puts和目标输入向量Targets下拉框中选择你要训练的向量(即第二步加入的对象), 如图 7。 然后到 达 Train Parameters选项卡,填入适当的迭代次数 epochs(一般先设置一个较小的数如 200,然后观察收敛结果,如果结果窗口的收敛曲线衰减较快,则表示之前的参数比较有效,因此可填入 2000或更大的数目使得网络收敛,否则修改之前的参数)、结果显示频率 show(例如要每隔 50次迭代显示结果窗口,则填 50)和目标误差 goal(这个与第 2步中的 “Performance Function” 有关,如果使用默认的 MSE,则一般满足 “goal* 样本数量 0.5”

7、就可以了),就可以开始训练了(按钮 Train Network),如果结果收敛(训练误差不大于目标误差,即蓝色线到达黑色线位置)就 OK了 (例如要求精度很高,尝试填 0,等等 ) , 如图 8。 图 7 图 8 2 神经网络的仿真测试 神经网络的仿真测试非常简单,选定训练好的神经网络,点击 View按钮,再点击 Simulate按钮,在 Simulate Data中的 Inputs一栏中导入需要测试的数据(需要是工作区的矩阵,所以可以事先将数据写在但单独的程序中,需要时运行程序即可),然后点击 Simulate Network,测试结束后可以在 Outputs中看到结果,在 Errors中可以看到误差。 当然也可以不借用工具箱,直接手工编写程序来测试,相比工具箱虽然稍显麻烦,但是结果更直观。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。