2017-06-20 1 views
0

RNNのTensorflowチュートリアルコードで、次のバッチはどのように取得されますか? reader.pyでは、ptb_producer関数はデキューメソッドを通して一度に[​​batch_size x num_steps]次元のバッチを生成しますが、すべてのバッチを取得するためにptb_word_lm.pyに複数回呼び出されることはありません。さまざまなバッチがどのように入手されているかを理解する助けとなります。前もって感謝します。 ptb_producer(、Tensorflow rnnチュートリアルコードでは、トレーニングデータと異なるバッチはどのように取得されますか?

sv = tf.train.Supervisor(logdir=FLAGS.save_path) 
    with sv.managed_session() as session: 
     for i in range(config.max_max_epoch):#LOOK!The param max_max_epoch. 
     lr_decay = config.lr_decay ** max(i + 1 - config.max_epoch, 0.0) 
     m.assign_lr(session, config.learning_rate * lr_decay) 

これは明らかにループであり、そしてOP m.assign_lr()max_max_epoch times.whatのより実行された、m = PTBModel(is_training=True, config=config, input_=train_input)

+0

こんにちは、スタックオーバーフローへようこそ。 [how-to-ask](https://stackoverflow.com/help/how-to-ask)を参照してください。 – Maher

答えて

0

あなたはptb_word_lm.pyでこれらのコード(ライン376)は以下のようにことに気づきましたsess.run()が一度呼び出されたときに1つのバッチが生成されます)。実際、関数ptb_producerはptb_word_lm.pyで複数回呼び出されました。 p.s.それが正しいかどうかは分かりません。ホープが助けます。

関連する問題