华域联盟 Python pytorch预测之解决多次预测结果不一致问题

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;这两行代码顺序不能颠倒

以上为个人经验,希望能给大家一个参考,也希望大家多多支持华域联盟。

您可能感兴趣的文章:

本文由 华域联盟 原创撰写:华域联盟 » pytorch预测之解决多次预测结果不一致问题

转载请保留出处和原文链接:https://www.cnhackhy.com/26455.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部