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

Функция broadcast_to

Функция broadcast_to расширяет тензор до указанной формы. Первым параметром функция принимает исходный тензор, вторым - целевую форму в виде списка или кортежа. Функция выполняет механизм broadcasting, при котором размерности длины 1 растягиваются до нужного размера, а также добавляются новые ведущие оси. Данные при этом не копируются, а виртуально повторяются.

Синтаксис

tf.broadcast_to(input, shape, [name])

Пример

Давайте расширим одномерный тензор до двумерной формы:

import tensorflow as tf t = tf.constant([1, 2, 3]) res = tf.broadcast_to(t, [3, 3]) print(res)

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

tf.Tensor( [[1 2 3] [1 2 3] [1 2 3]], shape=(3, 3), dtype=int32)

Пример

Давайте расширим тензор с размерностью длины 1 до большей формы:

import tensorflow as tf t = tf.constant([[1], [2], [3]]) res = tf.broadcast_to(t, [3, 4]) print(res)

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

tf.Tensor( [[1 1 1 1] [2 2 2 2] [3 3 3 3]], shape=(3, 4), dtype=int32)

Пример

Давайте попробуем расширить тензор до несовместимой формы и получим ошибку:

import tensorflow as tf t = tf.constant([1, 2, 3]) res = tf.broadcast_to(t, [2, 3]) print(res)

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

InvalidArgumentError: Dimensions must be equal or one of them must be 1, but are 2 and 3

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

  • функцию tile,
    которая повторяет тензор заданное число раз
  • функцию reshape,
    которая изменяет форму тензора без изменения данных
  • функцию expand_dims,
    которая добавляет новую ось в тензор
  • функцию shape,
    которая возвращает форму тензора
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить