当前位置: 首页 > 知识库问答 >
问题:

ValueError:形状(无,)和(无,24,24,5)不兼容

岑和风
2023-03-14

我正在尝试对血液的图像数据及其spo2值(血液中的氧气百分比)进行分类,spo2值有4类

X_train.shape => (8969, 224, 224, 3)
y_train.shape => (8969,)

模型的输出将是spo2的百分比

y_train.shape
>>> array([98, 98, 95, ..., 98, 95, 98])

模型架构

X_train = np.array(X_train)
y_train = np.array(y_train)

model = Sequential()
model.add(Conv2D(filters=64 , kernel_size=(3,3), activation='relu' , input_shape = (X_train.shape[1:])))
model.add(MaxPool2D(pool_size=(3,3)))
model.add(Conv2D(filters=32 , kernel_size=(3,3), activation='relu'))
model.add(MaxPool2D(pool_size=(3,3)))
model.add(Dense(units=512 , activation='relu'))  
model.add(Dense(units=128 , activation='relu'))  
model.add(Dense(units=4, activation='softmax')) 

model.compile(optimizer='adam' , loss='categorical_crossentropy' ,  metrics=(['accuracy']))
history = model.fit(X_train , y_train , epochs=5)

拟合模型时出现错误

ValueError: Shapes (None,) and (None, 24, 24, 4) are incompatible

共有1个答案

史英飙
2023-03-14

这可能不是实际问题,但当我删除卷积网络上的扁平化层时,我也遇到了类似的错误。您在第二个最大池化层和第一个密集层之间缺少一个Flatten()层。像这样编辑代码:

...
model.add(MaxPool2D(pool_size=(3,3)))
model.add(Flatten())
model.add(Dense(units=512 , activation='relu'))  
...

下面是关于平坦层的更多信息:“平坦”在Keras中的作用是什么?

 类似资料:
  • 问题内容: 我有一个列表,说temp_list具有以下属性: 现在,当我转换为numpy数组时, 我收到错误消息: 有人可以帮我吗? 问题答案: 列表中至少有一项不是三维的,或者其第二维或第三维与其他元素不匹配。如果仅第一维不匹配,则数组仍然匹配,但是作为单独的对象,不会尝试将它们协调为新的(四维)数组。下面是一些示例: 也就是说,冒犯元件的, 或(与是非负整数)。 那就是给你错误的原因。 您需要

  • 问题内容: 我是TensorFlow和机器学习的新手。我正在尝试将两个对象归类为杯子和Pendrive(jpeg图像)。我已经成功训练并导出了model.ckpt。现在,我正在尝试恢复保存的model.ckpt以进行预测。这是脚本: 当我运行上述脚本进行预测时,出现以下错误: 我究竟做错了什么?以及如何修复numpy数组的形状? 问题答案: 形状为。 您的输入占位符的形状为。 问题是您要为占位符提

  • 我是张量流和机器学习的新手。我正在尝试创建一个具有张量流的情感分析 NN。 我已经建立了我的体系结构,并试图训练模型,但我遇到了错误 ValueError:无法为具有形状'(?,100)'的张量'InputData/X: 0'提供形状(32,2)的值 我认为错误与我的输入“layer net=tflearn.input_data([None,100])”有关。我正在学习的教程建议使用这种输入形状,

  • 我正在尝试将我的ensorflow模型(2.0)转换为ensorflow lite格式。我的模型有两个输入层,如下所示: 然后,我在层上执行一些张量操作,并将模型保存如下(没有训练,因此没有可训练的参数,只有一些线性代数操作,我想移植到android) 我得到了我的tensorflow.h5模型,因此,当我尝试将其转换为tensorfflow lite时,我得到了以下错误: 我知道,在张量流1.x

  • 问题内容: 我正在使用python 2.7,并且正在尝试从1.00000000到3.0000000008的一些随机数据进行预测。我的阵列中大约有196个项目,但出现错误 我似乎无法独自解决此问题。任何帮助或相关文档的链接将不胜感激。 这是我正在使用的代码,会产生此错误 问题答案: 如果和的形状与最后一行的rhs中的第二项(即)的形状不同,则将出现这种类型的错误。要将数组添加到数组的元组中,它们都必

  • 我有一个由七个重叠的圆圈和椭圆组成的集群,我试图将它们组合成一个形状,但是当我运行时,我得到了错误: 以下是我到目前为止所写的内容: