1
有什么有效的方法我可以优化该神经网络..具有多个输入的网络的超参数优化?
map = {}
for batch in xrange(1,100,1):
for lr in np.arange(0.00001,1,0.0000001):
for decay in np.arange(0.0000001,1,0.0000001):
for momentum in np.arange(0.001,1,0.01):
print 'batch_' + str(batch) + '_lr_' + str(lr) + '_decay_' + str(decay) + '_momentum_' + str(momentum)
result = model(batch,lr,decay,momentum)
print result
map['batch_' + str(batch) + '_lr_' + str(lr) + '_decay_' + str(decay) + '_momentum_' + str(momentum)] = result
np.save('sgd_opt.npy', map)
目前,正在使用多个for循环做 - 不是没有这样做的任何其它的有效方法?
如果您关心速度,那么肯定会有所作为的一件事是,您无需测试900万种不同的学习速率。采取更大的步骤。 –
@aryamccarthy的建议? lr通过ti sgd优化器。 –
这是我的建议:你一起测试10^7的学习率,10^7衰减和10^2动量。这太多了。您正在评估10^16个不同的模型。让我们慷慨*说你的模型只需要0.3秒来训练和测试。然后它将花费150万年**来测试所有组合。测试更少的组合,可能使用'np.logspace'。 –