Real-ESRGAN
Real-ESRGAN copied to clipboard
有关于训练的一些疑惑
我看了您的train.md文件, 有些疑惑,为什么要先训练 Real-ESRNet 然后 训练 Real-ESRGAN. 其中 Real-ESRGAN中修改判别器为 UNet和SN;优化器改为adam;将原本的L1 loss 增加为 L1loss + vgg19权重为{0.1,0.1,1,1,1}的12345层作为纹理损失 + 加入gan loss。 请问为什么不直接训练 Real-ESRGAN ? 是因为直接训练 Real-ESRGAN 震荡比较厉害难以收敛,所以采用 先训练 Real-ESRNet 一次得到 已经收敛的模型,再训练一次进行参数调整吗
- 先训练Real-ESRNet是为了 获得一个gen更好的初始化模型给Real-ESRGAN。 这样能够稳定训练,也使得效果有一定的提升。这是较为普遍的做法
- 直接训练Real-ESRGAN也是可以的,训练更多时间,也可以达到类似效果。但考虑到稳定性和效果,大家一般都采用先pre-train 一个MSE/L1 loss训练的模型
@xinntao 请问两个阶段的训练iter/epoch分别设置多少呢?算力资源是怎样的?
先训练Real-ESRNet是为了 获得一个gen更好的初始化模型给Real-ESRGAN。 这样能够稳定训练,也使得效果有一定的提升。这是较为普遍的做法
- 直接训练Real-ESRGAN也是可以的,训练更多时间,也可以达到类似效果。但考虑到稳定性和效果,大家一般都采用先pre-train 一个MSE/L1 loss训练的模型
训练好Real-ESRNet后,怎么用这个模型去辅助训练Real-ESRGAN模型?