numfy配列を取得するためにeval()
を実行せずにTensorを反復可能にする方法はありますか?iterable取得Tensor without evalを実行
split()
を使ってテンソルの2つの部分を反復しようとしていますが、それは私のニューラルネットワークの隠れた層の構造内で起こるので、セッションを開始する前に起こる必要があります。
import tensorflow as tf
x = tf.placeholder('float', [None, nbits])
layer = [x]
for i in range(1,numbits):
layer.append(tf.add(tf.matmul(weights[i-1], layer[i-1]), biases[i-1]))
aes, bes = tf.split(1, 2, layer[-1])
if i%2 == 1:
for am, a, b in zip(add_layer, aes, bes):
layer.append(am.ex(a, b))
問題はlayer[-1]
この時点でtf.placeholder
ので、aes
とbes
は両方テンソルであり、私はzip()
でそれらを反復処理することができないということです。
すべてのアイデアをいただければ幸いです。
@Peter Hawkins、ありがとう。私はTensorflowのビルトインを掘るよりも簡単な方法はないだろうと恐れていました。私がやったことは、 'tf.slice()'を使って個々の要素に分割することでした。これは私が予想していたよりも苦痛が少なかったのです。 – Vendea