弹性反向化
net.trainfcn ='trainrp'
设置网络trainFcn
财产。
[
用以下方法训练网络trainedNet
,tr
] =火车(网
,......)trainrp
.
trainrp
是一种网络培训函数,可根据弹性反向化算法(RPROP)更新权重和偏置值。
培训是根据trainrp
培训参数,此处以其默认值显示:
net.trainparam.echs.
-需要训练的最大纪元数。默认值为1000
.
net.trainParam.show
-显示之间的年代(南
没有显示)。默认值为25
.
net.trainparam.showcommandline.
- 生成命令行输出。默认值为假
.
net.trainparam.showwindow.
-显示训练GUI。默认值为真的
.
net.trainParam.goal
——性能目标。默认值为0
.
net.trainParam.time
最长训练时间,以秒为单位。默认值为INF.
.
net.trainParam.min_grad
- 最小性能梯度。默认值为1 e-5
.
net.trainparam.max_fail.
—最大验证失败。默认值为6
.
net.trainparam.lr.
- 学习率。默认值为0.01
.
net.trainparam.delt_inc.
-增量到权重变化。默认值为1.2
.
net.trainparam.delt_dec.
-减重到重量变化。默认值为0.5
.
net.trainparam.delta0.
- 初始重量变化。默认值为0.07
.
net.trainparam.deltamax.
—最大重量变化。默认值为50.0
.
trainrp
可以训练任何网络,只要它的权值、净输入和传递函数都有导数函数。
用反向传播来计算性能的导数性能
关于重量和偏置变量X
.根据以下内容调整每个变量:
dX =△。*标志(gX);
其中的元素Deltax.
都初始化为Delta0.
, 和gX
梯度。在每次迭代中Deltax.
被修改。如果是一个元素gX
将符号从一个迭代更改到下一个迭代,然后更改对应的元素Deltax.
减少了delta_dec.
.如果是一个元素gX
从一个迭代到下一个迭代保持相同的标志,然后是相应的元素Deltax.
是增加了delta_inc.
.参见Riedmiller,M.和H. Braun,“一种直接的自适应方法,用于更快的反向化学习:RPROP算法,”IEEE国际神经网络会议论文集,1993年,第586-591页。
当发生任何这些条件时,培训停止:
最大数量时代
(重复)已达到。
最大数量时间
是超过。
性能被最小化到目标
.
性能梯度下降min_grad
.
验证性能超过了max_fail.
自上次降低(使用验证时)以来的次数。
[1] Riedmiller,M.和H. Braun,“一种直接的自适应方法,用于更快的反向化学习:RPROP算法”IEEE国际神经网络会议论文集,1993年,第586-591页。