tf.compat.v1.variable_axis_size_partitioner
Получает разделитель для VariableScope, который поддерживает размер сегментов ниже max_shard_bytes.
tf.compat.v1.variable_axis_size_partitioner(
max_shard_bytes, axis=0, bytes_per_string_element=16, max_shards=None
)
Этот разделитель разделяет Variable по одной оси, стараясь поддерживать максимальный размер сегмента ниже max_shard_bytes. На практике это не всегда возможно при разделении только по одной оси. В таком случае эта ось разделяется максимально возможно (то есть каждое измерение становится отдельным сегментом).
Если разделитель достигает ограничения max_shards, каждый сегмент может оказаться больше max_shard_bytes. По умолчанию max_shards равно None, и ограничение на количество сегментов не применяется.
Разумным значением для max_shard_bytes будет (64 << 20) - 1, то есть почти 64MB, чтобы не превышать ограничение protobuf на размер в байтах.
| Аргументы | |
|---|---|
max_shard_bytes | Максимальный допустимый размер любого сегмента. |
axis | Ось, по которой выполняется разбиение. По умолчанию: самая внешняя ось. |
bytes_per_string_element | Если Variable имеет тип string, этот параметр задаёт оценку размера каждого скалярного значения в Variable. |
max_shards | Максимальное количество создаваемых сегментов типа int; имеет приоритет над max_shard_bytes. |
| Возвращает | |
|---|---|
Функцию разбиения, которую можно использовать в качестве аргумента partitioner для variable_scope и get_variable. |
| Исключения | |
|---|---|
ValueError | Если какое-либо значение количества байтов не является положительным. |
© 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/compat/v1/variable_axis_size_partitioner