主要内容

Trainscg.

缩放共轭梯度背部化

描述

net.trainfcn ='trainscg'设置网络训练码财产。

例子

[训练网络TR.] =火车(,......)训练网络Trainscg.

Trainscg.是一种网络训练功能,可根据缩放的共轭梯度方法更新权重和偏置值。

培训发生根据Trainscg.培训参数,此处以其默认值显示:

  • 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.- 最小性能梯度。默认值是1E-6

  • net.trainparam.max_fail.- 最大验证失败。默认值是6.

  • net.trainparam.mu.- Marquardt调整参数。默认值为0.005。

  • net.trainparam.sigma.- 确定第二衍生近似的重量变化。默认值是5.0E-5

  • net.trainparam.lambda.- 用于调节黑森州的无限期的参数。默认值是5.0E-7

例子

全部收缩

此示例显示了如何解决由输入组成的问题P.和目标T.通过使用网络。

P = [0 1 2 3 4 5];t = [0 0 0 11 1 1];

创建了具有两个隐藏神经元的双层前馈网络和该训练功能。

net = feedforwardnet(2,'trainscg');

在这里,网络训练并测试。

净=火车(网,P,T);a = net(p)

帮助Feed​​forwardNet.帮助cascadeforwardnet.对于其他例子。

输入参数

全部收缩

输入网络,指定为网络对象。要创建网络对象,例如,使用FeedforwardNet.或者NARXNET.

输出参数

全部收缩

训练有素的网络,作为一个返回网络目的。

培训记录(时代perf),作为一个结构返回,其字段取决于网络训练功能(net.net.trainfcn.)。它可以包括诸如:

  • 培训,数据划分和性能函数和参数

  • 用于培训,验证和测试集的数据部门指标

  • 用于训练验证和测试集的数据部门掩码

  • 时代数量(num_epoch.)最好的时代(best_poch)。

  • 培训州名称列表(状态)。

  • 每个状态名称在整个培训中记录其值的字段

  • 最佳网络的性能(best_perf.best_vperf.best_tperf.的)

更多关于

全部收缩

网络使用

您可以创建一个使用的标准网络Trainscg.FeedforwardNet.或者cascadeforwardnet.。准备自定义网络才能接受培训Trainscg.

  1. net.trainfcn.'trainscg'。这套net.trainparam.Trainscg.默认参数。

  2. net.trainparam.属性到所需值。

在任何一种情况下,打电话火车使用生成的网络列车Trainscg.

算法

Trainscg.只要其重量,净输入和传输函数可以培训任何网络都具有衍生功能。BackPropagation用于计算性能的衍生物perf关于重量和偏置变量X

缩放的共轭梯度算法基于共轭方向,如TrainCGP.TrainCGF., 和TrainCGB.但是,此算法在每次迭代时不执行线路搜索。看到moller(神经网络,卷。6,1993,第525-533页)对于缩放共轭梯度算法的更详细讨论。

当发生任何这些条件时,培训停止:

  • 最大数量时代(重复)达到。

  • 最大数量时间超出了。

  • 性能最小化到目标

  • 性能梯度低于min_grad.

  • 验证性能超过了max_fail.自上次降低以来(使用验证时)以来的次数。

参考

[1] Moller。神经网络,卷。6,1993,PP 525-533

在R2006A之前介绍