2017-07-31 5 views
0

グラデーションディセントアルゴリズムは、最小値に向かっていくつかのステップを行います。私の質問は、sess.runを呼び出すたびに実行されるステップの数です。例で詳しく説明します:TensorFlow:session.run()呼び出しごとにいくつの勾配ステップが行われますか?

私のネットワークでは、勾配降下アルゴリズム(tf.train.AdamOptimizer)を使用しています。私はこのようなループを持っています:

for epoch in range(100): 
    sess.run(ops['optimizer'], 
     feed_dict=train_feed_dict 
    )  

このエポックループは100回実行されます。私の質問は、sess.runへの一回の呼び出しで、ミニマムに向かって小さな一歩を踏み出す場合です。または、各時代に作られた礼儀正しいステップの2つ以上のステップですか?

+0

私はこの答えが*単一の呼び出しである*答え*が勾配降下のための単一のステップを引き起こすかもしれないと信じています。 https://stackoverflow.com/a/35728022/2184122訂正や洞察力は高く評価されていますが、それ以外の場合を除き、その回答は正しいと思います。 –

答えて

1

ops['optimizer']が1回の呼び出しでtf.train.AdamOptimizer(some_learning_rate).minimize(some_loss)の場合、それを実行すると、ちょうど1つの降下ステップが実行されます。あなたのループには100ステップがあります。

関連する問題