今天看啥  ›  专栏  ›  大数据与机器学习文摘

PyTorch + NumPy这么做会降低模型准确率,这是bug还是预期功能?

大数据与机器学习文摘  · 公众号  · 大数据  · 2021-04-12 11:50
近日,有用户在自己的项目中发现了一个微小的 bug,在 PyTorch 同时使用 NumPy 的随机数生成器和多进程数据加载会导致相同的扩充数据,只有专门设置 seed 才可以解决这个 bug,否则会降低模型的准确率。不过,有人认为这并不是一个 bug,而是预期功能,是「按预期工作的」。行内人都知道,机器学习(ML)代码中的 bug 很难修复,并且它们不会造成编译错误,而是悄悄地降低准确率。这些 bug 简直防不胜防。最近,一位专注于机器学习的用户遇到了一个非常熟悉的 bug,修复了之后性能有了大幅度提升。这是一个什么样的 bug 呢?根据用户的描述,bug 是这样的:除非你在 DataLoader 中使用 worker_init_fn 选项专门设置 seed,否则在 PyTorch 同时使用 NumPy 的随机数生成器和多进程数 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照