“ ValueError:形状(无,1)和(无,6)不兼容”

爱德华多·纳里(Eduardo Nery)

我想对X射线扫描进行6种分类,代码有什么问题?

model = Sequential()

model.add(Conv2D(256, (3, 3), input_shape=X.shape[1:]))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Conv2D(256, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))

model.add(Flatten())  

model.add(Dense(64))

model.add(Dense(6))
model.add(Activation('softmax'))

model.compile(loss='categorical_crossentropy',
              optimizer='adam',
              metrics=['accuracy'])

model.fit(X, y, batch_size=32, epochs=3, validation_split=0.1)

输入的形状为:(50,50,1)

我应该移除其中一个MaxPooling图层吗?

我已经看到在这里也很好地发布了回溯,所以这里是:

Epoch 1/3
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
(...)
ValueError: in user code:

    C:\Python38\lib\site-packages\tensorflow\python\keras\engine\training.py:571 train_function  *
        outputs = self.distribute_strategy.run(
    C:\Python38\lib\site-packages\tensorflow\python\distribute\distribute_lib.py:951 run  **
        return self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs)
    C:\Python38\lib\site-packages\tensorflow\python\distribute\distribute_lib.py:2290 call_for_each_replica
        return self._call_for_each_replica(fn, args, kwargs)
    C:\Python38\lib\site-packages\tensorflow\python\distribute\distribute_lib.py:2649 _call_for_each_replica
        return fn(*args, **kwargs)
    C:\Python38\lib\site-packages\tensorflow\python\keras\engine\training.py:532 train_step  **
        loss = self.compiled_loss(
    C:\Python38\lib\site-packages\tensorflow\python\keras\engine\compile_utils.py:205 __call__
        loss_value = loss_obj(y_t, y_p, sample_weight=sw)
    C:\Python38\lib\site-packages\tensorflow\python\keras\losses.py:143 __call__
        losses = self.call(y_true, y_pred)
    C:\Python38\lib\site-packages\tensorflow\python\keras\losses.py:246 call
        return self.fn(y_true, y_pred, **self._fn_kwargs)
    C:\Python38\lib\site-packages\tensorflow\python\keras\losses.py:1527 categorical_crossentropy
        return K.categorical_crossentropy(y_true, y_pred, from_logits=from_logits)
    C:\Python38\lib\site-packages\tensorflow\python\keras\backend.py:4561 categorical_crossentropy
        target.shape.assert_is_compatible_with(output.shape)
    C:\Python38\lib\site-packages\tensorflow\python\framework\tensor_shape.py:1117 assert_is_compatible_with
        raise ValueError("Shapes %s and %s are incompatible" % (self, other))

    ValueError: Shapes (None, 1) and (None, 6) are incompatible
马克·塞里亚尼

为避免误解和可能的错误,建议您将目标从(586,1)调整为(586,)。你可以做y = y.ravel()

您只需简单地管理正确的损失

如果您具有一维整数编码目标,则可以使用sparse_categorical_crossentropy作为损失函数

X = np.random.randint(0,10, (1000,100))
y = np.random.randint(0,3, 1000)

model = Sequential([
    Dense(128, input_dim = 100),
    Dense(3, activation='softmax'),
])
model.summary()
model.compile(loss='sparse_categorical_crossentropy',optimizer='adam',metrics=['accuracy'])
history = model.fit(X, y, epochs=3)

否则,如果您对目标进行了一次热编码以具有2D形状(n_samples,n_class),则可以使用categorical_crossentropy

X = np.random.randint(0,10, (1000,100))
y = pd.get_dummies(np.random.randint(0,3, 1000)).values

model = Sequential([
    Dense(128, input_dim = 100),
    Dense(3, activation='softmax'),
])
model.summary()
model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy'])
history = model.fit(X, y, epochs=3)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ValueError:形状(无,1)和(无,2)不兼容

来自分类Dev

ValueError:形状(无,3)和(无,16)不兼容

来自分类Dev

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

来自分类Dev

五个分类的CNN:ValueError:形状(无,228、228、1)和(无,1)不兼容

来自分类Dev

Colab中的Tensorflow错误-ValueError:形状(无,1)和(无,10)不兼容

来自分类Dev

ValueError:形状(无,10)和(无,32,32,10)不兼容(Keras调谐器)

来自分类Dev

ValueError:形状1和2不兼容

来自分类Dev

tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

来自分类Dev

tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

来自分类Dev

tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

来自分类Dev

tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

来自分类Dev

“ ValueError:...与图层不兼容:输入形状的预期轴-1的值为8,但接收到具有形状的输入(无,7、169)”

来自分类Dev

ValueError:sequence_9层的输入0与该层不兼容::预期的min_ndim = 4,找到的ndim = 3。收到完整形状:[无,无,无]

来自分类Dev

ValueError:输入0与图层不兼容:预期形状=(无,48,187,621,64),找到形状=(48,187,621,64)

来自分类Dev

TensorFlow GradCAM-model.fit()-ValueError:形状(None,1)和(None,2)不兼容

来自分类Dev

ValueError:层顺序的输入0与层不兼容::预期的min_ndim = 4,找到的ndim = 2。收到完整的形状:[无,2584]

来自分类Dev

ValueError:形状()和(150,5)不兼容Tenosrflow

来自分类Dev

不兼容的类型:“整数”和“过程,无类型的指针或无类型的参数”

来自分类Dev

不兼容的类型:“整数”和“过程,无类型的指针或无类型的参数”

来自分类Dev

层 conv1d_1 的输入 0 与层不兼容:预期 ndim=3,发现 ndim=2。收到的完整形状:[无,200]

来自分类Dev

ValueError:检查目标时出错:预期 activation_6 具有形状(无,2)但得到形状为(5760,1)的数组

来自分类Dev

ValueError:连续图层_1的输入0与以下图层不兼容::预期的min_ndim = 4,找到的ndim = 3。收到完整的图形:[无,256、256]

来自分类Dev

ValueError:形状在LSTM模型中不兼容

来自分类Dev

形状(1,)和()在cond运算符上不兼容

来自分类Dev

如何在密集或展平的图层之后应用Conv1D:ValueError:形状(1、1、3)和(1、1)不兼容

来自分类Dev

TensorFlow错误:ValueError(“形状%s和%s不兼容”%(自身,其他))

来自分类Dev

X和y的形状不兼容

来自分类Dev

无符号字符数组与指针参数不兼容

来自分类Dev

无符号字符数组与指针参数不兼容

Related 相关文章

  1. 1

    ValueError:形状(无,1)和(无,2)不兼容

  2. 2

    ValueError:形状(无,3)和(无,16)不兼容

  3. 3

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

  4. 4

    五个分类的CNN:ValueError:形状(无,228、228、1)和(无,1)不兼容

  5. 5

    Colab中的Tensorflow错误-ValueError:形状(无,1)和(无,10)不兼容

  6. 6

    ValueError:形状(无,10)和(无,32,32,10)不兼容(Keras调谐器)

  7. 7

    ValueError:形状1和2不兼容

  8. 8

    tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

  9. 9

    tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

  10. 10

    tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

  11. 11

    tensorflow:模型是用形状(无,无,6)构造的,但是在形状不兼容的输入上被调用

  12. 12

    “ ValueError:...与图层不兼容:输入形状的预期轴-1的值为8,但接收到具有形状的输入(无,7、169)”

  13. 13

    ValueError:sequence_9层的输入0与该层不兼容::预期的min_ndim = 4,找到的ndim = 3。收到完整形状:[无,无,无]

  14. 14

    ValueError:输入0与图层不兼容:预期形状=(无,48,187,621,64),找到形状=(48,187,621,64)

  15. 15

    TensorFlow GradCAM-model.fit()-ValueError:形状(None,1)和(None,2)不兼容

  16. 16

    ValueError:层顺序的输入0与层不兼容::预期的min_ndim = 4,找到的ndim = 2。收到完整的形状:[无,2584]

  17. 17

    ValueError:形状()和(150,5)不兼容Tenosrflow

  18. 18

    不兼容的类型:“整数”和“过程,无类型的指针或无类型的参数”

  19. 19

    不兼容的类型:“整数”和“过程,无类型的指针或无类型的参数”

  20. 20

    层 conv1d_1 的输入 0 与层不兼容:预期 ndim=3,发现 ndim=2。收到的完整形状:[无,200]

  21. 21

    ValueError:检查目标时出错:预期 activation_6 具有形状(无,2)但得到形状为(5760,1)的数组

  22. 22

    ValueError:连续图层_1的输入0与以下图层不兼容::预期的min_ndim = 4,找到的ndim = 3。收到完整的图形:[无,256、256]

  23. 23

    ValueError:形状在LSTM模型中不兼容

  24. 24

    形状(1,)和()在cond运算符上不兼容

  25. 25

    如何在密集或展平的图层之后应用Conv1D:ValueError:形状(1、1、3)和(1、1)不兼容

  26. 26

    TensorFlow错误:ValueError(“形状%s和%s不兼容”%(自身,其他))

  27. 27

    X和y的形状不兼容

  28. 28

    无符号字符数组与指针参数不兼容

  29. 29

    无符号字符数组与指针参数不兼容

热门标签

归档