MATLAB中神经网络工具箱的使用「建议收藏」

MATLAB中神经网络工具箱的使用「建议收藏」今夕何夕兮,前些天把玩了一下MATLAB中神经网络工具箱的使用,忽有“扪参历井仰胁息”之感。别的倒是没什么,只是神经网络的数据组织结构有些“怪异”,要是不小心就会导致工具箱报错。以下便是神经网络工具箱的正确打开姿势,谨供诸君参考:1.打开MATLAB,在命令行输入nntool,将出现如下界面:图1神经网络工具箱主界面其中最主要的分为6个部分:第1部分中显示的是系统的输…

大家好,又见面了,我是你们的朋友全栈君。

今夕何夕兮,前些天把玩了一下MATLAB中神经网络工具箱的使用,忽有“扪参历井仰胁息”之感。别的倒是没什么,只是神经网络的数据组织结构有些“怪异”,要是不小心就会导致工具箱报错。以下便是神经网络工具箱的正确打开姿势,谨供诸君参考:

1.打开MATLAB,在命令行输入nntool,将出现如下界面:

MATLAB中神经网络工具箱的使用「建议收藏」

 

图1 神经网络工具箱主界面

 

其中最主要的分为6个部分:第1部分中显示的是系统的输入数据;第2部分是系统的期望输出;第3部分是网络的计算输出;第4部分是网络的误差,即2和3之间的差异;第5部分呈现的是已经建立的神经网络实例;第6部分的两个按钮分别负责数据的导入和网络模型的建立。

2.点击“Import”按钮,分别导入输入数据与目标输出数据(数据可从工作区导入,也可从文件导入):

MATLAB中神经网络工具箱的使用「建议收藏」

 

图2 导入输入数据集

MATLAB中神经网络工具箱的使用「建议收藏」

 

图3 导入期望输出数据集

 

导入数据后主界面的情况如下:

MATLAB中神经网络工具箱的使用「建议收藏」

图4 导入数据后的情况

 

重要说明:神经网络的数据是以列为基本单位的,即输入与输出数据的列数必须相同,否则将报错!如果原先数据是以行为单位组织的话,可以先在MATLAB中实现转置然后再导入,即B = A’。

3.现在需要的数据已经有了,下一步就是建立一个神经网络模型对数据集进行学习。以下步骤以BP网络为例,首先点击“New”按钮,出现如下界面:

MATLAB中神经网络工具箱的使用「建议收藏」

图5 神经网络模型设置

 

几个重要部分已在上图中框出:1处用于定义该神经网络的名称;2处用于选择神经网络的类型;3处用于选择网络的输入数据;4处用于确定网络的期望输出数据;5、6、7处分别对神经网络的主要机制函数进行设置;8处设置网络层数;9处用于选择各网络层(需要说明的是:第1层指的是隐含层而不是输入层),从而在10和11处可以对该层的神经元个数和传递函数进行设置;12处按钮可以用于查看当前所设置的神经网络的结构图(下附图);点击13处按钮即可生成对应的神经网络模型。前面只是简单地介绍了各个部分的作用,具体参数应该如何设置就只有各位自行去学习相关的文献了,此处不再多言。

MATLAB中神经网络工具箱的使用「建议收藏」

图6 神经网络结构预览

 

4.现在模型和数据都有了,下一步该进行模型的训练了。回到主界面如下:

MATLAB中神经网络工具箱的使用「建议收藏」

图7 回到主界面

 

选中我们刚才建立的神经网络模型,然后点击“Open”按钮,将会出现如下界面:

MATLAB中神经网络工具箱的使用「建议收藏」

图8 神经网络界面

 

在这里主要介绍两个选项卡中的内容,一个是“Train”,另一个是“Adapt”。点击“Train”选项卡后做相应的设置即可进行神经网络的训练:

MATLAB中神经网络工具箱的使用「建议收藏」

图9 模型主要信息设置

MATLAB中神经网络工具箱的使用「建议收藏」

图10 模型具体参数设置

 

设置完所有信息后点击“TrainNetwork”按钮即可进行网络的训练了。训练完成后会有一个结果信息界面,如下:

MATLAB中神经网络工具箱的使用「建议收藏」

图11 训练结果反馈

 

5.OK,现在模型训练也结束了,那么下一步自然是要来验证我们训练的模型。先导入验证输入和验证输出,这一步不再重提。然后来到模型验证界面:

MATLAB中神经网络工具箱的使用「建议收藏」

图12 验证数据导入后

MATLAB中神经网络工具箱的使用「建议收藏」

 

图13 验证参数设置

 

红框1中设置网络的输入和验证输出;2中设置网络输出和误差情况的存储名;这些都完成之后点击“Adapt Network”后即可。此后会出现如下的提示界面:

MATLAB中神经网络工具箱的使用「建议收藏」

图 14 提示界面

 

接下来再回到神经网络主界面如下:

MATLAB中神经网络工具箱的使用「建议收藏」

图15 网络验证结果

 

此时界面中会多出红框所框出的两组数据,它们分别是网络的输出与对应的输出误差。具体的数据可以通过双击它们来打开查看。

重要说明:

神经网络的输入和输出数据要求每列为一个样本,按平常的习惯可能需要转置一下。

否则可能会报输入/输出样本数量不同的错误。

如果出现“input data size does not match net.inputs{1}.size”错误,那是因为创建神经网络是设定的输入个数与样本数据的输入个数不同而引起的,重新创建合适的神经网络即可。

 

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151499.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 二极管处于截止状态时电压为多少_放大电路饱和失真

    二极管处于截止状态时电压为多少_放大电路饱和失真1.截止状态所谓截止,就是三极管在工作时,集电极电流始终为0。此时,集电极与发射极间电压接近电源电压。对于NPN型硅三极管来说,当Ube在0~0.5V之间时,Ib很小,无论Ib怎样变化,Ic都为0。此时,三极管的内阻(Rce)很大,三极管截止。当在维修过程中,测得Ube低于0.5V或Uce接近电源电压时,就可知道三极管处在截止状态。当Ube在0.5~0.7V之间时,Ub

    2025年10月18日
    6
  • IDEA—IDEA使用Tomcat服务器出现乱码问题

    Idea结合Tomcat,访问JSP页面使用response输出,出现了乱码!!!

    2022年2月26日
    40
  • Android中常用的adb shell命令

    Android中常用的adb shell命令注意事项:这里写的命令,网页会重新编辑格式,比如我写了两个减号,发布后变成了一个减号;如果我说的命令不能正确执行,请手动输入命令,切记切换英文状态。android常用shell命令记录下来备忘设置adb环境变量其实就是将adb.exe的路径放到Path中,目的是cmd直接可以使用adb命令比如我的adb.exe路径G:\tools\adt-bundle\sdk\platform-tools

    2022年6月12日
    90
  • CUDA—使用GPU暴力激活成功教程密码

    CUDA—使用GPU暴力激活成功教程密码GPU支持大规模的并行加速运算,胜在量上,CPU处理大量的并行运算显得力不从心,它是胜在逻辑上。利用显卡加速的应用越来越多,但如果说GPU即将或最终将替代CPU还有点言过其实,二者最终将优势互补,各尽所能。使用显卡的无脑并行运算激活成功教程密码是一个不错的选择。这里选择一种简单的情况,限定密码是6位纯数字,并且不限定输入次数,这种情况下可以使用GPU暴力激活成功教程,当然…

    2022年8月22日
    5
  • java pfx,如何从Java中的PFX文件读取公钥[通俗易懂]

    java pfx,如何从Java中的PFX文件读取公钥[通俗易懂]IamabletoreadprivatekeyfromPFXfilebutnotpublickey.Iamusingfollowingcodetoreadpublickey.InputStreaminStream=newFileInputStream(certFile);CertificateFactorycf=CertificateFac…

    2022年5月1日
    267
  • ExecuteReader报错,语法错误

    ExecuteReader报错,语法错误先上图:随后我就死命的看自己的sql语句,可是看来看去,也看不出问题,明明是很对的。。。最后,到处查找解决方案,终于在论坛见到了大神的一句:“你输入的是中文字符的空格!”然后我赶紧回来一看,果然是。。。。。。瞬间蛋碎了一地。。。。sql语句莫名报语法错误的时候,赶紧仔细检查下时候是空格问题,这个问题很难发现!!!!!

    2022年6月20日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号