2016-05-23 23 views
0

Ich muss der Tensorflow-Variablen wie unten gezeigt Null zuweisen. Ist es möglich, das zu tun? Was soll ich machen?Wert der Variablen in Tensorflow zuweisen

layer = tf.nn.sigmoid(tf.add(tf.matmul(x, h), b)) 
layer[0] = 0 

In dem obigen Beispiel mag ich Null-Wert zu dem ersten Index der Variablen x durch Multiplikation Matrix und h Vektor berechnet einzustellen.

Antwort

2

Sie können es nicht direkt zuweisen, aber Sie können .assign() Operation verwenden, um es geschehen zu lassen, here is the documentation. Auch nach der Zuweisung müssen Sie den Vorgang mit .run() oder .eval() ausführen. Meiner Meinung nach, sollte dieser Code funktionieren:

layerOp = layer[0].assign(0) 
sess.run(layerOp) 

Bitte diese post Referenz finden.

+2

Nur um zu verdeutlichen: 'Schicht' in obigem ist ein' tf.Tensor' und nicht eine 'tf.Variable', daher ist die' assign() 'Methode nicht definiert. Der einfachste Weg, um das gewünschte Ergebnis zu erzielen, ist die Verwendung von 'tf.slice()' und 'tf.concat()', um das gewünschte Ergebnis zu erzielen. – mrry

Verwandte Themen