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