pytorch预测之解决多次预测结果不一致问题
更新时间:2021年06月01日 08:40:15 作者:confusingbird
这篇文章主要介绍了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;这两行代码顺序不能颠倒

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Python调用C++,通过Pybind11制作Python接口
今天小编就为大家分享一篇关于Python调用C++,通过Pybind11制作Python接口,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧2018-10-10


最新评论