是因为adam优化程序会自行更改学习率。 我收到一条错误消息:“尝试使用未初始化的值Adam_1 / lr” 我想使用ReduceLRonPlateau没有任何意义,因为Adam会自动更改学习率。无论如何我都更新了编码 更新: 代码:
from keras.optimizers import Adam
model.compile(optimizer='adam',loss='mse')
callback_reduce_lr=ReduceLROnPlateau(monitor='val_loss',
factor=0.1,
min_lr=1e-4,
patience=0,
verbose=1
)
model.fit(xTrain,yTrain,epochs=100,batch_size=10,validation_data=(xTest,yTest),verbose=2,callbacks=[callback_reduce_lr])
错误:///尝试使用未初始化的值Adam_1 / lr
我在某处读到在使用ReduceLROnPlateau时初始化adam不起作用,我也尝试过初始化权重,但是我遇到了同样的错误
答案 0 :(得分:0)
如问题评论中所述,keras的ReduceLROnPleteau,确实适用于其默认参数:
# keras' ReduceLROnPlateau callback default parameters:
from keras.callbacks import ReduceLROnPlateau
reduce_lr = ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=10,
verbose=0, mode='auto', min_delta=0.0001,
cooldown=0, min_lr=0)
我试图重新创建该错误,以尝试确定导致该错误的参数,但我没有。因此,我相信并非所有输入形状或模型都不会出现该错误。
但是,我可以肯定地说,ReduceLROnPlateau
与亚当兼容。