高效的深度学习:将深度学习模型变得更小、更快、更好的综述

摘要

深度学习彻底改变了计算机视觉、自然语言理解、语音识别、信息检索等领域。然而,随着深度学习模型的逐步改进,它们的参数数量、延迟、训练所需的资源等都大幅增加。
因此,关注模型的这些内存印迹指标,而不仅仅是其质量,也变得很重要。我们提出并推动了深度学习中的效率问题,然后对模型效率的五个核心领域(跨度建模技术、基础设施和硬件)及其开创性工作进行了全面综述。
我们还提供了一个基于实验的指南和代码,供从业者优化他们的模型训练和部署。我们相信这是高效深度学习领域的第一次全面综述,覆盖从建模技术到硬件支持的模型效率领域。我们希望这份调查能够为读者提供思维模型和对该领域的必要理解,以应用通用效率技术立即获得显着改进,并为他们提供进一步研究和实验的想法,以获得额外的收获。

论文标题:

Efficient Deep Learning: A Survey on Making Deep Learning Models Smaller, Faster, and Better

论文作者:

Gaurav Menghani

论文链接:

https://arxiv.org/abs/2106.08962

引言

在过去十年中,使用神经网络进行深度学习一直是训练新机器学习模型的主要方法。它的崛起通常归功于 2012 年的 ImageNet 竞赛。那一年,多伦多大学的一个团队提交了一个深度卷积网络(AlexNet,以首席开发者 Alex Krizhevsky 的名字命名),表现优于下一个最好的提交结果 41%。
作为这项开创性工作的结果,人们竞相使用越来越多的参数和复杂性来创建更深层次的网络。VGGNet、Inception、ResNet 等几个模型架构在随后几年的 ImageNet 比赛中相继打破了之前的记录,同时它们的内存印迹(模型大小、延迟等)也在不断增加。
在自然语言理解(NLU)中也有这种影响,其中主要是基于 attention 层的 Transformer 架构激发了 BERT、GPT-3 等通用语言编码器的开发。BERT 在发布时就击败了 11 个 NLU 基准测试。GPT-3 也已通过其 API 在行业的多个地方使用。这些领域的共同点是模型占用空间的快速增长以及与训练和部署它们相关的成本(如图)。
由于深度学习研究一直专注于改进现有技术,因此图像分类、文本分类等基准的逐步改进与网络复杂度、参数数量和所需的训练网络所需资源量以及预测的延迟的增加相关。例如,GPT-3 包含 1750 亿个参数,仅训练一次迭代就需要花费数百万美元。这不包括实验/尝试不同超参数组合的成本,这在计算上也很昂贵。
虽然这些模型在训练它们的任务上表现良好,但它们不一定足够有效,无法在实际生活中直接部署。深度学习从业者在训练或部署模型时可能会面临以下挑战。
  • 可持续的服务器端扩展:训练和部署大型深度学习模型的成本很高。虽然训练可能是一次性成本(或者如果使用预先训练的模型可能是免费的),部署并让推断运行很长一段时间仍然可能会在服务器消耗方面变得昂贵,考虑到服务器端的 RAM、CPU 等。即使对于像谷歌、Facebook、亚马逊等每年在其数据中心上花费数十亿美元的组织来说,数据中心的碳空间印迹也是一个非常现实的问题。
  • 启用设备上部署:出于多种原因(隐私、连接性、响应性),某些深度学习应用程序需要在 IoT 和智能设备(模型推断直接在设备上进行)上实时运行。因此,优化目标设备的模型变得势在必行。
  • 隐私和数据敏感性:当用户数据可能敏感时,能够使用尽可能少的数据进行训练至关重要。因此,有效地训练模型数据意味着需要较少的数据收集。

  • 新应用程序:某些新应用程序提供了现有现成模型可能无法解决的新约束(围绕模型质量或占用空间)。
  • 模型爆炸:虽然单一模型可能运行良好,但在同一基础架构(托管)上为不同应用程序训练和/或部署多个模型可能会最终耗尽可用资源。

高效深度学习

围绕上述挑战的共同主题是效率。我们可以进一步分解如下:
  • 推断效率:这主要处理部署推断模型(计算给定输入的模型输出)的人会提出的问题。模型小吗?速度快吗?更具体地说,模型有多少参数,磁盘大小是多少,推断过程中的 RAM 消耗,推理延迟等。
  • 训练效率:这涉及训练模型的人会问的问题,例如模型训练需要多长时间?有多少设备?该模型可以放入内存中吗?它还可能包括诸如模型需要多少数据才能在给定任务上实现所需性能的问题。
如果要给我们两个模型,在给定的任务上表现同样出色,我们可能希望选择一个在上述任一方面或理想情况下在上述两个方面都表现更好的模型。如果要在推断受限的设备(例如移动和嵌入式设备)或昂贵的设备(云服务器)上部署模型,则可能更值得关注推断效率。同样,如果要使用有限或昂贵的训练资源从头开始训练大型模型,开发专为提高训练效率而设计的模型会有所帮助。
无论优化目标是什么,我们都希望实现帕累托最优。这意味着我们选择的任何模型都是我们关心的权衡的最佳选择。如图,绿点代表帕累托最优模型,其中其他模型(红点)在相同的推理延迟下均无法获得更好的准确性,反之亦然。帕累托最优模型(绿点)共同构成了我们的帕累托前沿(pareto-frontier)。根据定义,帕累托前沿中的模型比其他模型更有效,因为它们在给定的权衡下表现最好。因此,当我们寻求效率时,我们应该考虑在帕累托前沿上发现和改进。
为了实现这一目标,我们建议转向一组算法、技术、工具和基础设施的组合,它们可以协同工作,以允许用户训练和部署关于模型质量及其内存印迹的帕累托最优模型。

总结

在本文中,我们首先展示了深度学习模型的快速增长,并说明了当今训练和部署模型的人必须对效率做出隐式或显式决策的事实。然而,模型效率的前景是广阔的。
为了解决这个问题,我们为读者设计了一个心智模型,让他们围绕模型效率和优化的多个重点领域进行思考。核心模型优化技术的综述使读者有机会了解最新技术、在建模过程中应用这些技术,和/或将它们用作探索的起点。基础设施部分还列出了使高效模型的训练和推理成为可能的软件库和硬件。
最后,我们展示了一部分明确且可操作的见解并辅以代码,供从业者用作该领域的指南。本节有望提供具体且可操作的要点,以及在优化用于训练和部署的模型时要考虑的权衡。总而言之,我们认为通过本篇综述,我们让读者具备了必要的理解能力,可以分解从次优模型到满足他们对质量和内存印迹的模型所需的步骤。
(0)

相关推荐

  • 砥砺再出发,MindSpore开源一周年后的项目新思考

    2020年3月28日,华为开发者大会上宣布全场景AI计算框架MindSpore正式开源,并将致力于构筑面向全球的开源社区,持续推动AI软硬件应用开源生态发展. 自开源以来,MindSpore获得了开发 ...

  • PaddlePaddle能成为开发者进阶的“宝典”吗

    对开发者而言,缺的可能不是想象力,也不是执行力,而是一个足够包容.易于使用而又开放的开发平台.TensorFlow.PyTorch等国外AI开发平台固然拥有各自的优点,但如果对其产生依赖,那么对国内开 ...

  • 人工智能的未来与目前的困难

    人工智能在当今世界越来越流行.许多行业都有人工智能的名字,人工智能已经成为几乎所有互联网技术公司的必备基因.就连很多制造企业都要谈人工智能,就像人类一夜之间就进入了人工智能时代一样. 但是很多企业只是 ...

  • 目前最佳的几个人工智能开发框架以及(GPT-3) 模型简介

    人工智能作为计算机科学的其中一个分支,如今的发展可谓是超越了所有的计算机科学分支,自2016年谷歌的阿尔法围棋(AlphaGo)第一个击败人类职业冠军围棋选手(李世石九段)以来,人工智能的理论和技术日 ...

  • 2020年深度学习技术发展综述

    来源:无人系统技术 作者:王亚珅 摘要:对深度学习领域的研究进行综合评述,并对其进一步发展方向进行分析.首先分析围绕注意力机制的深度学习技术最新研究成果,以及在自然语言处理领域取得突破性进展的巨型预训 ...

  • 基于深度学习的脑电图识别 综述篇(三)模型分析

    更多技术干货第一时间送达 作者|Memory逆光 本文由作者授权分享 导读 脑电图(EEG)是一个复杂的信号,一个医生可能需要几年的训练并利用先进的信号处理和特征提取方法,才能正确解释其含义.而如今机 ...

  • 几经沉浮,人工智能(AI)前路何方?

    人工智能将和电力一样具有颠覆性 .                                                      --吴恩达 如同蒸汽时代的蒸汽机.电气时代的发电机.信息时 ...

  • 创业第一天,有三AI扔出了深度学习的150多篇文章和10多个专栏

    在这篇文章中,有三跟大家来聊一下有三AI和如何学习深度学习这件事儿. 1 概述 自我介绍 "有三AI"创始人网名言有三,本名龙鹏,本科就读于华中科技大学,硕士就读于中国科学院,先后 ...

  • 高效深度学习:让模型更小、更快、更好!

    自从 AlexNet 在 ImageNet 上大放异彩后,图像就进入了预训练时代,随后 VGGNet,Inception,ResNet 不断取得新的 SOTA,不过同时模型也越来越大.自然语言领域要从 ...

  • 深度学习尝鲜-DeepFM模型原理

    一.背景 精排模型是推荐系统中效果产出最重要的模块,深度排序模型是推荐领域应用最广迭代最快的技术领域.近年来各大公司纷纷抛弃了原有的传统机器学习模型转向深度排序模型的研究和应用,提出了非常多结合工业应 ...

  • ML之模型文件:机器学习、深度学习中常见的模型文件(.h5、.keras)简介、h5模型文件下载集锦、使用方法之详细攻略

    ML之模型文件:机器学习.深度学习中常见的模型文件(.h5..keras)简介.h5模型文件下载集锦.使用方法之详细攻略 ML/DL中常见的模型文件(.h5..keras)简介及其使用方法 一..h5 ...

  • 从“几何深度学习”看深度学习江湖的统一

    水木番 发自 凹非寺 量子位 报道 | 公众号 QbitAI 你能想象某一天打开深度学习的词条,发现: 深度学习的江湖已经能够被统一了吗? 几何学上的对称性可以玩转整个深度学习吗? 通过对称性和的变换 ...

  • 【学习指南】深度学习与计算机视觉学习总结与经验分享

    深度学习与计算机视觉,学习总结与经验分享 深度学习-什么是计算机视觉? [视频资源分享]机器学习|深度学习|编程语言|数据挖掘等视频资源汇总 深度学习-计算机视觉学习路线[从学术到工作] 计算机视觉领 ...

  • 关于深学习和浅学习作者给深度学习排一个金...

    关于深学习和浅学习 作者给深度学习排一个金字塔,从简单接受到学习.输出.实践.总结的渐变过程. 又快是一年读书日,如何让自己有效学习? 作者认为那些一年听300本书.看300天专栏.最终对自己行为产生 ...

  • 变式学习与深度学习

    变式学习是一种比较有效的促进深度学习的教与学的方式,变式学习的一种操作方式--变式训练在中国传统的教学中是被教师们经常运用的一种方法,而且是被教学实践证明有效的促进学生深度理解的学习方法. 关于变式学 ...

  • 关于《深度学习》的学习摘录与启示

    摘录部分: 一.深度学习的内涵: 浅层学习是对零散的.无关联的内容不加批判地机械记忆,学习内容脱离生活实际,与学生以往的经验缺乏关联,学不致用: 深度学习是对学习内容积极主动的理解.联系和结构的建立. ...

  • 深度中医带你学习古中医,《扁鹊心书》精华阅读版

    医家正道,<内经>为真,<内经>言病最详,而无治病之法,故黄帝又与岐伯撰出<灵枢>,实为医门所最急者也.嗣后,秦越人根据<内经>旨趣,而演八十一难.九针 ...