我是靠谱客的博主 多情帅哥,最近开发中收集的这篇文章主要介绍KeyError问题记录,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

数据集定义为

CelebA = {
    0: {'batch_size': 12, 'num_steps': 12, 'img_size': 64, 'batch_split': 2, 'gen_lr': 6e-5, 'disc_lr': 2e-4},
    int(200e3): {},

    'dataset_path': '/home/ubuntu541/yhj_lsp/nerf/data/pigan-data/celaba/img_align_celeba/*.jpg',
    'fov': 12,
    'ray_start': 0.88,
    'ray_end': 1.12,
    'fade_steps': 10000,
    'h_stddev': 0.3,
    'v_stddev': 0.155,
    'h_mean': math.pi*0.5,
    'v_mean': math.pi*0.5,
    'sample_dist': 'gaussian',
    'topk_interval': 2000,
    'topk_v': 0.6,
    'betas': (0, 0.9),
    'unique_lr': False,
    'weight_decay': 0,
    'r1_lambda': 0.2,
    'latent_dim': 256,
    'grad_clip': 10,
    'model': 'SPATIALSIRENBASELINE',
    'generator': 'ImplicitGenerator3d',
    'discriminator': 'CCSEncoderDiscriminator',
    'dataset': 'CelebA',
    'clamp_mode': 'relu',
    'z_dist': 'gaussian',
    'hierarchical_sample': True,
    'z_lambda': 0,
    'pos_lambda': 15,
    'last_back': False,
    'eval_last_back': True,
}

这里的坑是当使用如下的语句提取数字部分的信息时,我们会遇到’batch_size’是KeyError的情况

metadata = curriculums.extract_metadata(curriculum, discriminator.step)
torch.multiprocessing.spawn.ProcessRaisedException: 

-- Process 0 terminated with the following error:
Traceback (most recent call last):
  File "/home/ubuntu541/anaconda3/envs/pigan/lib/python3.8/site-packages/torch/multiprocessing/spawn.py", line 59, in _wrap
    fn(i, *args)
  File "/home/ubuntu541/yhj_lsp/nerf/pi-GAN-master(1)/pi-GAN-master/train.py", line 161, in train
    param_group['lr'] = metadata['gen_lr']
KeyError: 'gen_lr'

原因其实很简单,在epoch循环的时候,结尾要对step进行归零或者设置不同step的参数信息

for _ in range(opt.n_epochs):
	    if(discriminator.step == 199999):
	                discriminator.step = 0;
	            else:
	                discriminator.step += 1
	            if (generator.step == 199999):
	                generator.step = 0;
	            else:
	                discriminator.step += 1
	discriminator.epoch += 1
  	generator.epoch += 1

最后

以上就是多情帅哥为你收集整理的KeyError问题记录的全部内容,希望文章能够帮你解决KeyError问题记录所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部