2016-12-27 10 views
0

TensorFlow(Python)では、グラフにtf.train.RMSPropOptimizerを追加すると、初期化が必要な追加の変数が追加されていますか?はいの場合は、どうすればそれらにアクセスして手動で初期化できますか? (私はむしろtf.global_variables_initializerを使用したくない)。言い換えれば、 (1)使用する初期化子はどのようにして決定できますか? (2)initilizer opをグラフに追加するにはどうすればよいでしょうか?RMSPropOptimizerの初期化

EDIT 1:

私はRMSPropOptimizerを追加するたびにグラフに追加された新しいtf.Variableに、ここで参照すると、それがどのように(ちょうど他のtf.Variableのように)初期化されています。私は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)これらの変数のために、グラフにイニシャライザ演算を追加するにはどうすればよいですか?

名前付きパラメータとしてコンストラクタに渡すことができます。

+0

私の質問には、RMSPropOptimizerが初期化が必要な新しいtf.variablesをグラフに追加するかどうかということがあります。私はコンストラクタ(ネットワークのハイパーパラメータ)の引数を参照していない – Lior

+0

はい、これらの変数も同様に初期化する必要があります。 –