xq141839 / DCSAU-Net

Elsevier-CIBM-2023: A deeper and more compact split-attention U-Net for medical image segmentation
https://www.sciencedirect.com/science/article/pii/S0010482523000914
Apache License 2.0
72 stars 16 forks source link

关于学习率的优化问题 #26

Closed xiexuxiang closed 7 months ago

xiexuxiang commented 8 months ago

亲爱的作者: 作者您好,我对您的DCSAU-Net非常感兴趣,我想复现一下DCSAU-Net,您论文里面的学习率的优化是使用ReduceLROnPlateau,我将train代码中的exp_lr_scheduler = lr_scheduler.StepLR(optimizer_ft, step_size=100, gamma=0.5)改成exp_lr_scheduler = lr_scheduler.ReduceLROnPlateau(optimizer_ft, patience=5, factor=0.1,min_lr=1e-6) 却出现了错误。 请问如果按论文中的方法复现,将学习率的优化改成ReduceLROnPlateau后,还要改动代码中的哪一部分呢。

xq141839 commented 7 months ago

还需要改训练部分的代码,要把

if phase == 'train':
    scheduler.step()

改为

if phase == 'valid':
    scheduler.step(epoch_loss)
xiexuxiang commented 7 months ago

好的好的 非常感谢作者 我看到了另一个问题提到了把代码改为:

if phase == 'valid': scheduler.step(epoch_acc)

还想请问一下epoch_acc和epoch_loss哪个效果更好一点呢

xq141839 commented 7 months ago

我是用epoch_loss,因为这个优化方法是按照loss的标准来的,应该是值越低越好。

xiexuxiang commented 7 months ago

好的 十分感谢作者!