tensorflow: variable的值与variable.read_value()的值区别详解

时间:2021-08-01 23:22:43

问题

查看 tensorflow api manual 时,看到关于 variable.read_value() 的注解如图:

tensorflow: variable的值与variable.read_value()的值区别详解

那么在 tensorflow 中,variable的值 与 variable.read_value()的值 到底有何区别?

实验代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
# coding=utf-8
import tensorflow as tf
 
# Create a variable.
w = tf.Variable(initial_value=10., dtype=tf.float32)
 
sess = tf.InteractiveSession()
sess.run(tf.global_variables_initializer())
 
print '\nw.read_value() :\n', w.read_value(), '\n', w.read_value().eval()
print '\nw :\n', w, '\n', w.eval()
 
sess.close()

由打印结果可看出,

variable的值 与 variable.read_value()的值 之间的 区别 仅仅在于 tensor类型 的不一样;

但 eval() 后打印出的结果值是 一样的 。

?
1
2
3
4
5
6
7
w.read_value() :
Tensor("read:0", shape=(), dtype=float32)
10.0
 
w :
<tf.Variable 'Variable:0' shape=() dtype=float32_ref>
10.0

以上这篇tensorflow: variable的值与variable.read_value()的值区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/JNingWei/article/details/78162807