当前位置:数码通 > 数码

介绍基于Transformer的大语言模型

来源于 数码通 2023-10-04 10:39

译者按:近段时间,ChatGPT作为现象级应用迅速走红,这也引发了对对其背后的大语言模型(LLM)的讨论。这些讨论甚至走出了AI科技圈,有的已经达到街谈巷议的程度。程度。在AI科技圈,关于LLM和小模特的讨论由来已久。不同生态立场、不同行业环节的人士纷纷发表意见,其中不少观点相互矛盾。

大模型研究人员和大公司关注LLM的动机不同。研究人员对LLM的突现能力以及LLM在 NLP 领域能力边界的拓展感到好奇。大公司可能更多是出于商业利益的考虑;而社会和中小型企业则对是否站在小模式上犹豫不决。一方面,他们对LLM最终的训练、推理和数据成本望而却步,另一方面,他们也对大型模型感到担忧。人们越来越担心它可能会加强大公司的数据霸权。但讨论,尤其是公开透明的讨论,总是一件好事。它让每个人都能听到不同的声音,然后才有可能最终汇聚到一个更合理的解决方案。

我们选择翻译的文章来自2021年10月的Hugging Face博客。作者当时的职位是一个小模特。我们不知道一年多后的2023年作者的观点是否有所改变,但是打开这本书有利于了解作者当时考虑的观点,将那些合理的观点融入到自己的思维体系中,最后根据新的发展做出自己的判断可能才是最终的目标。

不久前,微软和英伟达推出了Megatron-Turing NLG 530B,这是一个基于Transformer的模型,被誉为“世界上最大、最强大的生成式语言模型”。

毫无疑问,这一成果是对机器学习项目能力的令人印象深刻的展示,表明我们的工程能力已经可以训练如此庞大的模型。然而,我们应该对这种超模趋势感到兴奋吗?我个人倾向于给出否定的回答。我将在这篇文章中解释我的理由。

这是你的深度学习大脑

研究人员估计,人脑平均包含 860 亿个神经元和 100 万亿个突触。可以肯定的是,并非所有神经元和突触都用于语言。有趣的是,GPT-4 预计将拥有约 100 万亿个参数……虽然这个类比很粗略,但我们难道不应该怀疑构建一个人脑大小的语言模型是否会是一个长期目标吗?这是最好的解决方案吗?

当然,我们的大脑是一个神奇的器官,已经进化了数百万年,而深度学习模型只有几十年的历史。然而,我们的直觉告诉我们:有些事情是无法计算的(双关语,:))。

深度学习,深度销售金洞?

正如您所料,在海量文本数据集上训练 5300 亿个参数模型需要大量基础设施。事实上,微软和 Nvidia 正在使用数百台 DGX A100 GPU 服务器,每台售价 199,000 美元。如果考虑到网络设备、托管成本等因素,任何组织或个人想要重现这个实验都得花费近1亿美元。来点炸薯条放松一下神经怎么样?

说真的,哪些组织拥有值得花费 1 亿美元来构建深度学习基础设施的业务?哪些组织拥有值得在基础设施上花费 1000 万美元的业务?稀有的。既然数量很少,那么这些模型适合谁呢?

GPU 集群热量

虽然训练大型模型需要卓越的工程能力,但在 GPU 上训练深度学习模型本身就是一种蛮力技术。根据规格表,每台DGX服务器最多可消耗6.5千瓦的电力。同时,数据中心(或服务器机架)至少需要同样多的冷却能力。除非你是史塔克家族并且需要在冬天保持临冬城(Winterfell)的温暖,否则你必须处理冷却问题。

此外,随着公众对气候和社会责任问题意识的增强,也需要考虑碳足迹问题。根据马萨诸塞大学 2019 年的一项研究,“在 GPU 上训练 BERT 的碳足迹大致相当于一次横跨美国的航班。”

BERT-Large 拥有 3.4 亿个参数。由此我们可以大致推断出威震天图灵的碳足迹是多少……认识我的人都知道我不是一个热心的环保主义者。尽管如此,这些数字仍然不容忽视。

所以呢?

我对威震天-图灵 NLG 530B 以及接下来可能推出的庞然大物感到兴奋吗?不。我认为测试基准的(相对较小的)改进值得增加成本、复杂性和碳足迹吗?不。我认为构建和推广这些大规模模型可以帮助组织理解和应用机器学习吗?号

我想知道这一切的意义何在。为了科学而科学?好的旧营销策略?技术第一?大概各有一点吧。如果是这个意思的话,我就不陪你了。

相反,我专注于实用且可操作的技术,每个人都可以使用它们来构建高质量的机器学习解决方案。

使用预先训练的模型

在绝大多数情况下,您不需要自定义模型架构。也许你会想自己定制一个模型架构(这是另一回事),但请注意,这里野兽出没,只适合有经验的玩家!

一个好的起点是寻找一个已经针对您想要解决的任务(例如英语文本摘要)进行过预训练的模型。

然后,您应该快速尝试一些模型并使用它们来预测您自己的数据。如果指标结果良好,那就到此为止吧!如果您仍然需要更高的精度,则应该考虑对模型进行微调(稍后会详细介绍)。

使用较小的型号

在评估模型时,您应该在满足精度要求的模型中选择最小的模型。它的预测速度更快,并且需要更少的硬件资源来进行训练和推理。节俭需要从头开始。

这其实不是什么新伎俩。 计算机视觉从业者都会记得,2017年SqueezeNet问世时,模型大小比AlexNet缩小了50倍,而精度却与AlexNet相当甚至更好。多么聪明啊!

自然语言处理社区也在致力于使用迁移学习技术来减小模型大小,例如使用知识蒸馏技术。 DistilBERT 或许是这些努力中最著名的。它保留了 97% 的语言理解能力,同时比原始 BERT 模型体积小 40%,速度快 60%。你可以 Huging Face 尝试一下 DistilBERT。同样的方法也适用于其他模型,例如 Facebook 的 BART,您可以在 Hugging Face 上尝试 DistilBART。

大科学项目的最新模型也令人印象深刻。论文中的下图显示,他们的 T0 模型在许多任务上都优于 GPT-3,同时体积小了 16 倍。你可以抱脸试试T0。

微调模型

如果您需要专门化一个模型,则不应从头开始训练它。相反,您应该对其进行微调,即仅根据您自己的数据对其进行几个时期的训练。如果您缺乏数据,也许这些数据集之一可以帮助您入门。

您猜对了,这是另一种进行迁移学习的方法,可以节省您的一切!

需要收集、存储、清理和标记的数据更少,

更快地进行实验和迭代,

生产过程需要更少的资源。

换句话说:节省时间、节省金钱、节省硬件资源、拯救世界!

如果您需要教程,拥抱脸部课程可以帮助您立即开始。

使用云基础设施

无论您是否喜欢,事实是云公司知道如何构建高效的基础设施。可持续性研究表明,基于云的基础设施比其他替代方案更节能且排放密集度更低:请参阅 AWS、Azure 和 Google。 m.smtshopping.cn 声称,虽然云基础设施并不完美,但“[它]比替代方案更节能,并促进环保服务和经济增长。”

云在易用性、灵活性和即用即付方面无疑具有很多优势。它也比您想象的更环保。如果您的 GPU 不足,为什么不尝试在 AWS 托管机器学习服务 Amazon SageMaker 上微调您的 Hugging Face 模型呢?我们有很多例子供您参考。

优化您的模型

从编译器到虚拟机,软件工程师长期以来一直使用可以自动优化任何正在运行的硬件的代码的工具。

然而,机器学习社区仍然在这个话题上苦苦挣扎,这是有充分理由的。优化模型的大小和速度是一项极其复杂的任务,涉及以下技术:

专用硬件加速:如训练加速硬件(Graphcore、Habana)、推理加速硬件(Google TPU、AWS Inferentia)。

剪枝:删除对预测结果影响很小或没有影响的模型参数。

融合:组合模型层(例如,卷积和激活)。

量化:以较小的位深度存储模型参数(例如,使用 8 位而不是 32 位)

幸运的是,自动化工具开始出现,例如 Optimum 开源库和 Infinity,这是一种容器化解决方案,可提供 Transformers 推理功能,延迟仅为 1 毫秒。

结论

过去几年,大型语言模型的规模平均每年增加 10 倍。这开始看起来像另一个摩尔定律。

这条路看似熟悉,但我们应该知道,这条路迟早会遇到收益递减、成本增加、复杂性和新风险等问题。索引通常不会有好结果。还记得《熔毁》和《幽灵》吗?我们想知道AI的Meltdown和Spectre会是什么?





审稿编辑:刘庆

-->
登录后参与评论