我有一个神经网络,我正在输入示例“X”和标签“Y”,它们的形状是:
X.shape = (10,10,2)Y.shape = (10,10,2)
模型的代码如下:
现在不知为何当我运行这段代码时,我得到了以下错误:
ValueError: Shapes (None, 10, 2) and (None, 20) are incompatible
我感到困惑,因为我输入的数据中,每个“X”和“Y”的示例形状都是(10, 2)。那么为什么它会说我传递了(None, 10, 2)和(None, 20)呢?
回答:
你的最后一层使用了linear
激活函数,而你选择了categorical_crossentropy
损失函数。你可以设置为
model.add(tf.keras.layers.Dense(20, activations='softmax'))....loss='categorical_crossentropy')
或者,
model.add(tf.keras.layers.Dense(20))....loss='mse')
另外,请检查你的数据形状,特别是标签(y
)。