Keras:ValueError:层顺序的输入 0 与层不兼容:预期轴

时间:2021-05-11 08:46:13

标签: tensorflow keras

我正在尝试使用 Keras 构建神经网络,但出现错误:

ValueError: Input 0 of layer sequential is incompatible with the layer: expected axis -1 of input shape to have value 25168 but received input with shape (None, 34783)

我将模型定义为:

model = Sequential()
model.add(Dense(1024, input_dim = len(X), activation = 'relu'))
model.add(Dense(6, activation='softmax'))

这里,X 是使用 scikit-learn 的结果,它是 CountVectorizer()(经过训练后)如下:

X = count_vectorizer.transform(X).todense()

有没有办法解决这个问题?环顾四周,我发现我可能需要重塑数据,但我不知道如何以及在哪里。

1 个答案:

答案 0 :(得分:1)

您使用的样本维度为 input_dimlen(X)(与 X.shape[0] 相同)这是错误的。

Keras 期望输入特征的维数,在您的 2D 输入情况下,它是 X.shape[-1]