tf.assign( ref, value, validate_shape=None, use_locking=None, name=None )功能: 这个操作输出一个张量,它在赋值之后保持“REF”的新值。这使得更容易重置值时去使用链式操作。
例子: import tensorflow as tf
import numpy as np
A = tf.Variable(tf.ones([2,2]), dtype=tf.float32)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print("原始的A ")
print(sess.run(A))
sess.run(tf.assign(A,np.zeros([2,2])))
print("现在的A ")
print(sess.run(A))
输出: 原始的A
[[1. 1.]
[1. 1.]]
现在的A
[[0. 0.]
[0. 0.]]
参数解释:
ref: A mutable Tensor. Should be from a Variable node. May be uninitialized.
value: A Tensor. Must have the same type as ref. The value to be assigned to the variable.
validate_shape: An optional bool. Defaults to True. If true, the operation will validate that the shape of 'value' matches the shape of the Tensor being assigned to. If false, 'ref' will take on the shape of 'value'.
use_locking: An optional bool. Defaults to True. If True, the assignment will be protected by a lock; otherwise the behavior is undefined, but may exhibit less contention.