我正在阅读此博客
https://smist08.wordpress.com/2016/10/04/the-road-to-tensorflow-part-10-more-on-optimization/
提到所有张量流的学习率
optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(loss, global_step=global_step)
optimizer = tf.train.AdadeltaOptimizer(starter_learning_rate).minimize(loss)
optimizer = tf.train.AdagradOptimizer(starter_learning_rate).minimize(loss) # promising
optimizer = tf.train.AdamOptimizer(starter_learning_rate).minimize(loss) # promising
optimizer = tf.train.MomentumOptimizer(starter_learning_rate, 0.001).minimize(loss) # diverges
optimizer = tf.train.FtrlOptimizer(starter_learning_rate).minimize(loss) # promising
optimizer = tf.train.RMSPropOptimizer(starter_learning_rate).minimize(loss) # promising
它表示您输入的学习率只是入门学习率。这是否意味着如果您在培训过程中更改学习率,那么该更改将不会生效,因为它不再使用入门学习率了?
我尝试查看API文档,但未指定。
答案 0 :(得分:1)
一个简短的答案:
除了第一行,其余都是自适应梯度下降优化器,这意味着它们将在每一步中根据某些条件自动调整学习率。因此,您给出的学习率仅用于初始化。
以class BasePage {
get state() {
return { locale: 'en' }
}
}
class FooPage extends BasePage {
get state() {
return Object.assign(super.state, {
foo: 'Hello'
})
}
render() {
const { locale, foo } = this.state;
console.log({ locale, foo }); // prints { locale: 'en', foo: 'Hello' }
}
}
为例,您可以在此article中了解其详细信息。