当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.lookup.experimental.MutableHashTable用法及代码示例


一个通用的可变哈希表实现。

继承自:TrackableResource

用法

tf.lookup.experimental.MutableHashTable(
    key_dtype, value_dtype, default_value, name='MutableHashTable',
    checkpoint=True, experimental_is_anonymous=False
)

参数

  • key_dtype 关键张量的类型。
  • value_dtype 值张量的类型。
  • default_value 表中缺少键时使用的值。
  • name 操作的名称(可选)。
  • checkpoint 如果为 True,则表的内容将保存到检查点并从检查点恢复。如果检查点表的shared_name 为空,则使用表节点名称共享它。
  • experimental_is_anonymous 是否对表使用匿名模式(默认为 False)。在匿名模式下,表资源只能通过资源句柄访问。它不能通过名字来查找。当所有指向该资源的资源句柄都消失时,该资源将被自动删除。

抛出

  • ValueError 如果检查点为 True 且未指定名称。

属性

  • key_dtype 表键数据类型。
  • name 表的名称。
  • resource_handle 返回与此资源关联的资源句柄。
  • value_dtype 表值 dtype。

可以通过调用insert 方法插入数据,并通过调用remove 方法删除数据。它不支持通过 init 方法进行初始化。

MutableHashTable 在检查点和恢复操作期间需要额外的内存来创建临时键和值张量。

示例用法:

table = tf.lookup.experimental.MutableHashTable(key_dtype=tf.string,
                                                value_dtype=tf.int64,
                                                default_value=-1)
keys_tensor = tf.constant(['a', 'b', 'c'])
vals_tensor = tf.constant([7, 8, 9], dtype=tf.int64)
input_tensor = tf.constant(['a', 'f'])
table.insert(keys_tensor, vals_tensor)
table.lookup(input_tensor).numpy()
array([ 7, -1])
table.remove(tf.constant(['c']))
table.lookup(keys_tensor).numpy()
array([ 7, 8, -1])
sorted(table.export()[0].numpy())
[b'a', b'b']
sorted(table.export()[1].numpy())
[7, 8]

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.lookup.experimental.MutableHashTable。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。