Датасет из тензоров в TensorFlow
Функция from_tensor_slices
строит набор данных из тензора:
первый срез по старшей оси
становится первым примером,
второй срез - вторым и так далее.
Тип Dataset удобен тем,
что его перебирают обычным
циклом, как список.
Создадим одномерный тензор и пройдём по нескольким элементам набора:
import tensorflow as tf
labels = tf.constant([10, 20, 30])
ds = tf.data.Dataset.from_tensor_slices(labels)
for item in ds:
print(item.numpy())
# выведет 10, 20 и 30 по строкам
Если передать кортеж из двух тензоров одинаковой длины, на каждом шаге цикла получим пару значений:
import tensorflow as tf
x = tf.constant([1, 2, 3])
y = tf.constant([10, 20, 30])
ds = tf.data.Dataset.from_tensor_slices((x, y))
for a, b in ds:
print(a.numpy(), b.numpy())
# выведет 1 10, 2 20 и 3 30 по строкам
Соберите ряд отметок [5, 15, 25]
в набор и выведите каждое
значение на отдельной строке.
Создайте два ряда [1, 2]
и [100, 200], объедините
их в набор пар и выведите
оба числа в каждой паре.
Из ряда [7, 8, 9, 10]
сделайте набор и выведите
только первые два значения
циклом.