当我使用 dtype = tf.float32 时,
import tensorflow as tf
z = tf.Variable(tf.ones(5, dtype=tf.float32), name='z')
init = tf.global_variables_initializer()
with tf.Session() as session:
session.run(init)
print("z=" , session.run(z))
for i in range(5):
z = z +1
print(session.run(z))
我得到了这样的结果:
('z=', array([0., 0., 0., 0., 0.], dtype=float32))
[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]
但是,当我使用 dtype = tf.int32 时,
z = tf.Variable(tf.ones(5, dtype=tf.int32), name='z')
我得到了结果:
('z=', array([1, 1, 1, 1, 1], dtype=int32))
[2 2 2 2 2]
[3 3 3 3 3]
[4 4 4 4 4]
[5 5 5 5 5]
[6 6 6 6 6]
使用 tf.float32 时,你能帮我解释为什么它看起来不正确吗?