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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vuecli3配置webpack_vuecli webpack配置

    vuecli3配置webpack_vuecli webpack配置前言如果我们想在webpack中使用vue,就需要在webpack中配置vue配置vue首先,我们需要在项目中安装vue,安装命令如下:npminstallvue–save安装完成后

    2022年7月30日
    12
  • java工厂模式实例(设计模式)「建议收藏」

    java工厂模式实例(设计模式)「建议收藏」java工厂模式开篇声明,此理解为作者自身理解,不一定正确,如有错误请大佬们指正。工厂模式,在作者看来,从现实生活来说,就是一个工厂,里面有N个车间,每个车间会生产不同的产品,而租户只需要告诉这个工厂的老板我需要一个什么产品,老板会去找到对应的车间返回给租户使用。画个图理解:如果使用java语言来描述则是,对具有相同动作,不同动作执行过程的一类方法抽象出一个接口类,然后不同的实现类对接口类中的接口进行不同的实现,并且编写一个工厂类,根据传入获取不同的实现类实例返回给调用者

    2022年7月20日
    10
  • java中数组遍历的三种方式

    java中数组遍历的三种方式1.for循环遍历通常遍历数组都是使用for循环来实现。遍历一维数组很简单,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度。2.Arrays工具类中toString静态方法遍历利用Arrays工具类中的toString静态方法可以将一维数组转化为字符串形式并输出。3.foreach语句遍历java5之后,Java提供了一种更简洁的循环:foreach循环,这种循环遍历数组和集合更加简洁。使用foreach循环遍历数组时,无须获得数组和集合长度,无须根据索引来访问数组

    2022年6月2日
    52
  • busybox 安装mysql_busybox 安装问题解决「建议收藏」

    busybox 安装mysql_busybox 安装问题解决「建议收藏」直接编译错误1。loginutils/passwd.c:93:16:error:storagesizeof‘rlimit_fsize’isn’tknown解决方法:在busybox根目录下查找到文件:find-namelibbb.h在libbb.h中添加#include1。MakefileMakefile:431:***mixedimplicitandnormalr…

    2022年7月25日
    13
  • ATA考试

    ATA考试一、确定机房作为ATA考试机器的数量。(1)确定本次ATA考试本校每个机房上报了多少台机器。ATA考试机的使用总数量不包含ATA管理机器。在上报机房机器数量的时候,在机房的总数量上减去1台考试机

    2022年6月30日
    42
  • google cloud platform官网_ai智能体验店免费送

    google cloud platform官网_ai智能体验店免费送一、GoogleCloudPlatform(GCP)简介GoogleCloudPlatform(以下简称GCP)是Google提供的云平台,。Google云平台提供很多功能,包括计算服务,存储服务,网络服务,大数据服务,人工智能服务,以及谷歌的产品等,可以用来搭建加速服务,网站和存储数据等等。本文将介绍如何申请GCP一年的免费试用、Linux服务器环境搭建。Docker环境搭建…

    2022年10月23日
    0

发表回复

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

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