论文思路想好很久了,代码基本能实现。
有一个点一直卡着我 ,我的 基本想法 是串联模型A和模型B,代码也基本实现了,但是有个问题一直得不到解决。
模型B加入后模型A的性能下降,即使模型A没有更新模型B的任何输入
进度就卡在这里,怎么也进行不下去了,和人讨论,上知乎提问提问没成功,老是叫我修改,原因是问题不明确,这就是别的平台讨厌之处,自己小站想写啥就写啥、小木虫提问,都没得到解决。
最后无意中验证了一个想法
随机种子没固定
一开始模型A的随机种子都固定了,我们想当然的认为模型B插入后,模型A的随机种子也固定,结果不是这样。
猜测原因(未经过验证):模型A规定了随机种子,模型B插入到模型A的前面使用了随机种子后,模型A就又变得随机了
所以我们把一下代码在两部分模型运行前都写了一遍。
SEED = 42
random.seed(SEED)
torch.manual_seed(SEED)
torch.cuda.manual_seed(SEED)
最后问题解决 。