tf.keras.layers.Average

TensorFlow 1 version View source on GitHub

Layer that averages a list of inputs element-wise.

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

It takes as input a list of tensors, all of the same shape, and returns a single tensor (also of the same shape).

Example:

x1 = np.ones((2, 2)) 
x2 = np.zeros((2, 2)) 
y = tf.keras.layers.Average()([x1, x2]) 
y.numpy().tolist() 
[[0.5, 0.5], [0.5, 0.5]] 

Usage in a functional model:

input1 = tf.keras.layers.Input(shape=(16,)) 
x1 = tf.keras.layers.Dense(8, activation='relu')(input1) 
input2 = tf.keras.layers.Input(shape=(32,)) 
x2 = tf.keras.layers.Dense(8, activation='relu')(input2) 
avg = tf.keras.layers.Average()([x1, x2]) 
out = tf.keras.layers.Dense(4)(avg) 
model = tf.keras.models.Model(inputs=[input1, input2], outputs=out) 

Raises:

  • ValueError: If there is a shape mismatch between the inputs and the shapes cannot be broadcasted to match.

Arguments:

  • **kwargs: standard layer keyword arguments.