tf.keras.layers.Multiply()
时间: 2024-01-08 21:42:13 浏览: 129
`tf.keras.layers.Multiply()` 是一个用于对两个张量进行逐元素相乘的层。它接受两个张量作为输入,并返回一个张量作为输出,输出张量的每个元素都是输入张量对应位置的元素相乘的结果。
例如,如果输入张量 A 的形状为 (batch_size, n) ,输入张量 B 的形状为 (batch_size, n),则输出张量 C 的形状也为 (batch_size, n),其中 C[i,j] = A[i,j] * B[i,j]。
以下是一个使用 `tf.keras.layers.Multiply()` 层的示例代码:
``` python
import tensorflow as tf
input1 = tf.keras.Input(shape=(4,))
input2 = tf.keras.Input(shape=(4,))
output = tf.keras.layers.Multiply()([input1, input2])
model = tf.keras.Model(inputs=[input1, input2], outputs=output)
# 模拟输入数据
x1 = tf.constant([[1, 2, 3, 4], [5, 6, 7, 8]], dtype=tf.float32)
x2 = tf.constant([[2, 4, 6, 8], [10, 12, 14, 16]], dtype=tf.float32)
# 输出结果
print(model.predict([x1, x2]))
```
在上面的代码中,我们定义了两个形状为 (batch_size, 4) 的输入张量,然后将它们传递给 `tf.keras.layers.Multiply()` 层进行相乘操作。最后,我们将输入数据传递给模型,调用 `predict()` 方法得到输出结果。
阅读全文