TensorFlow中張量轉置操作tf.transpose用法
阿新 • • 發佈:2018-12-17
一、環境
TensorFlow API r1.12
CUDA 9.2 V9.2.148
cudnn64_7.dll
Python 3.6.3
Windows 10
二、官方說明
將“value”幅值給“ref”,該方法使得需要重置新值的鏈式操作非常簡便
tf.assign(
ref,
value,
validate_shape=None,
use_locking=None,
name=None
)
輸入:
(1)ref:可變的張量,一般通過tf.Variable()來定義,可以未被初始化
(2)value:賦值給“ref”的張量,必須和“ref”是同一型別
(3)validate_shape:可選布林型引數,預設為True,驗證“value”的形狀是否匹配“ref”的資料形狀;Flase時,“ref”將接受“value”的資料形狀
(4)use_locking:可選布林型引數,預設為True,幅值操作會受鎖定;False時,行為未定義,但可能會減少爭用
(5)name:可選引數,定義該操作的名稱
返回結果:
具有新賦給值的張量“ref”
三、例項
>>> v = tf.Variable([1,2,3], name="variable") >>> x = tf.constant([4,5,6]) >>> sum = tf.add(v,x) >>> v1 = tf.assign(v, sum) >>> init_op = tf.global_variables_initializer() >>> with tf.Session() as sess: ... sess.run(init_op) ... print(sess.run(v)) ... for _ in range(3): ... sess.run(v1) ... print(sess.run(v)) ... [1 2 3] array([5, 7, 9]) [5 7 9] array([ 9, 12, 15]) [ 9 12 15] array([13, 17, 21]) [13 17 21]