2017-06-01 6 views
0

Ich habe 2D-Vektor in 3D-Matrizen verwandelt. Jetzt möchte ich kombinieren alle diese 3D Matrizen in 1 ganze 3D Matrix. Wie kann ich das machen?Tensorflow: Wie kann ich meine 3D Matrix als eine ganze Matrix kombinieren?

Ich habe die folgenden Möglichkeiten versucht, aber sind nicht in der Lage, es zu bekommen.

  1. np.stack
  2. tf.pack

Mein Code:

#I got 104 files 
for i in range(104): 
    X3D = tf.stack(X3D[i], X3D[i+1]) 

Antwort

0

Sie haben nicht das, was definiert 'kombinieren', sondern auf der Grundlage Ihrer Beispiele es macht keinen Sinn. Wenn Sie viele N-bewertete Tensoren kombinieren, erhalten Sie einen (N + 1) bewerteten Tensor. Um zu sehen, warum dies der Fall ist, betrachten Sie 1-dim, 2-dim Tensoren (Skalare und Vektoren).

Ab, wie die kombinieren, Ihr Code, die stack verwendet funktioniert:

import tensorflow as tf 
x1 = tf.random_normal((3, 3)) 
x2 = tf.random_normal((3, 3)) 

z = tf.stack([x1, x2]) 
with tf.Session() as session: 
     print session.run(z)