正在加载图片...
节点取20和50时所用的训练次数比隐层节点取10时要大。增加隐层节点并不一 定能增加精度或减少训练时间,在本题中反而会带来更长的训练时间。 (3.)改变步长: 当步长减小为0.2,其余设置不变时,要达到终止误差需要进行的训练次数 为51064次,明显多于步长为0.4的情形。 当步长增加为0.5,其余设置不变时,要达到终止误差需要进行的训练次数 为118280次,少于步长为0.4的情形。 当步长增加为0.8,其余设置不变时,训练速度极慢,训练的误差出现明显 的振荡,例如:在某一步误差为0.0066后,其下一步误差又增加为0.0092,而接 下来一步的误差又变为0.0065…,该例子说明了步长较大时,若取得合适则会 加快收敛,若不合适,则会造成振荡而不再收敛。 (4.)增加动量项 当增加动量项,动量因子设为0.2,其余设置不变时,要达到终止误差需要 进行的训练次数为20467次,少于相同条件下不加动量项时所用的训练次数。说 明增加动量项加快了收敛。 五.实验总结 (1.)网络结构: 本实验选用三层前向神经网络使用BP算法以及加动量项的BP算法实现对单 输入单输出函数的逼近,通过对三个不同函数的逼近实验测试了BP算法的性能 及隐层节点数目、步长、动量项等因素对BP网络训练和测试的影响。 其中,适当增加隐层节点数可以改善网络性能,但在本实验中,隐层节点数 取20和50时所用的训练次数比隐层节点取10时要大。可见增加隐层节点并不一 定能增加精度或减少训练时间,在本实验中反而会带来更长的训练时间:训练次 数随着步长的增加而减小,但不合适的步长增加会引起振荡而增加训练次数甚至 不再收敛:增加动量项后在相同条件下网络的收敛速度明显快于不加动量项时的 速度,不过从本实验看来增加动量项对逼近的精度改善并不明显:对在0.2到0.6 区间内均匀取值的数据进行测试,推广性较好,但并不是太理想。 由此可见,BP算法虽然理论上可以实现任意函数的逼近,但网络结构的具体节点取20和50 时所用的训练次数比隐层节点取10 时要大。增加隐层节点并不一 定能增加精度或减少训练时间,在本题中反而会带来更长的训练时间。 (3.)改变步长: 当步长减小为0.2,其余设置不变时,要达到终止误差需要进行的训练次数 为51064次,明显多于步长为0.4的情形。 当步长增加为0.5,其余设置不变时,要达到终止误差需要进行的训练次数 为118280次,少于步长为0.4的情形。 当步长增加为0.8,其余设置不变时,训练速度极慢,训练的误差出现明显 的振荡,例如:在某一步误差为0.0066后,其下一步误差又增加为0.0092,而接 下来一步的误差又变为0.0065……,该例子说明了步长较大时,若取得合适则会 加快收敛,若不合适,则会造成振荡而不再收敛。 (4.)增加动量项 当增加动量项,动量因子设为0.2,其余设置不变时,要达到终止误差需要 进行的训练次数为20467次,少于相同条件下不加动量项时所用的训练次数。说 明增加动量项加快了收敛。 五.实验总结 (1.)网络结构: 本实验选用三层前向神经网络使用BP算法以及加动量项的BP算法实现对单 输入单输出函数的逼近,通过对三个不同函数的逼近实验测试了BP算法的性能 及隐层节点数目、步长、动量项等因素对BP网络训练和测试的影响。 其中,适当增加隐层节点数可以改善网络性能,但在本实验中,隐层节点数 取20和50 时所用的训练次数比隐层节点取10 时要大。可见增加隐层节点并不一 定能增加精度或减少训练时间,在本实验中反而会带来更长的训练时间;训练次 数随着步长的增加而减小,但不合适的步长增加会引起振荡而增加训练次数甚至 不再收敛;增加动量项后在相同条件下网络的收敛速度明显快于不加动量项时的 速度,不过从本实验看来增加动量项对逼近的精度改善并不明显;对在0.2到0.6 区间内均匀取值的数据进行测试,推广性较好,但并不是太理想。 由此可见,BP算法虽然理论上可以实现任意函数的逼近,但网络结构的具体
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有