如何设置训练数据,因此只有一组数据(曲线)行为被送入神经网络每一次?

1视图(30天)
我工作在一个路径denpendece神经网络预测应力应变行为的一组参数。输入和输出如下:
  1. 输入:混凝土强度、屈服强度比钢,……以统一的增量应变(800预定义的步骤)
  2. 输出:压力
训练数据是这样的( 行,我 预测变量 行米 反应变量 ):
对于每一个标本,我有801行数据(800预定义的应变措施),这是一个应力应变曲线,所以数据是路径依赖。我有100个样本进行训练。我的问题是 如何对待一个样本的数据 (801行) 一批 提供给 神经网络 每次一个曲线(标本) 重复(优化),直到100年标本被美联储 吗?我想美联储数据必须是路径依赖。
我试着写一个for循环,它看起来像下面,但它将覆盖每次偏差和重量。换句话说,最后,重量和偏见只使用最后的样本数据训练(一个标本)。
b = 2:10 0
输入= predVar (1:801:);
目标= resVar (1:801, 1);
nn =火车(网络,输入“目标”);
输入= predVar (801 * (b - 1): 801 * b:);
目标= resVar (801 * (b - 1): 801 * b, 1);
nn =火车(网络,输入“目标”);
结束
我开发的神经网络 前馈神经网络 。在预测阶段,一个循环还建立了预测应力在每个预定义的应变措施。我一直在寻找答案在过去三周,但没有运气。任何意见和建议都是受欢迎的。
谢谢你阅读这篇文章。保持安全和健康!
1评论
NightStalker
NightStalker 2021年9月7日
你好,
你应该发现,神经网络时应该停止训练。
例如,我创建了一个净fitnet函数。我没有改变网络的属性,因此默认设置如下:
> > net.trainParam
ans =
函数参数“trainlm”
显示培训窗口反馈显示窗口:真
显示命令行反馈showCommandLine:假的
命令线频率显示:25
最大时代时代:1000
最大培训时间时间:正
性能目标目标:0
最低梯度min_grad: 1 e-07
最大验证检查max_fail: 6
μμ:0.001
μ减少比例mu_dec: 0.1
μ增加的比例mu_inc: 10
最大μmu_max: 10000000000
这意味着所有,训练停止任何这些条件发生时:
  • 的最大数量时代(重复)。
  • 的最大数量时间是超过。
  • 性能是最小化目标
  • 性能梯度低于min_grad
  • μ超过mu_max
  • 验证性能增加了多max_fail自从上次下降(当使用验证)。
迫使你的网络就完成100时代,然后停止 (我不建议,因为停止培训应该是一个绩效指标- /最小错误的目标) ,你可以改变你的TrainingFunction贝叶斯正规化
网。TrainFcn =“trainbr”
与贝叶斯正规化训练停止任何这些条件发生时:
  • 的最大数量时代(重复)。
  • 的最大数量时间是超过。
  • 性能是最小化目标
  • 性能梯度低于min_grad
  • μ超过mu_max
通过使用以下设置,停止训练的唯一方法就是完成了100时代,因为无论是时间,目标,min_grad mu_max也可以达到。
net.trainParam
ans =
函数参数“trainbr”
显示培训窗口反馈显示窗口:真
显示命令行反馈showCommandLine:假的
命令线频率显示:25
最大时代时代:100
最大培训时间时间:正
性能目标目标:0
最低梯度min_grad: 1 e - 100
最大验证检查max_fail: 0
μμ:0.005
μ减少比例mu_dec: 0.1
μ增加的比例mu_inc: 10
最大μmu_max: 1 e + 100

登录置评。

答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的