Spec-Zone.ru › TensorFlow

tf.distribute.experimental.partitioners.MinSizePartitioner

Партиционер, выделяющий минимальный размер для каждого шарда.

Наследует: Partitioner

tf.distribute.experimental.partitioners.MinSizePartitioner(
    min_shard_bytes=(256 << 10), max_shards=1, bytes_per_string=16
)

Используется в блокнотах

Используется в учебных материалах
  • Обучение с сервером параметров с помощью ParameterServerStrategy

Этот партиционер гарантирует, что размер каждого шарда будет не меньше min_shard_bytes, и старается выделить как можно больше шардов, то есть сделать размер каждого шарда как можно меньше. Максимальное количество таких шардов (верхняя граница) задаётся значением max_shards.

Примеры:

partitioner = MinSizePartitioner(min_shard_bytes=4, max_shards=2)
partitions = partitioner(tf.TensorShape([6, 1]), tf.float32)
[2, 1]
partitioner = MinSizePartitioner(min_shard_bytes=4, max_shards=10)
partitions = partitioner(tf.TensorShape([6, 1]), tf.float32)
[6, 1]

# use in ParameterServerStrategy
# strategy = tf.distribute.experimental.ParameterServerStrategy(
#   cluster_resolver=cluster_resolver, variable_partitioner=partitioner)
Аргументы
min_shard_bytes Минимальное количество байтов для каждого шарда. По умолчанию — 256K.
max_shards Верхняя граница количества шардов. По умолчанию — 1.
bytes_per_string Если значение разделения имеет тип string, задаёт оценку размера каждой строки.

Методы

__call__

Посмотреть исходный код

__call__(
    shape, dtype, axis=0
)

Разбивает заданный shape и возвращает результаты разбиения.

Примеры партиционера, выделяющего фиксированное количество шардов:

partitioner = FixedShardsPartitioner(num_shards=2)
partitions = partitioner(tf.TensorShape([10, 3], tf.float32), axis=0)
print(partitions) # [2, 0]
Аргументы
shape объект tf.TensorShape — форма, которую необходимо разбить.
dtype объект tf.dtypes.Dtype, указывающий тип значения разделения.
axis Ось, вдоль которой выполняется разбиение. По умолчанию: самая внешняя ось.
Возвращает
Список целых чисел, представляющих количество разделов по каждой оси, где i-е значение соответствует i-й оси.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/distribute/experimental/partitioners/MinSizePartitioner

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API