我试图用TensorFlow重现this paper的一部分,问题是作者使用带有权重衰减的SGD,每30个时代将学习率降低到1/10
when applying a decay to the learning rate, be sure to manually apply the decay to the weight_decay as well
所以我试过了
schedule = keras.optimizers.schedules.ExponentialDecay(initial_learning_rate = 0.003,
decay_rate = 0.1,
decay_steps = steps_per_epoch*30,
staircase = True
)
optimizer = tfa.optimizers.SGDW(learning_rate = schedule,
weight_decay = schedule,
momentum = 0.9
)
(以前初始化的每个历元的步数)
但是,正如我对Keras SGD所做的那样,这不起作用,并且为decation_weight参数提出了一个“TypeError:Expected float32”。实现目标行为的正确方法是什么
您得到一个错误,因为您正在tensorflow加载项优化器
SGDW
内使用kerasExponentialDecay
根据本文,超参数是
那么,为什么不使用
LearningRateScheduler
将它减少到每30个时代10倍呢示例代码
相关问题 更多 >
编程相关推荐