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


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

向 tf.data 服务注册数据集。

用法

tf.data.experimental.service.register_dataset(
    service, dataset, compression='AUTO'
)

参数

  • service 指示如何连接到 tf.data 服务的字符串或元组。如果它是一个字符串,它应该采用 [<protocol>://]<address> 格式,其中 <address> 标识调度程序地址,并且可以选择使用 <protocol> 来覆盖要使用的默认协议。如果它是一个元组,它应该是(协议,地址)。
  • dataset A tf.data.Dataset 用于注册 tf.data 服务。
  • compression (可选。)如何在通过网络传输数据集元素之前对其进行压缩。 "AUTO" 将如何压缩的决定留给 tf.data 服务运行时。 None 表示不压缩。

返回

  • 已注册数据集 id 的标量 int64 张量。

register_dataset 向 tf.data 服务注册数据集,以便以后可以使用 tf.data.experimental.service.from_dataset_id 创建数据集。当数据集由一个进程注册,然后在另一个进程中使用时,这很有用。当同一个进程同时注册和读取数据集时,使用 tf.data.experimental.service.distribute 会更简单。

如果数据集已经注册到 tf.data 服务,register_dataset 返回已经注册的数据集的 id。

dispatcher = tf.data.experimental.service.DispatchServer()
dispatcher_address = dispatcher.target.split("://")[1]
worker = tf.data.experimental.service.WorkerServer(
    tf.data.experimental.service.WorkerConfig(
        dispatcher_address=dispatcher_address))
dataset = tf.data.Dataset.range(10)
dataset_id = tf.data.experimental.service.register_dataset(
    dispatcher.target, dataset)
dataset = tf.data.experimental.service.from_dataset_id(
    processing_mode="parallel_epochs",
    service=dispatcher.target,
    dataset_id=dataset_id,
    element_spec=dataset.element_spec)
print(list(dataset.as_numpy_iterator()))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

相关用法


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