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

Дополнение формы в TensorFlow

Чтобы расширить тензор по краям, используют функцию pad. Она дописывает новые ячейки вокруг данных. Пара чисел на каждую ось задаёт, сколько элементов добавить слева и справа по этой оси. Здесь все новые ячейки заполняются одним числом, обычно нулём.

Создадим таблицу 2×2 и добавим по одному слою нулей со всех сторон. Выведем исходный тензор и результат:

import tensorflow as tf table = tf.constant([[1, 2], [3, 4]]) print(table) # выведет tf.Tensor([[1 2] [3 4]], shape=(2, 2), dtype=int32) bordered = tf.pad(table, [[1, 1], [1, 1]], constant_values=0) print(bordered) # выведет tf.Tensor([[0 0 0 0] [0 1 2 0] [0 3 4 0] [0 0 0 0]], shape=(4, 4), dtype=int32)

Внутренние числа остаются на месте, форма становится больше на два шага по каждой оси. То же правило работает и для одномерного ряда:

import tensorflow as tf row = tf.constant([5, 6, 7]) bordered = tf.pad(row, [[1, 1]], constant_values=0) print(bordered) # выведет tf.Tensor([0 5 6 7 0], shape=(5,), dtype=int32)

Соберите таблицу [[10, 20], [30, 40]]. Добавьте вокруг неё рамку из нулей шириной один элемент и выведите результат.

Соберите ряд [1, 2, 3]. Добавьте по одному нулю слева и справа и выведите результат.

Соберите таблицу [[5, 6]] из одной строки. Добавьте по одному нулю сверху и снизу и выведите форму результата.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить