我阅读了有关此主题的所有其他答案,但我的用例略有不同。
我有一个numpy阵形(800,128,1)。 800个元素中的每个元素都存储一个word2vec嵌入形状(128,1)。现在我想将批量大小为64的输入作为输入发送到Keras模型,第一层作为输入层。我收到以下错误:
expected party to have 2 dimensions, but got array with shape (800, 128, 1)
我知道输入层需要2个维度,但哪两个?或者我应该将自己的输入形状指定为三维?
输入层目前是这样的:
Input(shape = (embedding_size, ), name = 'party')
输入的形状是(embedding_size,)
,其中embedding_size
可能是128.所以输入预计是一个形状(batch_size, embedding_size)
,而不是(batch_size, embedding_size, 1)
。您需要重新整形数组以省略大小为1的最后一个维度。