Spec-Zone.ru › TensorFlow

tf.data.experimental.pad_to_cardinality

Дополняет набор данных фиктивными элементами до нужного размера.

Просмотреть псевдонимы

Псевдонимы совместимости для миграции

Подробнее см. в руководстве по миграции.

tf.compat.v1.data.experimental.pad_to_cardinality

tf.data.experimental.pad_to_cardinality(
    cardinality, mask_key='valid'
)

Набор данных, который нужно дополнить, должен иметь известный и конечный размер и содержать элементы-словари. Для различения реальных элементов и элементов-заполнителей будет добавлен ключ mask_key: у реальных элементов будет запись <mask_key>=True, а у элементов-заполнителей — запись <mask_key>=False.

Пример использования:

ds = tf.data.Dataset.from_tensor_slices({'a': [1, 2]})
ds = ds.apply(tf.data.experimental.pad_to_cardinality(3))
list(ds.as_numpy_iterator())
[{'a': 1, 'valid': True}, {'a': 2, 'valid': True}, {'a': 0, 'valid': False}]

Это может быть полезно, например, во время оценки, когда нежелательны неполные пакеты, но при этом важно не отбрасывать данные.

ds = ...
# Round up to the next full batch.
target_cardinality = -(-ds.cardinality() // batch_size) * batch_size
ds = ds.apply(tf.data.experimental.pad_to_cardinality(target_cardinality))
# Set `drop_remainder` so that batch shape will be known statically. No data
# will actually be dropped since the batch size divides the cardinality.
ds = ds.batch(batch_size, drop_remainder=True)
Аргументы
cardinality Размер, до которого нужно дополнить набор данных.
mask_key Ключ для определения реальных элементов и элементов-заполнителей.
Возвращает
Преобразование набора данных, которое можно применить с помощью Dataset.apply().

© 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/data/experimental/pad_to_cardinality

Spec-Zone.ru

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