AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

为什么大型机器学习模型必须缩小 ?

  • 2021-05-12
  • 本文字数:1387 字

    阅读完需:约 5 分钟

为什么大型机器学习模型必须缩小 ?

更大的规模不一定更适合机器学习。但是,随着研究人员相互竞争追求最先进的基准,深度学习模型和训练它们的数据集不断扩展。不管它们如何突破,更大的模型都会对预算和环境产生严重的影响。


比如 GPT-3,一个在去年夏天推出的大受欢迎的自然语言处理模型,据说花了1200 万美元用于训练。更有甚者,马萨诸塞大学阿默斯特分校(UMass Amherst)的研究人员发现,训练大型人工智能模型所需的计算能力能够产生 60 多万磅的二氧化碳排放——是普通汽车寿命周期排放量的 5 倍。


目前,没有迹象表明,以机器学习行业的发展速度,计算密集型工作将会放缓。OpenAI 的研究显示,深度学习模型的计算能力在 2012 到 2018 年间增长了惊人的 30 万倍,超过了摩尔定律。这个问题不仅仅是训练这些算法,而是要在生产环境下运行它们,或者说在推理阶段。对很多团队而言,由于纯粹的成本和资源的限制,深度学习模型的实际应用仍然遥不可及。


幸好,研究人员发现了一些新的方法来缩小深度学习模型,并通过更智能的算法来优化训练数据集,使得模型在生产环境下运行得更快,计算量也更少。就连业界的一个峰会也专门讨论低功耗、微型机器学习。剪枝(Purning)、优化(Quantization)和迁移学习(Transfer Learning)就是三种具体的技术。这些技术可以让那些无法投资数百万美元把模型转换成生产环境的组织实现机器学习的民主化。对“边缘”用例来说,这一点尤为重要,因为大型专用人工智能硬件在物理上并不切实际。


第一种技术,即剪枝,是近几年来研究的热点之一。包含“深度压缩”(Deep Compression)和“彩票假说”(Lottery Ticket Hypothesis)在内的高引用文献表明,可以在不损失正确性的情况下消除神经网络中“神经元”之间一些不必要的连接,有效地使模型更小、更容易在资源有限的设备上运行。最新的论文进一步验证并完善了早期的技术,以开发出更小的模型,使其达到更高的速度和正确度。对某些模型,比如ResNet,可以在不影响正确性的情况下剪枝 90% 左右。


第二种技术,即优化,也正在逐步普及。优化涉及许多不同的技术,它们可以将大的输入值转换为小的输出值。换句话来说,在硬件上运行神经网络可以产生上百万次乘和加运算。减少这些数学运算的复杂性有助于减少内存需求和计算成本,这将大大提高性能。


最后,虽然这不是一种缩小模型的技术,但是迁移学习能够在有限的数据中帮助训练一个新模型。迁移学习以预训练模型作为起点。通过有限的数据集,模型的知识可以“迁移”到一个新的任务中,而无需从头再来训练原始模型。在训练模型时,这是一种减少计算能力、能源和资金的重要方法。


最重要的启示是,模型可以(也应该)尽可能地优化,使其在较少的计算量下运行。在不牺牲性能和正确性的情况下,寻找减小模型大小和相关计算能力的方法将是机器学习的下一大突破。


如果能有更多人在生产环境中低成本地使用深度学习模型,我们就能真正看到现实世界中创新的新应用。这些应用可以在任何地方运行,甚至是在最小的设备上,以达到做出即使决定所需的速度和正确性。或许,小型模型最好的效果是整个行业能够减少其环境硬件,而不是每六年增加 30 万倍。


作者介绍:


Sasa Zelenovic,Neural Magiic 团队成员,帮助数据科学家发现开源、廉价的硬件加速器替代品,以实现深度学习性能。


原文链接:


https://www.datasciencecentral.com/profiles/blogs/honey-i-shrunk-the-model-why-big-machine-learning-models-must-go

2021-05-12 10:001469
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 536.8 次阅读, 收获喜欢 1977 次。

关注

评论

发布
暂无评论
发现更多内容

web前端培训怎么修改 node_modules 中的文件

@零度

node.js 前端开发

java技术培训在 MySQL 中使用枚举需要注意什么

@零度

JAVA开发 枚举

科创人·味多美CIO胡博:数字化是不流血的革命,正确答案藏在业务的田间地头

科创人

P2PDB 白皮书

Rock-李益

区块链 去中心化数据库

在 Django 中呈现 HTML 表单(GET 和 POST)

海拥(haiyong.site)

Python django 6月月更

一文讲透研发效能!您关心的问题都在 ‍

思码逸研发效能

研发效能

青藤入选工信部网安中心“2021年数字技术融合创新应用典型解决方案”

青藤云安全

网络安全 工信部 主机安全

知识经济时代,教会你做好知识管理

小炮

钛星数安加入龙蜥社区,共同打造网络安全生态

OpenAnolis小助手

开源 龙蜥社区 合作 CLA 钛星数安

初识云原生安全:云时代的最佳保障

SEAL安全

云原生安全

左手代码,右手开源,开源路上的一份子

开源社

开源

CentOS中实现基于Docker部署BI数据分析

葡萄城技术团队

Docker centos BI 分析工具

快手实时数仓保障体系研发实践

Apache Flink

大数据 flink 编程 流计算 实时计算

如何在物联网低代码平台中进行任务管理?

AIRIOT

低代码 物联网

融云通信“三板斧”,“砍”到了银行的心坎上

融云 RongCloud

业务与技术双向结合构建银行数据安全管理体系

易观分析

银行数字化

leetcode 139. Word Break 单词拆分(中等)

okokabcd

LeetCode 动态规划 算法与数据结构

龙蜥开发者说:首次触电,原来你是这样的龙蜥社区? | 第 8 期

OpenAnolis小助手

Linux 开源 故事 龙蜥社区 开发者说

「开源摘星计划之操作系统100人」发布,共建操作系统开源人才生态

腾源会

4个不可不知的“安全左移”的理由

SEAL安全

安全左移 shift left

SAP Marketing Cloud 功能概述(三)

汪子熙

SaaS SAP 云应用 6月月更 Marketing Cloud

SAP Marketing Cloud 功能概述(四)

汪子熙

云原生 SaaS SAP 6月月更 Marketing Cloud

等保备案是等保测评吗?两者是什么关系?

行云管家

备案 等保 等级保护 等保备案 等级测评

传统的IO存在什么问题?为什么引入零拷贝的?

源字节1号

详解kubernetes备份恢复利器 Velero | 深入了解Carina系列第三期

BoCloud博云

Kubernetes 云原生 数据备份

大数据培训Spark 高频面试考点分享

@零度

spark 大数据开发

远程办公之:在家露营办公小工具| 社区征文

甜甜的白桃

初夏征文

红象云腾完成与龙蜥操作系统兼容适配,产品运行稳定

OpenAnolis小助手

开源 龙蜥社区 龙蜥操作系统 红象云腾 兼容适配

敏捷之道 | 敏捷开发真的过时了么?

LigaAI

敏捷 敏捷开发 敏捷软件开发 敏捷宣言 LigaAI

居家办公更要高效-自动化办公完美提升摸鱼时间 | 社区征文

迷彩

Python AI 6月月更 初夏征文 Python自动化办公

虚拟化是什么意思?包含哪些技术?与私有云有什么区别?

行云管家

云计算 运维 虚拟化 IT运维

为什么大型机器学习模型必须缩小 ?_AI&大模型_Sasa Zelenovic_InfoQ精选文章