2016-07-28 5 views
4

Wie kann man einen Tensor in ein Numpy-Array konvertieren, ohne eval oder sess.run() zu verwenden?Tensorflow: Tensor in ein numpliges Array konvertieren OHNE .eval() oder sess.run()

Ich muss einen Tensor in ein Feed-Wörterbuch übergeben und ich habe bereits eine Sitzung ausgeführt.

+0

Stellen Sie sich einen Tensor als Platzhalter im Berechnungsdiagramm vor, er hat keinen Wert, daher können Sie ihn nicht einfach in ein Numpy-Array konvertieren. Sie können jedoch den Wert, der in die Berechnung fließt, mit eval oder run abfragen. Was genau willst du erreichen? Es könnte einen besseren Weg geben, es zu tun. –

Antwort

3

Die Tatsache, dass Sie sagen "bereits eine Sitzung läuft" impliziert ein Missverständnis dessen, was sess.run() tatsächlich tut.

Wenn Sie eine tf.Session() initiiert haben, sollten Sie in der Lage sein, einen Tensor mithilfe von sess.run() abzurufen. Wenn Sie eine Variable oder einen konstanten Tensor abrufen müssen, ist dies sehr einfach.

value = sess.run(tensor_to_retrieve) 

Wenn der Tensor das Ergebnis von Operationen an Platzhalter Tensoren ist, müssen Sie sie mit feed_dict in einen Pass zu spielen.

value = sess.run(tensor, feed_dict={input_placeholder: input_value}) 

Es gibt nichts, was Sie daran hindert, sess.run() mehr als einmal aufzurufen.

Verwandte Themen