2016-12-27 164 views
0

在TensorFlow(Python)中,當添加到圖表tf.train.RMSPropOptimizer時,是否添加了需要初始化的額外變量?如果是,我怎樣才能訪問它們並手動初始化它們? (我寧願不使用tf.global_variables_initializer)。換句話說: (1)我怎樣才能決定使用哪個初始化器? (2)如何將initulator操作添加到圖中,專門用於這些變量?RMSPropOptimizer初始化

編輯1:

我這裏指的是每當我添加RMSPropOptimizer被添加到圖中的任何新tf.Variable,以及它是如何初始化(就像其他tf.Variable S)。我不是指RMSPropOptimizer的構造函數中的參數(它們是模型的超參數)。

回答

0

在TensorFlow(Python)中,向圖添加tf.train.RMSPropOptimizer時是否添加了需要初始化的其他變量?

是的。

如果是,我該如何訪問它們並手動初始化它們? (我寧願不使用tf.global_variables_initializer)。

從文檔:

tf.train.RMSPropOptimizer.__init__(learning_rate, decay=0.9, momentum=0.0, epsilon=1e-10, use_locking=False, centered=False, name='RMSProp')

至少有3(decaymomentum,和epsilon)。

換句話說:(1)如何決定使用哪種初始化工具?

這個我沒有很好的答案 - 我在課堂上被告知「只是使用亞當」。總的來說,這可能是一個很好的建議,但我想有些情況下其他人工作得更好。這可能值得在線搜索博客文章或調查論文等。

(2)如何將初始化器op添加到圖中,特別是這些變量?

您可以將它們作爲命名參數傳遞給構造函數。

+0

我的意思是在我的問題是RMSPropOptimizer是否添加到圖需要初始化的新tf.variables。我不是指構造函數中的參數(它是網絡的超參數) – Lior

+0

是的,這些變量也需要初始化。 –