【发布时间】:2019-06-29 06:10:01
【问题描述】:
我对训练我的神经网络有疑问,所以我的第一个 epoch 花费的时间最多,例如现在第一个 epoch 大约需要 50 分钟,而随后的 epoch 只需要 2 分钟,为什么会这样?
如果是问题,我应该去哪里解决这个问题?
这是参考的型号代码:
model = Sequential()
model.add(Conv3D(2, (3,3,3), padding = 'same', input_shape= [num_of_frame,
img_rows,img_cols, img_channels] ))
model.add(Activation('relu'))
model.add(Conv3D(64, (3,3,3)))
model.add(Activation('relu'))
model.add(MaxPooling3D(pool_size=(2, 2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(32))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(nb_classes))
model.add(Activation('softmax'))
我使用 adam 作为优化器,批量大小为 30,在 Google Colab 上运行。
这是训练和验证的代码:
model.fit_generator(train_generator, steps_per_epoch=steps_per_epoch, epochs=num_epochs, verbose=1,
callbacks=callbacks_list, validation_data=val_generator,
validation_steps=validation_steps, class_weight=None, workers=1, initial_epoch=0)
【问题讨论】:
-
是否可以添加 Colab 链接?在上面的代码块中,一切看起来都很好。
-
您添加的代码是模型,而不是实际的训练过程。添加它。
标签: neural-network conv-neural-network