tf.data.experimental.from_list
Создает Dataset, содержащий заданный список элементов.
tf.data.experimental.from_list(
elements, name=None
)
Используется в блокнотах
| Используется в руководствах |
|---|
Возвращенный набор данных будет выдавать элементы списка по одному. Функциональность идентична Dataset.from_tensor_slices, если элементы являются скалярными значениями, но отличается, если элементы имеют структуру. Рассмотрим следующий пример.
dataset = tf.data.experimental.from_list([(1, 'a'), (2, 'b'), (3, 'c')]) list(dataset.as_numpy_iterator()) [(1, b'a'), (2, b'b'), (3, b'c')]
Чтобы получить такой же результат с помощью from_tensor_slices, данные нужно реорганизовать:
dataset = tf.data.Dataset.from_tensor_slices(([1, 2, 3], ['a', 'b', 'c'])) list(dataset.as_numpy_iterator()) [(1, b'a'), (2, b'b'), (3, b'c')]
В отличие от from_tensor_slices, from_list поддерживает входные данные непрямоугольной формы:
dataset = tf.data.experimental.from_list([[1], [2, 3]]) list(dataset.as_numpy_iterator()) [array([1], dtype=int32), array([2, 3], dtype=int32)]
Для получения такого же результата с помощью from_tensor_slices необходимо использовать ragged-тензоры.
В некоторых случаях from_list может работать эффективнее, чем from_tensor_slices, поскольку исключает необходимость нарезать данные в каждой эпохе. Однако производительность также может быть ниже, поскольку данные хранятся в виде множества небольших тензоров, а не нескольких больших, как в from_tensor_slices. В целом, с точки зрения производительности, следует предпочесть from_list, если число элементов невелико (менее 1000).
| Аргументы | |
|---|---|
elements | Список элементов, компоненты которых имеют одинаковую вложенную структуру. |
name | (Необязательно.) Имя операции tf.data. |
| Возвращает | |
|---|---|
Dataset | Dataset типа elements. |
© 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/from_list