解决了!
我正在使用带函数API的keras,我有一个张量X= (None,2)张量,我需要将它与Y= (None,7)张量连接起来,以获得(None,9)张量。问题是X和Y的第一个维度是未知的,所以我必须将X重复可变的次数,z,使其等于Y。我已经知道如何使用RepeatedVector对未知的z重复X,但这会添加额外的维度(None,None,2)。所以现在我需要一种方法将(None,None,2)展平成(None,2),这样我就可以将它们连接起来,留下一个可以放入密集层的对象(None,9)。
所以我尝试过的.
1- tf.squeeze(X),但这会删除所有维度(None,None)
2- tf.keras.layers.Reshape,但它不接受output_shape的无参数,因为y是变量
3- K.flatten,但这使其成为1维。
4-尝试向Y= (1,None,7)添加尺寸时产生奇怪的错误。
解决方案:
tf.reshape(X,shape=[tf.shape(X)*tf.shape(x)1,2])
我使用tf.shape()调用None维度,并将它们相乘。
发布于 2020-12-24 12:34:17
解决方案
tf.reshape(X,shape=[tf.shape(X)*tf.shape(x)1,2])
我使用tf.shape()调用None维度,并将它们相乘。
https://stackoverflow.com/questions/65432925
复制相似问题