Метод range класса Dataset
Метод range класса Dataset создает датасет,
элементами которого является последовательность целых чисел.
Первым параметром передается начало диапазона,
вторым - конец диапазона (не включается),
третьим - шаг. Метод удобен для генерации
числовых последовательностей без создания промежуточных массивов.
Синтаксис
tf.data.Dataset.range(start, [stop], [step], [output_type])
Пример
Давайте создадим датасет из чисел от 0 до 4:
import tensorflow as tf
ds = tf.data.Dataset.range(5)
for el in ds:
print(el.numpy())
Результат выполнения кода:
0
1
2
3
4
Пример
Давайте создадим датасет из чисел от 2 до 8:
import tensorflow as tf
ds = tf.data.Dataset.range(2, 8)
for el in ds:
print(el.numpy())
Результат выполнения кода:
2
3
4
5
6
7
Пример
Давайте создадим датасет с шагом 2:
import tensorflow as tf
ds = tf.data.Dataset.range(0, 10, 2)
for el in ds:
print(el.numpy())
Результат выполнения кода:
0
2
4
6
8
Пример
Давайте соберем элементы датасета в список с помощью метода as_numpy_iterator:
import tensorflow as tf
ds = tf.data.Dataset.range(3, 9, 3)
res = list(ds.as_numpy_iterator())
print(res)
Результат выполнения кода:
[3, 6]
Пример
Давайте создадим датасет с типом элементов int64:
import tensorflow as tf
ds = tf.data.Dataset.range(5, output_type=tf.int64)
print(ds.element_spec)
Результат выполнения кода:
TensorSpec(shape=(), dtype=tf.int64, name=None)
Смотрите также
-
класс
Dataset,
который представляет собой набор данных -
метод
from_tensor_slices,
который создает датасет из тензора -
метод
from_tensors,
который создает датасет из одного или нескольких тензоров -
метод
take,
который возвращает первые элементы датасета