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

Класс RepeatVector

Слой RepeatVector принимает на вход тензор ранга 2 формы (batch_size, features) и повторяет его n раз вдоль новой оси, превращая в тензор ранга 3 формы (batch_size, n, features). Первым параметром слой принимает целое число n, которое задает количество повторений. Такой слой часто используется для подготовки вектора к подаче в рекуррентные слои, например, в архитектуре encoder-decoder.

Синтаксис

tf.keras.layers.RepeatVector(n, **kwargs)

Пример

Давайте создадим слой RepeatVector, который повторит входной вектор 3 раза:

import tensorflow as tf layer = tf.keras.layers.RepeatVector(3) t = tf.constant([[1, 2, 3, 4, 5]]) res = layer(t) print(res)

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

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

Пример

Давайте применим слой к батчу из двух векторов и повторим каждый из них 2 раза:

import tensorflow as tf layer = tf.keras.layers.RepeatVector(2) t = tf.constant([[1, 2, 3], [4, 5, 6]]) res = layer(t) print(res)

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

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

Пример

Давайте встроим слой RepeatVector в модель и посмотрим на форму выходного тензора:

import tensorflow as tf model = tf.keras.Sequential([ tf.keras.layers.Input(shape=(5,)), tf.keras.layers.RepeatVector(4) ]) t = tf.constant([[1, 2, 3, 4, 5]]) res = model(t) print(res.shape)

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

(1, 4, 5)

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

  • слой Reshape,
    который изменяет форму тензора без изменения данных
  • слой Permute,
    который переставляет оси тензора
  • слой TimeDistributed,
    который применяет слой к каждому временному шагу
  • слой LSTM,
    который обрабатывает последовательности с долгой краткосрочной памятью
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить