Open fingerk28 opened 1 year ago
Thank you for raising this question. The num_sample
parameter is primarily related to the number of steps (time_step
). When the number of steps is relatively small (e.g., time_step
= 4), a larger num_sample
is needed to ensure a relatively accurate estimation of FID. As for crossover_num
, its choice has a minimal impact on the final results. We typically opt for a value between 10 and 20 for crossover_num
.
Thanks for your reply.
Besides, I use sample_fid_dpm_solver.sh
to generate 10k images to compute FID, sFID and IS. (set timesteps as ""
, using uniform time steps).
However, the results are different from the table 7 in the paper. For example, the FID of my implementation is 25.00 but 14.93 in table7, where setting is step=4
, and with DDIM solver.
Do you know what causes the difference between my implementation and the table 7? (FID, sFID and IS are computed with link)
Steps | FID | sFID | IS |
---|---|---|---|
4 | 27.38 | 42.62 | 21.56 |
6 | 25.98 | 38.84 | 24.12 |
10 | 26.99 | 37.44 | 25.46 |
Steps | FID | sFID | IS |
---|---|---|---|
4 | 42.76 | 41.10 | 16.64 |
6 | 26.39 | 35.15 | 22.52 |
10 | 25.00 | 34.26 | 25.03 |
Thank you.
Here's my configuration for reference, thanks.
Namespace(C=4, H=512, W=512, cal_fid=True, ckpt='~/.cache/huggingface/hub/models--CompVis--stable-diffusion-v-1-4-original/blobs/fe4efff1e174c627256e44ec2991ba279b3816e364b49f9be2abc0b3ff3f8556', config='./configs/stable-diffusion/v1-inference_coco.yaml', data_dir='', ddim_eta=0.0, ddim_steps=10, dpm_solver=True, f=8, fixed_code=False, from_file=None, laion400m=False, n_iter=2, n_rows=0, n_samples=6, num_sample=10000, outdir='~/AutoDiffusion/outputs/uniform_step10_dpm', plms=False, precision='autocast', prompt='a painting of a virus monster playing guitar', save_npy=False, scale=7.5, seed=42, skip_grid=False, skip_save=False, timesteps='')
Why some hyperparameters in
search_dpm_solver.sh
andsearch_plms_solver.sh
are difference? For example, num_sample is 1000, 2000 respectively, and crossover_num is 10, 15 respectively. The differences in these settings are due to the use of different solvers or step sizes (4 or 10)?Thanks a lot.