【发布时间】:2021-12-10 07:38:43
【问题描述】:
我正在尝试使用 Simple RNN 来使用 Physionet 数据库预测帕金森的步态。我正在为 RNN 提供高度为 240、宽度为 16 像素的图像。我还使用模型检查点和监控验证准确性来保存最佳权重。在尝试 RNN 的输入形状时,我收到了该错误
ValueError: Input 0 of layer sequential_13 is incompatible with the layer: expected ndim=3, found ndim=4. Full shape received: (None, None, None, None)
RNN 模型:
model = Sequential()
model.add(SimpleRNN(24, kernel_initializer='glorot_uniform', input_shape=(64,240), return_sequences = True))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Flatten())
model.add(Dense(2))
model.add(Activation('softmax'))
opt = optimizers.RMSprop(learning_rate=0.001, decay=1e-6)
epoch=10
early_stopping = EarlyStopping(monitor='val_accuracy', patience=60, verbose=1, mode='auto')
checkpoint = ModelCheckpoint("model_parkinsons.h5",
monitor='val_accuracy', verbose=0, save_best_only=True,
save_weights_only=False, mode='auto', save_freq='epoch')
model.compile(loss='binary_crossentropy',
optimizer=opt,
metrics=['accuracy'])
批量大小:64
图片高度:240
a.shape
Output: (64, 16, 240, 1)
我尝试将输入形状输入为 a.shape[1:]
但我得到了预期的错误 3 维但得到了 4 维。
请帮我解决这个问题。
【问题讨论】:
标签: keras deep-learning neural-network recurrent-neural-network