本站精选了一篇相关的编程文章,网友符文宣根据主题投稿了本篇教程内容,涉及到tensorflow、变量、实例、tensorflow更改变量的值方法相关内容,已被994网友关注,涉猎到的知识点内容可以在下方电子书获得。
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