gpt4 book ai didi

machine-learning - 如何在训练期间切换 tf.train.Optimizers?

转载 作者:行者123 更新时间:2023-11-30 08:34:47 26 4
gpt4 key购买 nike

我想从 Adam 切换至 SGD经过一定数量的 epoch 后。如何顺利地完成此操作,以便将权重/梯度传递给新的优化器?

最佳答案

只需定义两个优化器并在它们之间切换:

sgd_optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(cost)
adap_optimizer = tf.train.AdamOptimizer(learning_rate).minimize(cost)
...
for epoch in range(100):
for (x, y) in zip(train_X, train_Y):
optimizer = sgd_optimizer if epoch > 50 else adap_optimizer
sess.run(optimizer, feed_dict={X: x, Y: y})

优化器仅封装将梯度应用于张量的方式,并且可能仅保存一些自己的变量。模型权重不存储在优化器中,因此您可以轻松切换它们。

关于machine-learning - 如何在训练期间切换 tf.train.Optimizers?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46850835/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com