РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
480 of 824 menu

Метод map класса Dataset

Метод map класса Dataset применяет переданную функцию к каждому элементу набора данных. Первым параметром метод принимает функцию преобразования, которая получает один элемент датасета и возвращает преобразованный элемент. Вторым необязательным параметром можно указать количество параллельных вызовов num_parallel_calls. Метод возвращает новый объект Dataset, поэтому исходный набор данных не изменяется.

Синтаксис

dataset.map(map_func, [num_parallel_calls])

Пример

Давайте создадим датасет из тензора и применим функцию, умножающую каждый элемент на два:

import tensorflow as tf dataset = tf.data.Dataset.from_tensor_slices([1, 2, 3, 4, 5]) dataset = dataset.map(lambda x: x * 2) for element in dataset: print(element.numpy())

Результат выполнения кода:

2 4 6 8 10

Пример

Давайте применим функцию к датасету из двумерного тензора и посчитаем сумму элементов каждой строки:

import tensorflow as tf dataset = tf.data.Dataset.from_tensor_slices( [[1, 2, 3], [4, 5, 6]] ) dataset = dataset.map(lambda x: tf.reduce_sum(x)) for element in dataset: print(element.numpy())

Результат выполнения кода:

6 15

Пример

Давайте применим функцию, возвращающую кортеж из исходного элемента и его квадрата:

import tensorflow as tf dataset = tf.data.Dataset.from_tensor_slices([1, 2, 3, 4, 5]) dataset = dataset.map(lambda x: (x, x * x)) for element in dataset: print(element[0].numpy(), element[1].numpy())

Результат выполнения кода:

1 1 2 4 3 9 4 16 5 25

Пример

Давайте используем параметр num_parallel_calls для параллельной обработки элементов:

import tensorflow as tf dataset = tf.data.Dataset.from_tensor_slices([1, 2, 3, 4, 5]) dataset = dataset.map( lambda x: x + 10, num_parallel_calls=tf.data.AUTOTUNE ) for element in dataset: print(element.numpy())

Результат выполнения кода:

11 12 13 14 15

Смотрите также

  • класс Dataset,
    который представляет набор данных
  • метод filter,
    который фильтрует элементы датасета
  • метод batch,
    который объединяет элементы в батчи
  • метод from_tensor_slices,
    который создает датасет из тензора
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить