如下所示:
from __future__ import print_function,divisionimport tensorflow as tf#create a Variablew=tf.Variable(initial_value=[[1,2],[3,4]],dtype=tf.float32)x=tf.Variable(initial_value=[[1,1],[1,1]],dtype=tf.float32,validate_shape=False)init_op=tf.global_variables_initializer()update=tf.assign(x,[[1,2],[1,2]])with tf.Session() as session: session.run(init_op) session.run(update) x=session.run(x) print(x)
實驗結果:
[[ 1. 2.] [ 1. 2.]]
tensorflow使用assign(variable,new_value)來更改變量的值,但是真正作用在garph中,必須要調用gpu或者cpu運行這個更新過程。
session.run(update)
tensorflow不支持直接對變量進行賦值更改
from __future__ import print_function,divisionimport tensorflow as tf#create a Variablex=tf.Variable(initial_value=[[1,1],[1,1]],dtype=tf.float32,validate_shape=False)x=[[1,3],[2,4]]init_op=tf.global_variables_initializer()update=tf.assign(x,[[1,2],[1,2]])with tf.Session() as session: session.run(init_op) session.run(update) print(session.run(x))
error:
"C:/Program Files/Anaconda3/python.exe" D:/pycharmprogram/tensorflow_learn/assign_learn/assign_learn.pyTraceback (most recent call last): File "D:/pycharmprogram/tensorflow_learn/assign_learn/assign_learn.py", line 8, in <module> update=tf.assign(x,[[1,2],[1,2]]) File "C:/Program Files/Anaconda3/lib/site-packages/tensorflow/python/ops/state_ops.py", line 271, in assign if ref.dtype._is_ref_dtype:AttributeError: 'list' object has no attribute 'dtype'Process finished with exit code 1
以上這篇tensorflow更改變量的值實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答