本文约1910字,建议阅读4分钟
本文介绍了在Ignite大会上,微软正式宣布进军「元宇宙」,并将旗下混合现实会议平台Mesh融入到Teams中。
前不久,微软和英伟达推出包含5300亿参数的语言模型MT-NLG,这是一款基于 Transformer 的模型被誉为“世界上最大、最强的生成语言模型”。
毫无疑问,这是一场令人印象深刻的机器学习工程展示。
研究人员估计,人脑平均包含 860 亿个神经元和 100 万亿个突触。可以肯定的是,并非所有这些都用于语言。有趣的是,GPT-4 预计有大约 100 万亿个参数……
尽管这个对比很粗糙,但是难道不应该怀疑构建与人脑大小差不多的语言模型是否是一个长期可行的方法?
当然,我们的大脑是经过数百万年进化产生的奇妙装置,而深度学习模型才有几十年的历史。尽管如此,直觉应该告诉我们,有些东西是无法计算的。
在庞大的文本数据集上训练一个 5300 亿参数的模型,毫无疑问的是需要庞大的基础设施。
事实上,微软和英伟达使用了数百台 DGX-A100 的 GPU 服务器。每件售价高达 199,000 美元,再加上网络设备、主机等成本,任何想要复制这个实验的人都必须花费近 1 亿美元。
哪些公司有业务例子可以证明在深度学习基础设施上花费 1 亿美元是合理的?或者甚至是1000万美元?很少。
尽管其工程才华横溢,但在 GPU 上训练深度学习模型是一种费力的事情。
根据服务器参数表显示,每台 DGX 服务器可以消耗高达 6.5 千瓦的电
量。当然,数据中心(或服务器)至少需要同样多的散热能力。
除非你是史塔克家族的人,需要拯救临冬城,否则散热是必须处理的另一个问题。
此外,随着公众对气候和社会责任问题的认识不断提高,公司还需要考虑到他们的碳足迹。马萨诸塞大学 2019 年的一项研究,“
在 GPU 上训练 BERT 大致相当于一次跨美飞行
”。
而 BERT-Large 拥有 3.4 亿个参数,训练起来的碳足迹究竟有多大?想想都害怕。
构建和推广这些庞大的模型是否有助于公司和个人理解和使用机器学习呢?
相反,如果把重点放在可操作性更高的技术上,就可以用来构建高质量的机器学习解决方案。
一个好的起点是寻找已针对您要解决的任务(例如,总结英文文本)进行预训练的模型。
然后,快速尝试一些模型来预测自己的数据。如果参数标明某个参数良好,那么就完成了!如果需要更高的准确性,应该考虑对模型进行微调。
在评估模型时,应该选择能够提供所需精度的最小模型。它将更快地预测并需要更少的硬件资源来进行训练和推理。
这也不是什么新鲜事。熟悉计算机视觉的人会记得 SqueezeNet 于 2017 年问世时,与 AlexNet 相比,模型大小减少了 50 倍,同时达到或超过了其准确性。
自然语言处理社区也在努力缩小规模,使用知识蒸馏等迁移学习技术。DistilBERT 可能是其最广为人知的成就。
与原始 BERT 模型相比,它保留了 97% 的语言理解能力,同时模型体积缩小了 40%,速度提高了 60%。相同的方法已应用于其他模型,例如 Facebook 的 BART。
Big Science 项目的最新模型也令人印象深刻。如下图所示,他们的 T0 模型在许多任务上都优于 GPT-3,同时模型大小缩小了 16 倍。
如果需要专门化一个模型,不需要从头开始训练模型。相反,应该对其进行微调,也就是说,仅在自己的数据上训练几个时期。
不管喜欢与否,云计算公司都知道如何构建高效的基础设施。研究表明,基于云的基础设施比替代方案更具能源和碳效率。Earth.org 表示,虽然云基础设施并不完美,但仍然比替代方案更节能,并促进对环境有益的服务和经济增长。”
在易用性、灵活性和即用即付方面,云当然有很多优势。
从编译器到虚拟机,软件工程师长期以来一直使用工具来自动优化硬件代码。
然而,机器学习社区仍在为这个话题苦苦挣扎,这是有充分理由的。优化模型的大小和速度是一项极其复杂的任务,其中涉及以下技术:
-
硬件:大量面向加速训练任务(Graphcore、Habana)和推理任务(Google TPU、AWS Inferentia)的专用硬件。
-
剪枝:删除对预测结果影响很小或没有影响的模型参数。
-
-
量化:以较小的值存储模型参数(比如使用8位存储,而不是32位存储)
幸运的是,自动化工具已经开始出现,例如 Optimum 开源库和 Infinity,这是一种容器化解决方案,可以以 1 毫秒的延迟提供 Transformers 的准确性。
在过去的几年里,大型语言模型的规模每年都以 10 倍的速度增长。这看起来像另一个摩尔定律。
如果机器学习沿着模型巨大化这条路走下去,会导致收益递减、成本增加、复杂度增加等。
与其追逐万亿参数模型,不如把更多经历放在构建解决现实世界问题的实用且高效的解决方案,岂不是更好?
https://huggingface.co/blog/large-language-models#deep-learning-deep-pockets