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


Python tf.compat.v1.distribute.experimental.TPUStrategy用法及代码示例


TPU分销策略实施。

继承自:Strategy

用法

tf.compat.v1.distribute.experimental.TPUStrategy(
    tpu_cluster_resolver=None, steps_per_run=None, device_assignment=None
)

参数

  • tpu_cluster_resolver 一个 tf.distribute.cluster_resolver.TPUClusterResolver,它提供有关 TPU 集群的信息。
  • steps_per_run 返回主机之前在设备上运行的步骤数。请注意,这可以在性能、挂钩、指标、摘要等方掩码有 side-effects。此参数仅在与估计器或 keras 一起使用分发策略时使用。
  • device_assignment 可选 tf.tpu.experimental.DeviceAssignment 指定副本在 TPU 集群上的位置。目前仅支持在 TPU 集群中使用单核的用例。

属性

  • cluster_resolver 返回与此策略关联的集群解析器。

    一般来说,当使用multi-worker tf.distribute 策略如tf.distribute.experimental.MultiWorkerMirroredStrategytf.distribute.TPUStrategy() 时,有一个tf.distribute.cluster_resolver.ClusterResolver 与所使用的策略相关联,并且这样的实例由该属性返回。

    打算拥有关联tf.distribute.cluster_resolver.ClusterResolver 的策略必须设置相关属性,或覆盖此属性;否则,默认返回None。这些策略还应提供有关此属性返回的内容的信息。

    Single-worker 策略通常没有 tf.distribute.cluster_resolver.ClusterResolver ,在这些情况下,此属性将返回 None

    当用户需要访问集群规范、任务类型或任务 ID 等信息时,tf.distribute.cluster_resolver.ClusterResolver 可能很有用。例如,

    os.environ['TF_CONFIG'] = json.dumps({
      'cluster':{
          'worker':["localhost:12345", "localhost:23456"],
          'ps':["localhost:34567"]
      },
      'task':{'type':'worker', 'index':0}
    })
    
    # This implicitly uses TF_CONFIG for the cluster and current task info.
    strategy = tf.distribute.experimental.MultiWorkerMirroredStrategy()
    
    ...
    
    if strategy.cluster_resolver.task_type == 'worker':
      # Perform something that's only applicable on workers. Since we set this
      # as a worker above, this block will run on this particular instance.
    elif strategy.cluster_resolver.task_type == 'ps':
      # Perform something that's only applicable on parameter servers. Since we
      # set this as a worker above, this block will not run on this particular
      # instance.

    有关详细信息,请参阅 tf.distribute.cluster_resolver.ClusterResolver 的 API 文档字符串。

  • extended tf.distribute.StrategyExtended 与其他方法。
  • num_replicas_in_sync 返回聚合梯度的副本数。
  • steps_per_run 已弃用:改用 .extended.steps_per_run。

相关用法


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