我已经在Python中为神经网络编码了多层,前馈,反向传播结构。在这种网络结构中,输入层有24个节点,隐藏层有18个节点,输出层有1个节点。我获得了小数据集的良好训练结果,但是对于大数据输入,我无法设置常量参数的值,如学习率,动量率等。 我有输入值的输入样本:
[[1,0,1,0,1,0,1,0,1,1,1,1,0,0,0,0,0,1,1,1,0,1,0,1]
[1,0,1,0,1,0,1,0,1,1,1,1,0,0,0,0,0,1,1,1,0,1,0,1]
[1,0,1,0,1,0,1,0,1,1,1,1,0,0,0,0,0,1,1,1,0,1,0,1]
.
. ......................... ]
输入目标值的样本:
[[-20.0]
[-10.0]
[30.0]
.
.....]
样本总数约为5000。 我使用
训练了这个网络learning_rate = 0.01
momentum_rate = 0.07
它给出了很好的结果,但花了这么多时间和迭代大约500000。 对于学习率和动量率的设置是否有任何好的建议,这样我可以快速得到我的结果。或者我应该引入提高学习率,如果我介绍学习率,那么应该是什么值?
答案 0 :(得分:0)
为了更快地学习神经网络,它可能会成为一个反复试验的过程。
如果您想更快地获得结果,那么您可以提高学习率(更大的权重调整),丢弃一些隐藏的层神经元或输入(减少计算)或减少迭代次数,但这可能还可以降低测试和验证集的性能。
如果您有时间,可以对这些选项进行测试和比较,以确定是否可以为您的问题实现更快的学习。