cswry / SeeSR

[CVPR2024] SeeSR: Towards Semantics-Aware Real-World Image Super-Resolution

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

about train data make

heart-du opened this issue · comments

hi,I want know how you make the seesr train data. about epoch and added face ratio.

Hello, the added face ratio is 1.

The reported results in this version of the paper were obtained by iterating for 100k iterations with a batch size of 32.

We have attempted to use larger batch sizes, a more extensive training dataset, and longer training time, all of which improve the final performance of the SeeSR model. We will update the results in the next version of the paper.

Thanks for your attention!

您好,我们正在follow你们的工作,有几个疑问,想确认一下,主要是数据和训练相关的;
1)关于SeeSR训练数据对的制作, 我看你们为了节省训练时间,提前制作退化数据,想知道你们把epoch设置为多少(代码中默认为1),理论上epoch越大,数据集的随机性越强;

2)原始数据集主要包含:DIV8K、DIV2K、Flick2k、OST,以及1w张ffhq图片,想知道在使用脚本制作数据集之前,是不是全部事先crop成512大小(这样万物数据集的8K和2k占比增多),因为如果没有crop成512的话,人脸的1w张数据占比过多(接近一半都是人脸),我这边训练,发现很难收敛,不知道你们具体的设置;

3)还有就是ffhq是采用的原始1024尺寸进行crop,还是直接resize成512尺寸的;

4)最后,有注意到,你们在训练时用的是gt来提取tag,lq来提取representation,这样做有什么考虑吗?为什么不全部跟推理保持一致,采用lq来提取tag呢;

问题有点多,主要还是觉得你们做的工作很好,想复现follow一下,如果能答复的话,那非常感谢。

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

我这里采用论文中的数据集,直接制作40个epoch的seesr训练集,训练100K iter,最终的指标,FID相比论文中差很多。

也许你有尝试训练DAPE的微调吗?它能够收敛吗?

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

Hello,in our

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

Hello, which stage you are referring to when you mention dataset synthesis? Is it during the training phase of DAPE or the training phase of ControlNet?

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

Hello,in our

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

Hello, which stage you are referring to when you mention dataset synthesis? Is it during the training phase of DAPE or the training phase of ControlNet?

I mean the trainging phase of ControlNet.

您好,我们正在follow你们的工作,有几个疑问,想确认一下,主要是数据和训练相关的; 1)关于SeeSR训练数据对的制作, 我看你们为了节省训练时间,提前制作退化数据,想知道你们把epoch设置为多少(代码中默认为1),理论上epoch越大,数据集的随机性越强;

2)原始数据集主要包含:DIV8K、DIV2K、Flick2k、OST,以及1w张ffhq图片,想知道在使用脚本制作数据集之前,是不是全部事先crop成512大小(这样万物数据集的8K和2k占比增多),因为如果没有crop成512的话,人脸的1w张数据占比过多(接近一半都是人脸),我这边训练,发现很难收敛,不知道你们具体的设置;

3)还有就是ffhq是采用的原始1024尺寸进行crop,还是直接resize成512尺寸的;

4)最后,有注意到,你们在训练时用的是gt来提取tag,lq来提取representation,这样做有什么考虑吗?为什么不全部跟推理保持一致,采用lq来提取tag呢;

问题有点多,主要还是觉得你们做的工作很好,想复现follow一下,如果能答复的话,那非常感谢。

你好,heart-du,
(1)我们在制作训练数据集的时候epoch设置为60
(2)我们设置的face ratio是1,你可以根据实际情况调整比例。
(3)对于FFHQ数据,我们论文中的实验是随机裁剪到512的,但我们后面发现随机resize到512至1024之间再随机crop512更合理。
(4)从训测一致性的角度来说,应该使用LQ的tag。我们为了方便就直接使用了GT的tag,这种方式没有发现明显的掉点,你可以尝试使用LQ tag训练,期待你的结果。

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

感谢回复,训练DAPE使用的数据集是coco_2017,训练时batchsize=32, lr=1e-4,测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词(一直训练了50k 迭代),从训练损失来看,模型也没有收敛,损失基本维持在l_feat≈0.25,l_logits≈0.5

Please refer to

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

Hello,in our

@cswry I got similar questions as heart-du about training data of SeeSR, especially the epoch of data synthesis and whether to randomly crop the images before data synthesis. Would it be possible for you to provide an answer? I would greatly appreciate your response. Thanks a lot!

Hello, which stage you are referring to when you mention dataset synthesis? Is it during the training phase of DAPE or the training phase of ControlNet?

I mean the trainging phase of ControlNet.

Please refer to this answer

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

感谢回复,训练DAPE使用的数据集是coco_2017,训练时batchsize=32, lr=1e-4,测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词(一直训练了50k 迭代),从训练损失来看,模型也没有收敛,损失基本维持在l_feat≈0.25,l_logits≈0.5

你使用的训练设置和我们基本一致。这可能是迭代次数的问题,我们微调了20K iter。你可以检查一下20K iter模型的表现吗?我建议你使用验证集来评测模型的degradation-aware能力,我们在论文中使用的测试集是coco2017-test。

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

感谢回复,训练DAPE使用的数据集是coco_2017,训练时batchsize=32, lr=1e-4,测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词(一直训练了50k 迭代),从训练损失来看,模型也没有收敛,损失基本维持在l_feat≈0.25,l_logits≈0.5

你使用的训练设置和我们基本一致。这可能是迭代次数的问题,我们微调了20K iter。你可以检查一下20K iter模型的表现吗?我建议你使用验证集来评测模型的degradation-aware能力,我们在论文中使用的测试集是coco2017-test。

请问在制作dape的训练数据集时您设置的batch_size和epoch是多少呢?

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

感谢回复,训练DAPE使用的数据集是coco_2017,训练时batchsize=32, lr=1e-4,测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词(一直训练了50k 迭代),从训练损失来看,模型也没有收敛,损失基本维持在l_feat≈0.25,l_logits≈0.5

你好,我们的DAPE是在14k次截止的

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

感谢回复,训练DAPE使用的数据集是coco_2017,训练时batchsize=32, lr=1e-4,测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词(一直训练了50k 迭代),从训练损失来看,模型也没有收敛,损失基本维持在l_feat≈0.25,l_logits≈0.5

你使用的训练设置和我们基本一致。这可能是迭代次数的问题,我们微调了20K iter。你可以检查一下20K iter模型的表现吗?我建议你使用验证集来评测模型的degradation-aware能力,我们在论文中使用的测试集是coco2017-test。

请问在制作dape的训练数据集时您设置的batch_size和epoch是多少呢?

batch_size=10
epoch=1

commented

您好,我们正在follow你们的工作,有几个疑问,想确认一下,主要是数据和训练相关的; 1)关于SeeSR训练数据对的制作, 我看你们为了节省训练时间,提前制作退化数据,想知道你们把epoch设置为多少(代码中默认为1),理论上epoch越大,数据集的随机性越强;
2)原始数据集主要包含:DIV8K、DIV2K、Flick2k、OST,以及1w张ffhq图片,想知道在使用脚本制作数据集之前,是不是全部事先crop成512大小(这样万物数据集的8K和2k占比增多),因为如果没有crop成512的话,人脸的1w张数据占比过多(接近一半都是人脸),我这边训练,发现很难收敛,不知道你们具体的设置;
3)还有就是ffhq是采用的原始1024尺寸进行crop,还是直接resize成512尺寸的;
4)最后,有注意到,你们在训练时用的是gt来提取tag,lq来提取representation,这样做有什么考虑吗?为什么不全部跟推理保持一致,采用lq来提取tag呢;
问题有点多,主要还是觉得你们做的工作很好,想复现follow一下,如果能答复的话,那非常感谢。

你好,heart-du, (1)我们在制作训练数据集的时候epoch设置为60 (2)我们设置的face ratio是1,你可以根据实际情况调整比例。 (3)对于FFHQ数据,我们论文中的实验是随机裁剪到512的,但我们后面发现随机resize到512至1024之间再随机crop512更合理。 (4)从训测一致性的角度来说,应该使用LQ的tag。我们为了方便就直接使用了GT的tag,这种方式没有发现明显的掉点,你可以尝试使用LQ tag训练,期待你的结果。

请问这里的face ratio指的是什么

commented

@cswry 我也对如何制作数据集有一些疑问,在复现时微调RAM模型,发现模型无法收敛,请问是数据集制作的问题还是微调过程中有一些技巧呢?如果能答复的话,那非常感谢。

你好,可以提供更详细的训练信息吗?比如使用什么数据集微调RAM,batch size大小,以及验证集的表现

感谢回复,训练DAPE使用的数据集是coco_2017,训练时batchsize=32, lr=1e-4,测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词(一直训练了50k 迭代),从训练损失来看,模型也没有收敛,损失基本维持在l_feat≈0.25,l_logits≈0.5

你使用的训练设置和我们基本一致。这可能是迭代次数的问题,我们微调了20K iter。你可以检查一下20K iter模型的表现吗?我建议你使用验证集来评测模型的degradation-aware能力,我们在论文中使用的测试集是coco2017-test。

他这里提到“测试时权重基本在几百次迭代后输出的promp就会变为null或固定的单词”,说明不是中止迭代次数的问题,而是训练早起就崩溃了,请问您有什么想啊吗

commented

@cswry , great work! I found it is hard to reproduce the results in your paper (according to this issue), there are some difference between training example and your paper. Could you please provide training scripts align with your paper? This should be contribute to community, thanks!

commented

您好,我们正在follow你们的工作,有几个疑问,想确认一下,主要是数据和训练相关的; 1)关于SeeSR训练数据对的制作, 我看你们为了节省训练时间,提前制作退化数据,想知道你们把epoch设置为多少(代码中默认为1),理论上epoch越大,数据集的随机性越强;

2)原始数据集主要包含:DIV8K、DIV2K、Flick2k、OST,以及1w张ffhq图片,想知道在使用脚本制作数据集之前,是不是全部事先crop成512大小(这样万物数据集的8K和2k占比增多),因为如果没有crop成512的话,人脸的1w张数据占比过多(接近一半都是人脸),我这边训练,发现很难收敛,不知道你们具体的设置;

3)还有就是ffhq是采用的原始1024尺寸进行crop,还是直接resize成512尺寸的;

4)最后,有注意到,你们在训练时用的是gt来提取tag,lq来提取representation,这样做有什么考虑吗?为什么不全部跟推理保持一致,采用lq来提取tag呢;

问题有点多,主要还是觉得你们做的工作很好,想复现follow一下,如果能答复的话,那非常感谢。

请问第二个问题你解决了吗?我也有相似的疑问,如果不事先crop的话,df2k divk8k这样的高清数据集最后占比会较低

512

这很奇怪,我们这里没有这样的观察。

@cswry , great work! I found it is hard to reproduce the results in your paper (according to this issue), there are some difference between training example and your paper. Could you please provide training scripts align with your paper? This should be contribute to community, thanks!

论文中训练DAPE的设置与github开源的脚本是一致的。如果你训练出现了问题,请详细描述你的情况,比如离线制作设置,训练数据集等。

您好,我们正在follow你们的工作,有几个疑问,想确认一下,主要是数据和训练相关的; 1)关于SeeSR训练数据对的制作, 我看你们为了节省训练时间,提前制作退化数据,想知道你们把epoch设置为多少(代码中默认为1),理论上epoch越大,数据集的随机性越强;
2)原始数据集主要包含:DIV8K、DIV2K、Flick2k、OST,以及1w张ffhq图片,想知道在使用脚本制作数据集之前,是不是全部事先crop成512大小(这样万物数据集的8K和2k占比增多),因为如果没有crop成512的话,人脸的1w张数据占比过多(接近一半都是人脸),我这边训练,发现很难收敛,不知道你们具体的设置;
3)还有就是ffhq是采用的原始1024尺寸进行crop,还是直接resize成512尺寸的;
4)最后,有注意到,你们在训练时用的是gt来提取tag,lq来提取representation,这样做有什么考虑吗?为什么不全部跟推理保持一致,采用lq来提取tag呢;
问题有点多,主要还是觉得你们做的工作很好,想复现follow一下,如果能答复的话,那非常感谢。

请问第二个问题你解决了吗?我也有相似的疑问,如果不事先crop的话,df2k divk8k这样的高清数据集最后占比会较低

这看起来是一个问题,你可以尝试降低人脸的比例。如果你通过调节训练数据中人脸数据的比例获得了更好的效果,可以报告给大家。