变量简介
tensorflow变量用于表示程序处理的共享持久状态的推荐方法。
变量通过tf.variable进行创建和跟踪。tf.variable表示张量,对它执行运算可以改变其值。利用特定运算可以读取和修改此张量的值。
创建变量
要创建变量,请提供一个初始值。tf.variable与初始值的dtype相同。
my_tensor = tf.constant([[1.0,2.0],[3.0,4.0]])
my_variable = tf.Variable(my_tensor)
#变量可以是任何类型,就像张量一样
print("shape:",my_variable.shape)
print("dtype:",my_variable.dtype)
print("as numpy:",my_variable.numpy)
shape: (2, 2)
dtype: <dtype: 'float32'>
as numpy: <bound method BaseResourceVariable.numpy of <tf.Variable 'Variable:0' shape=(2, 2) dtype=float32, numpy=
array([[1., 2.],
[3., 4.]], dtype=float32)>>
大部分张量运算值变量上也可以按预期运行,不过变量无法重构形状。
print("a variable:",my_variable)
print("\nviewed as a tensor:",tf.convert_to_tensor(my_variable))
print("\nindex of highest value:",tf.argmax(my_variable))
a variable: <tf.Variable 'Variable:0' shape=(2, 2) dtype=float32, numpy=
array([[1., 2.],
[3., 4.]], dtype=float32)>
viewed as a tensor: tf.Tensor(
[[1. 2.]
[3. 4.]], shape=(2, 2), dtype=float32)
index of highest value: tf.Tensor([1 1], shape=(2,), dtype=int64)