2016-04-07 3 views
-1

dynamic_rnn()に送信する前に入力をarray_ops.reverse_sequence()に逆引きしようとしていますが、推論グラフは問題なくビルドできますが、トレーニンググラフを作成するときには次のエラーが発生します:dynamic_rnn()とarray_ops.reverse_sequence()の問題

Traceback (most recent call last): 
    File "bin/trainer.py", line 158, in <module> 
    kmer_len=args.kmer_len) 
    File "/home/ubuntu/GIT/IvyMike/ivymike/base_model.py", line 193, in run_training 
    train_op = model.training(loss, learning_rate) 
    File "/home/ubuntu/GIT/IvyMike/ivymike/base_model.py", line 100, in training 
    train_op = optimizer.minimize(loss, global_step=global_step) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 190, in minimize 
    colocate_gradients_with_ops=colocate_gradients_with_ops) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 241, in compute_gradients 
    colocate_gradients_with_ops=colocate_gradients_with_ops) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gradients.py", line 481, in gradients 
    in_grads = _AsList(grad_fn(op, *out_grads)) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/array_grad.py", line 307, in _ReverseSequenceGrad 
    seq_lengths=seq_lengths), 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/gen_array_ops.py", line 1143, in reverse_sequence 
    batch_dim=batch_dim, name=name) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/op_def_library.py", line 655, in apply_op 
    op_def=op_def) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 2119, in create_op 
    set_shapes_for_outputs(ret) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.py", line 1586, in set_shapes_for_outputs 
    shapes = shape_func(op) 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/array_ops.py", line 1257, in _ReverseSequenceShape 
    (batch_dim, input_shape.ndims)) 
TypeError: %d format: a number is required, not NoneType 

何が問題になりましたか?

+0

ようこそStackOverflow!コードのデバッグを支援するために、質問を編集し、エラーを生成したソースコードを投稿してください。 – gariepy

+0

これは 'tf.reverse_sequence()'実装のバグです!私は[GitHubの問題](http://stackoverflow.com/questions/36480456/dynamic-rnn-and-array-ops-reverse-sequence-problems)を提出し、修正に取り組んでいます。 – mrry

+0

いくつかの理由で私はここに自分のコードを投稿することはできませんが、 'dynamic_rnn()'を使ってBLSTMの複数のレイヤーをスタックしようとするとこのバグが発生します(この関連リクエストを参照してください:https://github.com/tensorflow/tensorflow/issues/1779)。後方パスでは、最初に 'array_ops.reverse_sequence()'を使用して入力を反転してから、同じ関数を使用して出力を反転させました。また、BLSTMの間にフィードフォワードレイヤーを使用しました。 しかし、1つのBLSTMレイヤーではすべて問題ありません。 ありがとうございました! –

答えて

0

これはTensorFlowのメーターで修正されました。

関連する問題