Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.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
Python 在pyhton中运行keras模型时发生ValueError_Python_Keras_Valueerror - Fatal编程技术网

Python 在pyhton中运行keras模型时发生ValueError

Python 在pyhton中运行keras模型时发生ValueError,python,keras,valueerror,Python,Keras,Valueerror,我正在尝试用python运行下面提到的: #导入库 从keras.models导入顺序 从keras.layers导入稠密、Conv2D、MaxPool2D、展平 从keras.optimizers导入新加坡元 #模型细节 vgg19=顺序() 添加(Conv2D(input_shape=(224224,3),filters=64,kernel_size=(3,3),padding=“same”,activation=“relu”)) 添加(Conv2D(filters=64,kernel_si

我正在尝试用python运行下面提到的:

#导入库
从keras.models导入顺序
从keras.layers导入稠密、Conv2D、MaxPool2D、展平
从keras.optimizers导入新加坡元
#模型细节
vgg19=顺序()
添加(Conv2D(input_shape=(224224,3),filters=64,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=64,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(MaxPool2D(池大小=(2,2),步幅=(2,2)))
添加(Conv2D(filters=128,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=128,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(MaxPool2D(池大小=(2,2),步幅=(2,2)))
添加(Conv2D(filters=256,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=256,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=256,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(MaxPool2D(池大小=(2,2),步幅=(2,2)))
添加(Conv2D(filters=512,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=512,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=512,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(MaxPool2D(池大小=(2,2),步幅=(2,2)))
添加(Conv2D(filters=512,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=512,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(Conv2D(filters=512,kernel_size=(3,3),padding=“same”,activation=“relu”))
添加(MaxPool2D(池大小=(2,2),步幅=(2,2)))
vgg19.add(展平())
vgg19.添加(密集(单位=4096,激活=“relu”))
vgg19.添加(密集(单位=4096,激活=“relu”))
vgg19.添加(密度(单位=10,激活=“softmax”))
#准备数据集
从keras.dataset导入cifar10
从keras.utils导入到_category
(X,Y),(tsX,tsY)=cifar10.加载_数据()
#使用一个热编码
Y=到_分类(Y)
tsY=到_分类(tsY)
#将数据类型更改为float
X=X.astype('float32')
tsX=tsX.astype('float32')
#缩放X和tsX,使每个条目介于0和1之间
X=X/255.0
tsX=tsX/255.0
#训练
优化器=新加坡元(lr=0.001,动量=0.9)
编译(优化器=优化器,loss='classifical\u crossentropy',metrics=['accurity'])
history=vgg19.fit(X,Y,epochs=100,batch\u size=64,validation\u data=(tsX,tsY),verbose=0)
在训练模型后,我得到以下提到的
值错误

ValueError:layer dense_9的输入0与layer不兼容:输入形状的轴-1应具有值25088,但接收到带形状的输入(无,512)
请提出建议,如何修复输入形状,如果有人能对该问题进行简要解释,会更好。
提前谢谢

您可以使用
X.shape
检查X的形状。 它清楚地表明X的形状是(50000,32,32,3)

所以你的第一层应该是这样的:

vgg19=Sequential()
添加(Conv2D(input_shape=(32,32,3),filters=64,kernel_size=(3,3),padding=“same”,activation=“relu”))

CIFAR10的图像尺寸为32x32,而不是224x224。谢谢@Dr.Snoopy,该建议解决了问题,现在可以使用了。谢谢@Prakash Dahal,非常感谢您的帮助!模型通过改变这些参数的输入来工作。