如下所示:
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)
实验结果:
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更改变量的值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。
注:相关教程知识阅读请移步到python教程频道。