有一个训练有素的神经网络。需要在新数据集上重新训练它。
网络架构:
early_stop = EarlyStopping(monitor='val_acc', min_delta=0.001,
patience=3, verbose=1, mode='auto')
chkpt = ModelCheckpoint('architecture.hdf5',
monitor='val_loss',
verbose=1,
save_best_only=True,
mode='auto')
callbacks = [early_stop, chkpt]
model = Sequential()
model.add(Embedding(max_features, 32))
model.add(SpatialDropout1D(0.2))
model.add(LSTM(100, dropout=0.2, recurrent_dropout=0.2))
model.add(Dense(num_classes, activation="softmax"))
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
model.fit(x_train, y_train, batch_size=128, epochs=50,
validation_data=(x_test, y_test), verbose=1, callbacks=callbacks)
PS: 如何改进这个神经网络的架构?
从理论上讲,如果您只是从磁盘读取保存的模型并继续训练,一切都应该解决:
PS我不确定
learning rate优化器是否在模型保存期间被保存。一些优化器减少шаг обучения/realning rate以大步长开始梯度下降(为了更快的收敛)并在你工作时减少它,以免错过最小值(如果步长太大,梯度下降可能不会收敛)。检查先前训练和保存的模型 -learning rate保存并阅读load_model():在训练开始时
learning rate是1e-02