ML 中的并行编程知识有多大用处?- reddit


在 AI/ML 世界中并行计算的知识有多大用处或适用性?
AI/ML世界中有模型并行和数据并行,当你使用 Tensorflow 或 PyTorch 时,你就会知道它们背后的场景。因此,在实现自己的数据加载器或模型训练器时,您可能会编写更好的代码。
如果您主要使用预先训练的模型,或者您的模型性能在单个 GPU 上看起来足够好,那么作为面向应用程序的从业者,学习并行编程没有太多价值。
但是,如果您正在构建大型模型或有兴趣加入构建大型模型的团队,那么学习分布式和并行编程可能比学习 ML 基础知识更重要。就训练大型模型而言,数据、模型和管道并行性是您应该了解的工具,但即便如此,如果您足够大,您如何设置大型基础设施,如何调试故障,如何弹性恢复?
在低延迟真正重要的环境中,想象一下实时搜索。您的操作是否经过优化以利用 GPU,它们是否融合?您是否花费大量时间等待同步或数据加载器?
考虑到知道如何执行上述操作,您对从事广告排名等业务关键型基础架构团队以及任何希望推动最先进技术的研究团队都很有用,因为让我们面对现实,小型模型似乎并不明显变得比更大的更好。
因此,再次学习分布式系统可能并不普遍有用,但在合适的大公司可能是 ML 中最赚钱的事情,顶级人员的收入超过 300-500K