tf.compat.v1.data.experimental.make_batched_features_dataset
Возвращает Dataset словарей признаков из протобуферов Example.
tf.compat.v1.data.experimental.make_batched_features_dataset(
file_pattern,
batch_size,
features,
reader=None,
label_key=None,
reader_args=None,
num_epochs=None,
shuffle=True,
shuffle_buffer_size=10000,
shuffle_seed=None,
prefetch_buffer_size=None,
reader_num_threads=None,
parser_num_threads=None,
sloppy_ordering=False,
drop_final_batch=False
)
Если указан аргумент label_key, возвращает Dataset кортежей, состоящий из словарей признаков и метки.
Пример:
serialized_examples = [
features {
feature { key: "age" value { int64_list { value: [ 0 ] } } }
feature { key: "gender" value { bytes_list { value: [ "f" ] } } }
feature { key: "kws" value { bytes_list { value: [ "code", "art" ] } } }
},
features {
feature { key: "age" value { int64_list { value: [] } } }
feature { key: "gender" value { bytes_list { value: [ "f" ] } } }
feature { key: "kws" value { bytes_list { value: [ "sports" ] } } }
}
]
Можно использовать следующие аргументы:
features: {
"age": FixedLenFeature([], dtype=tf.int64, default_value=-1),
"gender": FixedLenFeature([], dtype=tf.string),
"kws": VarLenFeature(dtype=tf.string),
}
Ожидаемый результат:
{
"age": [[0], [-1]],
"gender": [["f"], ["f"]],
"kws": SparseTensor(
indices=[[0, 0], [0, 1], [1, 0]],
values=["code", "art", "sports"]
dense_shape=[2, 2]),
}
| Аргументы | |
|---|---|
file_pattern | Список файлов или шаблонов путей к файлам, содержащих записи Example. Правила формирования шаблонов см. в разделе tf.io.gfile.glob. |
batch_size | Целое число, задающее количество записей для объединения в один пакет. |
features | dict, сопоставляющий ключи признаков значениям FixedLenFeature или VarLenFeature. См. раздел tf.io.parse_example. |
reader | Функция или класс, который можно вызвать с тензором filenames и (необязательно) reader_args и который возвращает Dataset тензоров Example. По умолчанию используется tf.data.TFRecordDataset. |
label_key | (Необязательно) Строка, соответствующая ключу, под которым метки хранятся в tf.Examples. Если указана, должна быть одним из ключей features, в противном случае возникает ValueError. |
reader_args | Дополнительные аргументы, передаваемые классу чтения. |
num_epochs | Целое число, задающее количество проходов по набору данных. Если значение равно None, набор данных будет считываться бесконечно. По умолчанию — None. |
shuffle | Логическое значение, указывающее, нужно ли перемешивать входные данные. По умолчанию — True. |
shuffle_buffer_size | Размер буфера ShuffleDataset. Большая ёмкость обеспечивает лучшее перемешивание, но увеличивает потребление памяти и время запуска. |
shuffle_seed | Начальное значение генератора случайных чисел для перемешивания. |
prefetch_buffer_size | Количество пакетов признаков, которые нужно предварительно извлечь для повышения производительности. Рекомендуемое значение — количество пакетов, обрабатываемых за один шаг обучения. По умолчанию используется автоматическая настройка. |
reader_num_threads | Количество потоков для чтения записей Example. Если значение >1, результаты будут чередоваться. По умолчанию — 1. |
parser_num_threads | Количество потоков для преобразования тензоров Example в словарь тензоров Feature. По умолчанию — 2. |
sloppy_ordering | Если значение равно True, производительность чтения повысится за счёт недетерминированного порядка. Если значение равно False, порядок создаваемых элементов детерминирован до перемешивания (элементы по-прежнему перемешиваются, если shuffle=True. Обратите внимание: если указано начальное значение, порядок элементов после перемешивания будет детерминированным). По умолчанию — False. |
drop_final_batch | Если значение равно True и размер пакета не делит размер входного набора данных без остатка, последний пакет меньшего размера будет отброшен. По умолчанию — False. |
| Возвращаемое значение | |
|---|---|
Набор данных из элементов dict (или кортеж из элементов dict и метки). Каждый dict сопоставляет ключи признаков объектам Tensor или SparseTensor. |
| Вызывает исключение | |
|---|---|
TypeError | Если reader имеет неверный тип. |
ValueError | Если label_key не является одним из ключей features. |
© 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/data/experimental/make_batched_features_dataset