简体   繁体   English

具有大量数据样本的神经网络的参数值应该是多少?

[英]What should be the value of parameters of neural network having large data sample?

I have done coding for neural network in Python for the multi-layer,feed-forward, back-propagation structure. 我已经完成了使用多层前馈,反向传播结构在Python中对神经网络进行编码的工作。 In this network structure I have 24 nodes in input layer, 18 nodes in hidden layer and 1 node in output layer. 在这种网络结构中,我在输入层有24个节点,在隐藏层有18个节点,在输出层有1个节点。 I am getting the good training result for small data set, but for the large data input I am not able to set the value of constant parameters like learning rate, momentum rate etc. I have the input sample for the input value as: 对于小型数据集,我获得了很好的训练结果,但是对于大型数据输入,我无法设置恒定参数的值,例如学习率,动量率等。对于输入值,我有以下输入样本:

[[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]
 .
 . .........................                     ]

And input sample for the target value as: 并输入目标值的样本为:

[[-20.0]
 [-10.0]
 [30.0]
  .
  .....]

the total number of the sample is around 5000. I have trained this network using 样本总数约为5000。

learning_rate = 0.01 
momentum_rate = 0.07

it giving good result but taking so much time and iterations around 500000. Is there any good suggestion for the setting of learning rate and momentum rate so i can get my result fast. 它给出了很好的结果,但是花费了很多时间并且在500000左右进行了迭代。对于学习率和动量率的设置是否有任何好的建议,这样我就可以快速获得结果。 Or should i introduce increase learning rate ratio, if i introduce the learning rate then what should be the value? 还是应该引入提高学习率的比例,如果我引入学习率,那么值应该是多少?

It's likely going to be a process of trial and error in order to achieve faster learning of the neural network. 为了更快地学习神经网络,可能需要反复试验。

If you want to obtain a result faster, then it is possible that you could increase the learning rate (larger weight adjustments), drop some hidden layer neurons or inputs (less calculations) or drop the number of iterations, but this may also reduce testing and validation set performance. 如果要更快地获得结果,则可能可以提高学习率(较大的权重调整),删除一些隐藏层的神经元或输入(较少的计算)或减少迭代次数,但这也可能减少测试和验证集性能。

If you have time, these options could be tested and compared to determine if faster learning could be accomplished for your problem. 如果您有时间,可以对这些选项进行测试和比较,以确定是否可以针对您的问题更快地学习。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM