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

Faiza rashid

我正在训练一个面部表情(愤怒与快乐)模型。最后一个密集的输出层以前是1,但是当我预测图像时,其输出始终为1,准确度为64%。所以我将其更改为2 2输出。但是现在我收到此错误::

Epoch 1/15

---------------------------------------------------------------------------

ValueError                                Traceback (most recent call last)

<ipython-input-54-9c7272c38dcb> in <module>()
     11     epochs=epochs,
     12     validation_data = val_data_gen,
---> 13     validation_steps = validation_steps,
     14 
     15 )

10 frames

/usr/local/lib/python3.6/dist-packages/tensorflow/python/framework/func_graph.py in wrapper(*args, **kwargs)
    966           except Exception as e:  # pylint:disable=broad-except
    967             if hasattr(e, "ag_error_metadata"):
--> 968               raise e.ag_error_metadata.to_exception(e)
    969             else:
    970               raise

ValueError: in user code:

    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py:571 train_function  *
        outputs = self.distribute_strategy.run(
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/distribute/distribute_lib.py:951 run  **
        return self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/distribute/distribute_lib.py:2290 call_for_each_replica
        return self._call_for_each_replica(fn, args, kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/distribute/distribute_lib.py:2649 _call_for_each_replica
        return fn(*args, **kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py:533 train_step  **
        y, y_pred, sample_weight, regularization_losses=self.losses)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/compile_utils.py:205 __call__
        loss_value = loss_obj(y_t, y_p, sample_weight=sw)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/losses.py:143 __call__
        losses = self.call(y_true, y_pred)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/losses.py:246 call
        return self.fn(y_true, y_pred, **self._fn_kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/losses.py:1527 categorical_crossentropy
        return K.categorical_crossentropy(y_true, y_pred, from_logits=from_logits)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/backend.py:4561 categorical_crossentropy
        target.shape.assert_is_compatible_with(output.shape)
    /usr/local/lib/python3.6/dist-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, 2) are incompatible

相关代码为:

    model = Sequential([
    Conv2D(32,3, activation='relu', input_shape=(48,48,1)),
    BatchNormalization(),
    MaxPooling2D(pool_size=(3, 3)),
  
    Flatten(),
    Dense(512, activation='relu'),
    Dense(2,activation='softmax')
])
model.compile(optimizer='adam',
              loss='categorical_crossentropy',
              metrics=['accuracy'])


model.summary()

Model: "sequential_4"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
conv2d_6 (Conv2D)            (None, 46, 46, 32)        320       
_________________________________________________________________
batch_normalization_4 (Batch (None, 46, 46, 32)        128       
_________________________________________________________________
max_pooling2d_6 (MaxPooling2 (None, 15, 15, 32)        0         
_________________________________________________________________
flatten_4 (Flatten)          (None, 7200)              0         
_________________________________________________________________
dense_8 (Dense)              (None, 512)               3686912   
_________________________________________________________________
dense_9 (Dense)              (None, 2)                 1026      
=================================================================
Total params: 3,688,386
Trainable params: 3,688,322
Non-trainable params: 64
_________________________________________________________________


epochs = 15
steps_per_epoch = train_data_gen.n//train_data_gen.batch_size
validation_steps = val_data_gen.n//val_data_gen.batch_size



history = model.fit(
    x=train_data_gen,
    steps_per_epoch=steps_per_epoch,
    epochs=epochs,
    validation_data = val_data_gen,
    validation_steps = validation_steps,
    
)
麦克风

因为您的输出标签是二进制,所以将分类交叉熵更改为二进制交叉熵。也将Softmax更改为Sigmoid,因为Sigmoid是二进制数据的正确激活函数

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

ValueError:形状1和2不兼容

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

层顺序的输入0与预期的ndim = 3层(发现ndim = 2)不兼容。收到的完整图形:[无,1]

来自分类Dev

Tensorflow概率:ValueError:Tensor的形状(2,2)与提供的形状(2,)不兼容

来自分类Dev

与vgg16 keras的形状不匹配:预期的ndim = 4,找到的ndim = 2,接收到的形状[无,无]

来自分类Dev

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

来自分类Dev

python 3.x Keras ValueError:检查目标时出错:预期seq_input具有形状(无,2)但得到形状为(16,1)的数组

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

ValueError:lstm_17层的输入0与该层不兼容:预期ndim = 3,找到的ndim = 2。收到的完整图形:[无,128]

Related 相关文章

  1. 1

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

  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:形状1和2不兼容

  7. 7

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

  8. 8

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

  9. 9

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

  10. 10

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

  11. 11

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

  12. 12

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

  13. 13

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

  14. 14

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

  15. 15

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

  16. 16

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

  17. 17

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

  18. 18

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

  19. 19

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

  20. 20

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

  21. 21

    层顺序的输入0与预期的ndim = 3层(发现ndim = 2)不兼容。收到的完整图形:[无,1]

  22. 22

    Tensorflow概率:ValueError:Tensor的形状(2,2)与提供的形状(2,)不兼容

  23. 23

    与vgg16 keras的形状不匹配:预期的ndim = 4,找到的ndim = 2,接收到的形状[无,无]

  24. 24

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

  25. 25

    python 3.x Keras ValueError:检查目标时出错:预期seq_input具有形状(无,2)但得到形状为(16,1)的数组

  26. 26

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

  27. 27

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

  28. 28

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

  29. 29

    ValueError:lstm_17层的输入0与该层不兼容:预期ndim = 3,找到的ndim = 2。收到的完整图形:[无,128]

热门标签

归档