2016-10-11 5 views
2

はサンプルです:[:、 - 1 ,:]テンソルのスライスを使用した後、テンソルフローオプティマイザを破棄すると、どのように修正する必要がありますか?ここ

import numpy as np 
import tensorflow as tf 
from tensorflow.python.ops import rnn, rnn_cell 


if __name__ == '__main__': 

    embs = tf.Variable(np.random.random((40,5)),dtype=tf.float32) 


    X = np.array(np.array(range(1,25)).reshape(4, 6)) 

    x0 = tf.placeholder(tf.int32, [None, None]) 

    x1 = tf.nn.embedding_lookup(embs, x0) 



    lstm = tf.nn.rnn_cell.BasicLSTMCell(5,state_is_tuple=True) 


    outputs, states = tf.nn.dynamic_rnn(lstm, x1, dtype=tf.float32,time_major = True) 

    cost = tf.reduce_mean(outputs[:,-1,:]) 

    optimizer = tf.train.AdagradOptimizer(learning_rate=0.12).minimize(cost) 
    with tf.Session() as sess: 
     sess.run(tf.initialize_all_variables()) 
     result3, opt = sess.run([outputs, optimizer],{x0:X}) 

は私が出力される出力のひとつのスライスを使用してコスト関数を取得します。私は、コードを実行すると、私は結果 Fは./tensorflow/core/framework/tensor.h:581]チェックに失敗しましたました:new_num_elementsは== NumElements()(0対20)

この問題を解決する方法は?単なるサンプルです。私は、LSTMによって計算された文の表現が別のLSTMに供給される階層的LSTMを実装するとき、この問題に遭遇しました。

+0

これはバグのようです。ただし、TensorFlow 0.11でコードを実行しようとすると、質問に記載されているエラーが発生しません。どのバージョンのTensorFlowを使用していますか? – mrry

+0

バージョンは0.10.0です。 –

答えて

関連する問題