Python Keras抛出形状错误,即使I';我给它正确的形状

Python Keras抛出形状错误,即使I';我给它正确的形状,python,numpy,keras,Python,Numpy,Keras,我有一个简单的条件VAE模型。在运行时,我向解码器输入噪声和标签 noise = np.random.normal(0, 1.0, size=(2,)) decoder.predict([noise,labels]) 然后我得到以下错误: ValueError:检查时出错:预期解码器\u噪声具有形状(2),但获得具有形状(1)的数组。 在图中,我还看到它需要一个(2,)数组,如下图所示 我是不是漏掉了什么明显的东西 注意:标签具有形状(4,),因此我不会意外地交换它们 您需要为每个标签提供

我有一个简单的条件VAE模型。在运行时,我向解码器输入噪声和标签

noise = np.random.normal(0, 1.0, size=(2,))  
decoder.predict([noise,labels])
然后我得到以下错误:

ValueError:检查时出错:预期解码器\u噪声具有形状(2),但获得具有形状(1)的数组。

在图中,我还看到它需要一个
(2,)
数组,如下图所示

我是不是漏掉了什么明显的东西

注意:
标签
具有形状
(4,)
,因此我不会意外地交换它们


您需要为每个标签提供一个2D噪声数组,而不仅仅是
(2,)
。在这种情况下,您的噪声应该具有
size=(4,2)
,因此对于每个样本,您都会得到
(2,)
,这是模型所期望的


第一个维度告诉我们样本的数量,标签是一个标量,所以你有
(4,)
,但噪音不是。因此,对于每个需要噪声的样本,因此
(4,2)

做标签。重塑(-1,2)或(2,-1)@Paddy不起作用。请提供模型和数据形状的代码。这很奇怪,因为如果在我将噪声输入解码器之前移除Keras和concat中的输入与标签的串联,它就可以正常工作。然而,现在我已经将标签和噪声分割为两个输入,模型崩溃了。