tensorflow更改变量的值实例
如下所示:
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更改变量的值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
以上是 tensorflow更改变量的值实例 的全部内容, 来源链接: utcz.com/z/324224.html