如下所示:
from __future__ import print_function,division
import tensorflow as tf
#create a Variable
w=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,division
import tensorflow as tf
#create a Variable
x=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.py
Traceback (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更改变量的值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。