用法
ref()
返回此变量的可散列引用对象。
此 API 的主要用例是将变量放入集合/字典中。我们不能将变量放在集合/字典中,因为从 Tensorflow 2.0 开始,variable.__hash__()
不再可用。
以下将引发从 2.0 开始的异常
x = tf.Variable(5)
y = tf.Variable(10)
z = tf.Variable(10)
variable_set = {x, y, z}
Traceback (most recent call last):
TypeError:Variable is unhashable. Instead, use tensor.ref() as the key.
variable_dict = {x:'five', y:'ten'}
Traceback (most recent call last):
TypeError:Variable is unhashable. Instead, use tensor.ref() as the key.
相反,我们可以使用 variable.ref()
。
variable_set = {x.ref(), y.ref(), z.ref()}
x.ref() in variable_set
True
variable_dict = {x.ref():'five', y.ref():'ten', z.ref():'ten'}
variable_dict[y.ref()]
'ten'
此外,引用对象提供了返回原始变量的.deref()
函数。
x = tf.Variable(5)
x.ref().deref()
<tf.Variable 'Variable:0' shape=() dtype=int32, numpy=5>
相关用法
- Python tf.Variable.__lt__用法及代码示例
- Python tf.Variable.__pow__用法及代码示例
- Python tf.Variable.__le__用法及代码示例
- Python tf.Variable.initialized_value用法及代码示例
- Python tf.Variable.__matmul__用法及代码示例
- Python tf.Variable.__getitem__用法及代码示例
- Python tf.Variable.load用法及代码示例
- Python tf.Variable.__gt__用法及代码示例
- Python tf.Variable.__rpow__用法及代码示例
- Python tf.Variable.__abs__用法及代码示例
- Python tf.Variable.scatter_nd_add用法及代码示例
- Python tf.Variable.eval用法及代码示例
- Python tf.Variable.scatter_nd_sub用法及代码示例
- Python tf.Variable.__sub__用法及代码示例
- Python tf.Variable.__rmatmul__用法及代码示例
- Python tf.Variable.__rsub__用法及代码示例
- Python tf.Variable.scatter_nd_update用法及代码示例
- Python tf.Variable.__ge__用法及代码示例
- Python tf.Variable用法及代码示例
- Python tf.compat.v1.distributions.Multinomial.stddev用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.Variable.ref。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。