假设有 2 个不同/独立的 keras 层,
encoder_1 & encoder_2
两者的输出形状均为(None, 4096)
. 现在如何定义 keras 多层,它给出(None, 4096, 4096)
了它的输出形状。这和克罗内克产品一样吗?如果不一样,请展示如何实现名为 encoder_1 和 encoder_2 的 2 层的 Kronecker 产品?
问问题
158 次
1 回答
0
因此,在插入长度为 1 的尺寸后,您应该能够简单地使用 Keras 的Dot
层或方法来实现这一点:dot
import tensorflow as tf
from tensorflow.keras.layers import dot
encoder_1 = tf.expand_dims(encoder_1, axis=2)
encoder_2 = tf.expand_dims(encoder_2, axis=1)
outer = dot([encoder_1, encoder_2], axes=(2, 1))
outer
应该是一个张量的形状(None, 4096, 4096)
。
于 2020-09-21T10:30:29.973 回答