【发布时间】:2021-02-09 18:11:41
【问题描述】:
我正在尝试参考 to 来训练 Arcface。
据我所知,Arcface 需要在大批量的 CASIA-webface 上进行 200 多次训练。
在 100 个 epoch 的训练中,我停止了一段时间的训练,因为我需要使用 GPU 来完成其他任务。并保存模型(Resnet)和边距的检查点。在停止之前,它的loss记录在0.3~1.0之间,训练准确率达到80~95%。
当我通过使用 load_sate 加载检查点文件来恢复 Arcface 训练时,处理第一批时似乎正常。但是突然损失急剧增加,准确率变得很低。
它的损失突然增加了。这怎么发生的?我没有其他办法,所以无论如何继续训练,但我认为损失并没有很好地减少,即使它是一个超过 100 个 epoch 的训练模型......
当我搜索类似的问题时,他们告诉问题是优化器没有保存(因为参考github页面没有保存优化器,我也是。是真的吗?
【问题讨论】:
-
可能是因为没有保存优化器状态。另外,你确定你不是从更高的学习率开始的吗?
-
感谢您的评论,我解决了。我参考的 github 代码将初始学习率值设置为 0.1,当我将其更改为较小的值时,准确性不会急剧下降。谢谢你的建议。 :) 下次我最好保存优化器..
标签: deep-learning pytorch face-recognition conv-neural-network arcface