MATLAB神经网络工具箱函数各种图的解释

MATLAB神经网络工具箱函数各种图的解释介绍了matlab神经网络工具箱函数的图解属性和绘图意义

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

在这里插入图片描述
Neural Network 该部分展示了神经网络的结构,从结构图中可以看出该网络有三个隐含层,神经元个数分别为9个、8个、7个

Algorithms 该部分展示了该网络所使用的训练算法,可以看出

Data Division:该网络采用随机划分的方法将数据集划分为training set、validation set、test set

Training:该网络采用Levenberg–Marquardt算法进行训练

Performance*:该网络采用均方误差算法计算误差

Calculations:****该网络保存为mex格式

Progress Epoch:该网络允许的迭代次数最大为1000,实际迭代5次

Time:该网络训练时长为3秒

Performance:该网络的最大误差为0.475,目标误差为0.001,实际误差为0.000520,可在Plots中的Performance中详细查看

Gradient:该网络的最大梯度为1.91,阈值梯度为1e−7 1e^{-7}1e −7
,实际梯度为0.033。可在Plots中的Training State中详细查看

Mu:该网络所使用Levenberg–Marquardt算法中的阻尼因子最小值为0.001,阈值为1e10 1e^{10}1e 10
,实际值为1e−6 1e^{-6}1e −6 ,Mu值越大意味着算法收敛效果越好。可在Plots中的Training
State中详细查看

Validation
Checks:该网络的泛化能力检查标准,实际值为0表示在训练过程中误差在持续降低,若连续6次训练误差无法降低,则结束训练任务。可在Plots中的Training
State中详细查看

Plots Performance:该网络训练过程中的误差变换可视化

Training State:该网络训练过程中的梯度、Mu因子和泛化能力变换等信息的可视化

Regression:该网络训练集、验证集、测试集的回归能力可视化

Plot Interval:图中横坐标的刻度 ————————————————
版权声明:本文为CSDN博主「白水偷偷画工图」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/baishuiniyaonulia/article/details/98231693

这里是引用

图上三条有颜色的实线分别是:BP训练过程的MSE指标在每一代中的表现,BP交叉验证度过程的MSE指标在每一代中的问表现,BP测试过程的MSE指标在每一代中的表现。尤其你要注意那条TEST红线,那是你的BP计算答/训练内结果。
BEST虚线说明BP网络训练到第八代的时候BP训练结果最理想。
GOAL虚线是你编程或者直接用的MATLAB的ANN工具箱去训练这个BP时,设容置的网络训练停止目标(之一)。

在这里插入图片描述
代表检验这个网络的训练结果。

mse表示均方差,当然越小越好。但是这与zhidao你训练样本的多少,训练次数都有很大关系。这个其实没有统一的标准,任何人都知道0偏差当然是最好。但是根绝神经网络本身致命的缺陷,由于它是迭代收敛逼近解析式,所以不可能达到0误差。

这只有根据使用者的工程技术要求来加以判断,这个误差指标肯定应该在小于工程误差范围内啊。但是对于科研研究,也只能具体情况具体分析。定量一说没有具体绝对一说的。

在这里插入图片描述
Gradient为梯度下降法的函数
Validation Checks
在训练时,用training训练,每训练一次,系统自动会将validation set中的样本数据输入神经网络进行验证,在validation set输入后会得出一个误差(不是网络的训练误差,而是验证样本数据输入后得到的输出误差,可能是均方误差),而此前对validation set会设置一个步数,比如默认是6echo,则系统判断这个误差是否在连续6次检验后不下降,如果不下降或者甚至上升,说明training set训练的误差已经不再减小,没有更好的效果了,这时再训练就没必要了,就停止训练,不然可能陷入过学习。
Learn Rate 学习率(默认是0.01)
学习速率的选取很重要,大了可能导致系统不稳定,小了会导致训练周期过长、收敛慢,达不到要求的误差。一般倾向于选取较小的学习速率以保持系统稳定,通过观察误差下降曲线来判断。下降较快说明学习率比较合适,若有较大振荡则说明学习率偏大。同时,由于网络规模大小的不同,学习率选择应当针对其进行调整

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151503.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)


相关推荐

  • linux下安装apache(httpd-2.4.3版本)各种坑

    linux下安装apache(httpd-2.4.3版本)各种坑

    2020年11月12日
  • Pytest(10)assert断言[通俗易懂]

    Pytest(10)assert断言[通俗易懂]前言断言是写自动化测试基本最重要的一步,一个用例没有断言,就失去了自动化测试的意义了。什么是断言呢?简单来讲就是实际结果和期望结果去对比,符合预期那就测试pass,不符合预期那就测试failed

  • StrictMode使用

    StrictMode使用【IT168技术】最新的Android平台中(Android2.3起),新增加了一个新的类,叫StrictMode(android.os.StrictMode)。这个类可以用来帮助开发者改进他们编写的应用,并且提供了各种的策略,这些策略能随时检查和报告开发者开发应用中存在的问题,比如可以监视那些本不应该在主线程中完成的工作或者其他的一些不规范和不好的代码。  StrictMode有多种不

  • C#静态方法和非静态方法

    使用了static修饰的方法是静态方法,反之则为非静态方法。静态方法是一种特殊的方法,他不属于某个具体的实例。非静态方法可以访问类中的任何成员,而静态方法只能访问静态成员。http://www.cnb

    2021年12月21日
  • 可以用verilog描述而不能用VHDL_verilog多次调用同一模块

    可以用verilog描述而不能用VHDL_verilog多次调用同一模块今天在编译一个Verilog文件,其中嵌入了VHDL的模块,其VHDL模块如下:entityvhdl_moduleisgeneric(PARA1:boolean:=false;–boolean型PARA2:boolean:=false;–integral型);

  • Python gzip和bz2模块 读写.gz 和.bz2压缩文件

    Python gzip和bz2模块 读写.gz 和.bz2压缩文件读写压缩文件问题你想读写一个gzip或bz2格式的压缩文件。解决方案gzip和bz2模块可以很容易的处理这些文件。两个模块都为open()函数提供了另外的实现来解决这个问题。比如,为了以文本形式读取压缩文件,可以这样做:#gzipcompressionimportgzipwithgzip.open(‘somefile.gz’,’rt’)asf:…

发表回复

您的电子邮箱地址不会被公开。

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