谷歌早期在机器学习模型架构、训练、模型优化方面都具有很大优势

谷歌早期在机器学习模型架构、训练、模型优化方面都具有很大优势

十年来,机器学习软件开发的格局发生了重大变化。许多框架如雨后春笋般涌现,但大多数都严重依赖于英伟达的 CUDA,并在英伟达的 GPU 上才能获得最佳的性能。然而,随着 PyTorch 2.0 和 OpenAI Triton 的到来,英伟达在这一领域的主导地位正在被打破。

谷歌早期在机器学习模型架构、训练、模型优化方面都具有很大优势,但现在却难以充分发挥这些优势。而在硬件方面,其他 AI 硬件公司很难削弱英伟达的统治地位。直到 PyTorch 2.0 和 OpenAI Triton 出现,机器学习模型的默认软件堆栈将不再是英伟达的闭源 CUDA。



TensorFlow vs. PyTorch
类似的竞争出现在机器学习框架中。几年前,框架生态系统相当分散,但 TensorFlow 是领跑者。表面看来,谷歌稳操机器学习框架行业,他们凭借 TensorFlow 设计了 AI 应用特定加速器 TPU,从而获得了先发优势。

图片

然而现在看来,PyTorch 赢了,谷歌未能将其先发优势转化为新兴 ML 行业的主导地位。如今,谷歌在机器学习社区中似乎有些被孤立了,因为它没有使用 PyTorch 和 GPU,而是使用自己的软件堆栈和硬件。甚至,谷歌研发了第二个机器学习框架 ——JAX,直接与 TensorFlow 竞争,这是典型的「谷歌行为」。

一些人认为,由于大型语言模型的兴起,特别是 OpenAI 的大型语言模型和各种利用 OpenAI API 构建的语言模型,谷歌在搜索和自然语言处理方面的主导地位正在减弱。也许这种观点过于悲观,毕竟当前大多数模型的基础架构仍是谷歌开发的 transformer。

那么,为什么 PyTorch 能大获全胜呢?主要原因是相对于 TensorFlow,PyTorch 具有更高的灵活性和可用性。PyTorch 与 TensorFlow 主要的不同之处在于使用 Eager 模式而非 Graph 模式。

Eager 模式可以说是标准的脚本执行方法,与普通的 Python 代码没什么区别。这使得调试和理解代码更加容易,因为用户可以看到中间操作的结果,以及模型是如何运行的。

相反,Graph 模式分为两个阶段。第一阶段代表要执行操作的计算图,其中的节点代表操作或变量,而节点之间的边表示它们之间的数据流。第二阶段是延迟执行计算图的优化版本。

这种两阶段的方法使得理解和调试代码更具挑战性,因为在图执行结束之前用户无法看到发生了什么。这类似于「解释型」与「编译型」语言,如 Python 与 C++,调试 Python 更容易,因为它是解释型语言。

虽然 TensorFlow 现在也默认使用 Eager 模式,但研究社区和大多数大型科技公司都选择使用 PyTorch。

机器学习训练组件
如果将机器学习模型训练简化为最简单的形式,影响机器学习模型训练的因素主要有两点:

计算 ( FLOPS ) :在每一层内运行密集矩阵乘法;
内存带宽。
以前,影响机器学习训练时间的主要因素是计算时间,等待系统执行矩阵乘法。随着英伟达 GPU 的不断发展,这很快就不再是主要问题了。

英伟达利用摩尔定律将 FLOPS 提高了多个数量级,但主要是架构变化 —— 张量核(tensor core)和更低精度的浮点数格式。相比之下,存储方面没有太大的变化。

图片

2018 年,最先进的模型是 BERT,英伟达 V100 是最先进的 GPU,那时矩阵乘法已经不再是提高模型性能的主要因素。之后,模型在参数数量上增长了 3 到 4 个数量级,而最快的 GPU 在 FLOPS 上增长了 1 个数量级。

即使在 2018 年,纯计算绑定的工作负载也占 FLOPS 的 99.8%,但仅占运行时的 61%。与矩阵乘法相比,归一化和逐点运算(pointwise ops)使用的 FLOPS 仅为矩阵乘法的 1/250 和 1/700,但它们消耗了近 40% 的模型运行时间。

图片

内存墙
随着模型规模的不断飙升,大型语言模型(LLM)仅用于模型权重的内存就需要 100 GB 以上。百度和 Meta 部署的产品推荐网络需要数十 TB 的内存来存储其海量嵌入表。大型模型训练 / 推理中的大部分时间都没有花在计算矩阵乘法上,而是在等待数据传输。显然,问题在于为什么架构师不将更多内存放在更靠近计算的位置,问题的答案也是可想而知的 —— 成本。

免责声明:
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:400-889-6653;邮箱:Service@webmeng.net。本站原创内容未经允许不得转载,或转载时需注明出处:Webmeng.net 免费建站

作者: admin

为您推荐

发表评论

admin

联系我们

联系我们

+86 2163779188

在线咨询: QQ交谈

邮箱: ser@webmeng.net

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

微信扫一扫关注我们