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

Класс Average

Класс Average относится к секции layer и выполняет поэлементное усреднение нескольких входных тензоров. Слой принимает список тензоров одинаковой формы и возвращает один тензор той же формы, каждый элемент которого равен среднему значению соответствующих элементов входных тензоров. Класс наследуется от Layer и поддерживает механизм Keras Functional API. Параметров у класса нет, все настройки задаются через имя слоя.

Синтаксис

tf.keras.layers.Average(**kwargs)

Пример

Давайте создадим слой Average и объединим два тензора:

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

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

tf.Tensor([3. 3. 3. 3. 3.], shape=(5,), dtype=float32)

Пример

Давайте объединим три тензора и посмотрим на среднее значение:

import tensorflow as tf a = tf.constant([1, 2, 3, 4, 5]) b = tf.constant([10, 20, 30, 40, 50]) c = tf.constant([100, 200, 300, 400, 500]) layer = tf.keras.layers.Average() res = layer([a, b, c]) print(res)

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

tf.Tensor([ 37. 74. 111. 148. 185.], shape=(5,), dtype=float32)

Пример

Давайте применим слой Average к двумерным тензорам:

import tensorflow as tf a = tf.constant([[1, 2, 3], [4, 5, 6]]) b = tf.constant([[10, 20, 30], [40, 50, 60]]) layer = tf.keras.layers.Average() res = layer([a, b]) print(res)

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

tf.Tensor( [[ 5.5 11. 16.5] [22. 27.5 33. ]], shape=(2, 3), dtype=float32)

Пример

Давайте используем слой Average внутри модели Keras для объединения выходов двух ветвей:

import tensorflow as tf input_a = tf.keras.Input(shape=(4,)) input_b = tf.keras.Input(shape=(4,)) dense_a = tf.keras.layers.Dense(3)(input_a) dense_b = tf.keras.layers.Dense(3)(input_b) merged = tf.keras.layers.Average()([dense_a, dense_b]) output = tf.keras.layers.Dense(1)(merged) model = tf.keras.Model(inputs=[input_a, input_b], outputs=output) print(model.output_shape)

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

(None, 1)

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

  • слой Add,
    который поэлементно складывает входные тензоры
  • слой Multiply,
    который поэлементно умножает входные тензоры
  • слой Maximum,
    который вычисляет поэлементный максимум входных тензоров
  • слой Concatenate,
    который объединяет тензоры по заданной оси
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить