2017-02-15 8 views
-1

Я отлаживаю код, который я еще не написал. Я хочу, чтобы распечатать state_below_ переменную, которая рассчитывается следующим образом:печать theano.tensor без представления о форме и типе тензора

state_below_ = tensor.dot(state_below*emb_dropout[1], tparams[pp(prefix, 'W')]) +\ 
     tparams[pp(prefix, 'b')] 

Когда я использую state_below_.eval(), я получаю

MissingInputError: ("An input of the graph, used to compute Reshape{1}(y_sampler, TensorConstant{(1,) of -1}), was not provided and not given a value.Use the Theano flag exception_verbosity='high',for more information on this error.", y_sampler)

ошибку. Как я могу напечатать это проклятое значение «state_below_»?

Спасибо,

ответ

1

При использовании чисто символической переменной, вы должны скомпилировать функцию с соответствующими входами и выходами. Затем вам нужно сделать вызов своей функции с постоянными значениями для соответствующих символических переменных. Иначе, если вы используете общие переменные, то, как вы написали, будет работать. Документация к function, shared variable

+0

Можете ли вы привести пример по моей проблеме? – yusuf

+0

например, у меня есть такой список: outs = [next_probs, next_sample, next_state]. Когда я говорю отпечатки, я получаю этот вывод: [Softmax.0, argmax, Elemwise {add, no_inplace} .0]. Как напечатать значение next_sample? – yusuf

+1

У вас есть символические переменные. Вы пытались скомпилировать «функцию»? Нравится, function = theano.function ([Список переменных Inpuy], [outs]) out = function (значения для ввода) – Sentient07