神经网络性能测试

时间:2020-06-23 12:27:00

标签: matlab neural-network

我正在尝试对NARXNET进行性能测试。

我有一个数据集,该数据集由系统的输入时间序列和系统响应的输出时间序列组成,可以在以下链接中找到.mat文件: https://drive.google.com/file/d/1Yc7OcAa3p19GqqrEUyAEkVZ_Alvf4CBG/view?usp=sharing

我想教神经网络基于最近5个时间步长的权重输入进行学习(因为最近5个时间步长之前的任何时间序列都处于系统“过时”状态) >

我已经确定了输入和输出单元格生成神经网络所需的格式

但是现在我需要创建一个图表来显示神经网络随时间变化的性能(因此,在100个时间步之后,网络的%准确度是多少?1000次之后会怎样?)

我已经生成了这段代码,它实际上来自Matlab的神经网络时间序列应用程序:

X = Inputs;

T = Targets;

inputDelays = 1:2;

feedbackDelays = 1:5;

hiddenLayerSize = 10;

net = narxnet(inputDelays,feedbackDelays,hiddenLayerSize,'open',trainFcn);

[x,xi,ai,t] = preparets(net,X,{},T);

net.divideParam.trainRatio = 70/100;

net.divideParam.valRatio = 15/100;

net.divideParam.testRatio = 15/100;

[net,tr] = train(net,x,t,xi,ai);

如何生成错误图?我是在每次向下移动时进行预测和比较,还是有一个可以随时间推移显示性能的函数?

我确实知道有一个图形,plotperform(tr)可以满足我的需求,但它不是我期望的行为(开始时性能很差,然后逐渐提高性能)到训练结束时)似乎表明神经网络的误差在整个过程中或多或少是随机的。而且,据我了解,该图显示了网络的性能是在训练期间,而不是每个时间步块的网络性能。

0 个答案:

没有答案