Класс Add
Класс Add выполняет поэлементное сложение
списка входных тензоров. Слой принимает на вход
список тензоров одинаковой формы и возвращает
один тензор, каждый элемент которого равен сумме
соответствующих элементов входных тензоров.
Слой не имеет настраиваемых параметров и
применяется к данным при вызове.
Синтаксис
tf.keras.layers.Add(**kwargs)
Пример
Давайте сложим два тензора поэлементно:
import tensorflow as tf
layer = tf.keras.layers.Add()
t1 = tf.constant([1, 2, 3, 4, 5])
t2 = tf.constant([5, 4, 3, 2, 1])
res = layer([t1, t2])
print(res)
Результат выполнения кода:
tf.Tensor([6 6 6 6 6], shape=(5,), dtype=int32)
Пример
Давайте сложим три тензора одновременно:
<+python+>
import tensorflow as tf
layer = tf.keras.layers.Add()
t1 = tf.constant([1, 2, 3, 4, 5])
t2 = tf.constant([10, 20, 30, 40, 50])
t3 = tf.constant([100, 200, 300, 400, 500])
res = layer([t1, t2, t3])
print(res)
<-python+>
Результат выполнения кода:
tf.Tensor([111 222 333 444 555], shape=(5,), dtype=int32)
Пример
Давайте сложим двумерные тензоры:
import tensorflow as tf
layer = tf.keras.layers.Add()
t1 = tf.constant([[1, 2, 3], [4, 5, 6]])
t2 = tf.constant([[6, 5, 4], [3, 2, 1]])
res = layer([t1, t2])
print(res)
Результат выполнения кода:
tf.Tensor(
[[7 7 7]
[7 7 7]], shape=(2, 3), dtype=int32)
Пример
Давайте используем слой Add внутри модели:
import tensorflow as tf
input1 = tf.keras.Input(shape=(5,))
input2 = tf.keras.Input(shape=(5,))
output = tf.keras.layers.Add()([input1, input2])
model = tf.keras.Model(inputs=[input1, input2], outputs=output)
print(model.output_shape)
Результат выполнения кода:
(None, 5)
Смотрите также
-
класс
Subtract,
который выполняет поэлементное вычитание тензоров -
класс
Multiply,
который выполняет поэлементное умножение тензоров -
класс
Average,
который вычисляет среднее значение тензоров -
класс
Concatenate,
который объединяет тензоры по заданной оси