Machen Sie eine Liste und Anhängen, um es in TensorFlow
Ich bin neu TensorFlow. Ich bin nicht in der Lage zu verstehen, wie eine dynamische erstellen "pythonic" - Liste im TensorFlow. Im Grunde führe ich einige Berechnung auf einen tensor-Objekt (train_data[i]
) und hängen Sie es an eine "Liste" X
, die ich sein will, ein tensor mit Form (100,)
Möchte ich etwas wie das hier tun:
X = []
for i in range(100):
q = tf.log(train_data[i])
print(q) #Tensor("Log:0", shape=(), dtype=float32)
X.append(q)
Möchte ich X
ein Tensor mit Form (100,)
im Grunde ein Spalten-Vektor ist ein tensor Objekt. Wenn ich den code oben, ich habe stattdessen eine python-Liste von TensorObjects.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie konvertieren möchten
X
zu einer (100,) - tensor-man könnte hinzufügenX = tf.stack(X)
nach deiner for-Schleife:Dies ist ein nützliches Konstrukt, wo möchten Sie vielleicht zu
tf.unstack
einige tensor, loop über die sich ergebende Liste, und verwenden Sie danntf.stack
um wieder zu einem einzigen tensor.Ich denke, die wirkliche Antwort ist hier, dass müssen Sie ändern Ihre Art zu denken ein wenig. In Tensorflow definieren Sie zunächst eine rechnerische graph, und dann bewerten Sie mit Werten als Eingabe.
Für dein Beispiel: wenn X ist in der Tat ein Tensor mit Form (100,1), tf.log(X) würde am besten funktionieren.
Wenn Sie möchten, erstellen Sie eine dynamische Liste wie dein code suggeriert, es wäre besser, diese Liste zu erstellen, VOR der übergabe an die Grafik.
Lassen Sie mich wissen, ob das hilft!