量化|大模型高效释放生产性能,HuggingFace开源Transformer扩展优化新库

选自Medium
机器之心编译
编辑:Geek AI

在将大模型应用于工业生产这条路上 , Hugging Face 又走在了前列 。
特斯拉、谷歌、微软、Facebook 等科技巨头有很多共同点 , 其中之一是:它们每天都会运行数十亿次 Transformer 模型预测 。 比如 , Transformer 在特斯拉 AutoPilot 自动驾驶系统中驱动汽车、在 Gmail 中补全句子、在 Facebook 上及时翻译用户的帖子以及在 Bing 中回答用户的自然语言查询 。
Transformer 在机器学习模型的准确率方面带来了巨大提升 , 风靡 NLP 领域 , 并正在扩展到其它模态上(例如 , 语音和视觉) 。 然而 , 对于任何一个机器学习工程团队来说 , 将这些大模型应用于工业生产 , 使它们大规模快速运行都是一个巨大的挑战 。
如果没有像上述企业一样聘用数百名技艺高超的机器学习工程师 , 应该怎么应用这样的大规模模型呢?近日 , Hugging Face 开源了一个新的程序包「Optimum」 , 旨在为 Transformer 的工业生产提供最佳的工具包 , 使得可以在特定的硬件上以最高的效率训练和运行模型 。

量化|大模型高效释放生产性能,HuggingFace开源Transformer扩展优化新库
文章图片

项目地址:https://github.com/huggingface/blog/blob/master/hardware-partners-program.md
Optimum 使 Transformer 实现高效工作
为了在训练和服务模型过程中得到最佳性能 , 模型加速技术需要与目标硬件兼容 。 每个硬件平台都提供了特定的软件工具、特性和调节方式 , 它们都会对性能产生巨大影响 。 同样地 , 为了利用稀疏化、量化等先进的模型加速技术 , 优化后的内核需要与硅上的操作兼容 , 并特定用于根据模型架构派生的神经网络图 。 深入思考这个三维的兼容性矩阵以及如何使用模型加速库是一项艰巨的工作 , 很少有机器学习工程师拥有这方面的经验 。
Optimum 的推出正是为了「简化这一工作 , 提供面向高效人工智能硬件的性能优化工具 , 与硬件合作者合作 , 赋予机器学习工程师对其机器学习的优化能力 。 」
通过 Transformer 程序包 , 研究人员和工程师可以更容易地使用最先进的模型 , 无需考虑框架、架构、工作流程的复杂性;工程师们还可以轻松地利用所有可用硬件的特性 , 无需考虑硬件平台上模型加速的复杂性 。
Optimum 实战:如何在英特尔至强 CPU 上进行模型量化
量化为何如此重要却又难以实现?
BERT 这种预训练语言模型在各种各样的 NLP 任务上取得了目前最佳的性能 , 而 ViT、SpeechText 等其它基于 Transformer 的模型分别在计算机视觉和语音任务上也实现了最优的效果 。 Transformer 在机器学习世界中无处不在 , 会一直存在下去 。

推荐阅读