Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Keras和Python3.6:检查顺序模型的输入时出错_Python_Machine Learning_Neural Network_Keras_Deep Learning - Fatal编程技术网

Keras和Python3.6:检查顺序模型的输入时出错

Keras和Python3.6:检查顺序模型的输入时出错,python,machine-learning,neural-network,keras,deep-learning,Python,Machine Learning,Neural Network,Keras,Deep Learning,不知怎的,我在Keras图书馆里发现了一只非常奇怪的虫子 我的学习方法包括三层神经网络:输入层130517个单位(输入大小),隐藏层10000个,输出层2个单位 在编写代码期间,我运行了一个批处理学习(我使用了partial_fit函数),但代码反复抛出相同的错误: {ValueError}检查输入时出错:应为密集的\u 1\u输入 形状(130517,)但获得了形状为(1,)的数组 我再次检查了输入维度,发现它确实如我所想,有130517个维度 下面是调试时变量的图片,如您所见,np.arra

不知怎的,我在Keras图书馆里发现了一只非常奇怪的虫子

我的学习方法包括三层神经网络:输入层130517个单位(输入大小),隐藏层10000个,输出层2个单位

在编写代码期间,我运行了一个批处理学习(我使用了
partial_fit
函数),但代码反复抛出相同的错误:

{ValueError}检查输入时出错:应为密集的\u 1\u输入 形状(130517,)但获得了形状为(1,)的数组

我再次检查了输入维度,发现它确实如我所想,有130517个维度

下面是调试时变量的图片,如您所见,
np.array(X[0])
的形状是130517:

在任何情况下,我都附加了神经网络初始化代码和调用
部分拟合的代码

    def initClassifier(self):
       self.classifier.add(Dense(100000, input_dim=130517, activation='relu'))
       self.classifier.add(Dense(2, activation='softmax'))
       self.classifier.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])


    def partial_fit(self, X, y, classes):
        self.classifier.train_on_batch(np.array(X[0]), np.array(y))
有人有解决办法吗

这可能是Keras代码中的错误吗?

在培训中,Keras希望您的数据包含一个批量大小的维度。在您的情况下,这意味着数据的形状应为
(批次大小,130517)
。但是,您正在传递一个
np数组
(130517)
,这将导致您的错误。您可以按如下方式重塑数据以包含批次形状:


X\u重塑=X[0]。重塑(1,-1)
在培训中,Keras希望您的数据包括批量大小的维度。在您的情况下,这意味着数据的形状应为
(批次大小,130517)
。但是,您正在传递一个
np数组
(130517)
,这将导致您的错误。您可以按如下方式重塑数据以包含批次形状:


X\u重塑=X[0]。重塑(1,-1)

谢谢!我花了两个多小时试图解决这个问题谢谢!我花了两个多小时试图解决这个问题