pytorch预测之解决多次预测结果不一致问题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

pytorch预测之解决多次预测结果不⼀致问题
为什么多次预测结果不⼀致
1、检查是否在每次预测前使⽤
model.eval()
或者是
with torch.no_grad():
for ...
推荐下⾯的⽅法,上⾯的的⽅法计算梯度,但是并不反向传播,下⾯的⽅法既不计算梯度,也不反向传播,速度更快。

2、检查是否取消了所有的dropout
3、设置随机种⼦
def setup_seed(seed):
np.random.seed(seed)
random.seed(seed)
torch.manual_seed(seed) #cpu
torch.cuda.manual_seed_all(seed) #并⾏gpu
torch.backends.cudnn.deterministic = True #cpu/gpu结果⼀致
torch.backends.cudnn.benchmark = True #训练集变化不⼤时使训练加速
4、保证实例化模型前要将is_training置为false;这两⾏代码顺序不能颠倒
以上为个⼈经验,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。

相关文档
最新文档