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


Python tf.data.experimental.table_from_dataset用法及代码示例

返回基于给定数据集的查找表。

用法

tf.data.experimental.table_from_dataset(
    dataset=None, num_oov_buckets=0, vocab_size=None, default_value=None,
    hasher_spec=lookup_ops.FastHashSpec, key_dtype=tf.dtypes.string, name=None
)

参数

  • dataset 包含(键,值)对的数据集。
  • num_oov_buckets 词汇表外存储桶的数量。
  • vocab_size 词汇表中元素的数量(如果已知)。
  • default_value 用于词汇外特征值的值。默认为 -1。
  • hasher_spec HasherSpec 指定用于分配词汇外存储桶的散列函数。
  • key_dtype key 数据类型。
  • name 此操作的名称(可选)。

返回

  • 基于给定数据集的查找表。

抛出

  • ValueError 如果
    • dataset 不包含对
    • dataset 对中的第二项具有与 default_value 不兼容的 dtype
    • num_oov_buckets 为负数
    • vocab_size 不大于零
    • key_dtype 不是整数或字符串

此操作基于给定的 (key, value) 对数据集构造一个查找表。

如果 num_oov_buckets 大于零,则对词汇表外令牌的任何查找都将根据其哈希返回存储桶 ID。否则,它被分配 default_value 。存储桶 ID 范围为 [vocabulary size, vocabulary size + num_oov_buckets - 1]

示例用法:

keys = tf.data.Dataset.range(100)
values = tf.data.Dataset.range(100).map(
    lambda x:tf.strings.as_string(x * 2))
ds = tf.data.Dataset.zip((keys, values))
table = tf.data.experimental.table_from_dataset(
                              ds, default_value='n/a', key_dtype=tf.int64)
table.lookup(tf.constant([0, 1, 2], dtype=tf.int64)).numpy()
array([b'0', b'2', b'4'], dtype=object)

相关用法


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