我使用卷积神经网络使用Keras和Tensorflow作为Anaconda Python的后端时遇到了问题。
在定义CNN和编译时,会发生错误:
def cnn_model():
model = Sequential()
model.add(Conv2D(32, (3, 3), padding='same',
input_shape=(3, 48, 48),
activation='relu'))
model.add(Conv2D(32, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Conv2D(64, (3, 3), padding='same',
activation='relu'))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Conv2D(128, (3, 3), padding='same',
activation='relu'))
model.add(Conv2D(128, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(512, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(NUM_CLASSES, activation='softmax'))
return model
我得到的错误是:
文件 " C:\用户\ Pandey的\ Anaconda3 \ lib中\站点包\ keras \发动机\ training.py&#34 ;, 第_ 113行,在_standardize_input_data中 '有形状' + str(data_shape))
ValueError:检查输入时出错:预期conv2d_10_input为 有4个维度,但得到了具有形状(0,1)的数组
我在Keras首先使用频道,并且仅在开始时将数据格式定义为频道。
感谢任何帮助。