我正在训练神经网络,我想降低训练时的学习率。
我目前正在使用keras提供的ReduceLROnPlateau
函数。但是到了耐心因素,它就停止了,不再继续训练。
我想降低学习率并保持网络培训。
这是我的代码。
optimizer=k.optimizers.Adam(learning_rate=1e-5)
model.compile(loss='categorical_crossentropy',
optimizer=optimizer,
metrics=['acc'])
learningRate=callbacks.callbacks.ReduceLROnPlateau(monitor='val_acc', verbose=1, mode='max',factor=0.2, min_lr=1e-8,patience=7)
model.fit_generator(generator=training_generator,
validation_data=validation_generator,
steps_per_epoch=1000,
epochs=30,
validation_steps=1000,
callbacks=[learningRate]
)
答案 0 :(得分:1)
您正在使用EarlyStopping
,它正在停止训练。
我想降低学习率并保持网络培训,但不知道该怎么做。
如果需要,请删除EarlyStopping
。