缩放共轭梯度反向传播
net.trainFcn= 'trainscg'
设置网络trainFcn
财产。
[
用以下方法训练网络trainedNet
,tr
) =火车(净
,……)trainscg
.
trainscg
是根据比例共轭梯度法更新权值和偏差值的网络训练函数。
培训是根据trainscg
训练参数,这里显示了它们的默认值:
net.trainParam.epochs
-需要训练的最大纪元数。默认值为1000。
net.trainParam.show
-显示之间的年代(南
没有显示)。默认值为25。
net.trainParam.showCommandLine
—生成命令行输出。默认值为假
.
net.trainParam.showWindow
-显示训练GUI。默认值为真正的
.
net.trainParam.goal
——性能目标。默认值为0。
net.trainParam.time
最长训练时间,以秒为单位。默认值为正
.
net.trainParam.min_grad
—性能梯度最小。默认值为1 e-6
.
net.trainParam.max_fail
—最大验证失败。默认值为6
.
net.trainParam.mu
-马夸特调整参数。默认值为0.005。
net.trainParam.sigma
-确定二阶导数近似的重量变化。默认值为5.0 e-5
.
net.trainParam.lambda
-调节黑森语不确定性的参数。默认值为5.0 e -
.
trainscg
可以训练任何网络,只要它的权值、净输入和传递函数都有导数函数。用反向传播来计算性能的导数性能
关于权重和偏差变量X
.
缩放共轭梯度算法是基于共轭方向的,如traincgp
,traincgf
,traincgb
,但该算法并不在每次迭代时执行行搜索。看到莫勒(神经网络, Vol. 6, 1993, pp. 525-533),以更详细地讨论比例共轭梯度算法。
当这些情况发生时,训练停止:
最大数目时代
(重复)。
最大数量时间
是超过。
性能被最小化到目标
.
性能梯度在下面min_grad
.
验证性能的提高超过max_fail
从上次(使用验证时)开始减少的时间。
莫勒[1]。神经网络,第6卷,1993年,525-533页