问题描述
假设有2个不同/分开的keras层,
rowSums(aMat > 4,na.rm = TRUE)
#[1] 8 7 8 7 4 3
的输出形状均为encoder_1 & encoder_2
。
现在,如何定义将(None,4096)
作为其输出形状的keras乘法层。
这和Kronecker产品一样吗?
如果不一致,请请说明如何实现两层Kronecker产品,分别命名为encoder_1和encoder_2?
解决方法
因此,在插入长度为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)
的张量。