2022年人工智能行业:AI框架发展白皮书.pdf
《2022年人工智能行业:AI框架发展白皮书.pdf》由会员分享,可在线阅读,更多相关《2022年人工智能行业:AI框架发展白皮书.pdf(43页珍藏版)》请在咨信网上搜索。
1、 AI 框架发展白皮书框架发展白皮书 中国信息通信研究院中国信息通信研究院 2022022 2年年2 2月月 No.202201(2022 年)年)rQrMtQpRoOqOmQwPmPnPrR8O8QaQmOoOoMnPkPmMtQiNqQmObRqRqRNZsOpPuOpMoR 前前 言言 AI 助力当前经济社会步入智能经济时代。世界正在进入以新一代信息技术驱动发展的重塑时期,人工智能(AI,Artificial Intelligence)作为其中重要的使能技术,对激活实体经济具有溢出带动性很强的“头雁效应”,对构筑国家科技影响力具有举足轻重的意义。人工智能成为了全球各国新的科技热点,人工智
2、能基础设施建设也成为重要抓手与着力点。未来十年是全球发展数字经济、迈入智能经济社会的黄金发展期,着力发展人工智能基础设施,将为我国人工智能产业发展壮大、数字经济蓬勃发展提供强大牵引力。AI 框架是智能经济时代的操作系统。作为人工智能开发环节中的基础工具,AI 框架承担着 AI 技术生态中操作系统的角色,是 AI学术创新与产业商业化的重要载体,助力人工智能由理论走入实践,快速进入了场景化应用时代,也是发展人工智能所必需的基础设施之一。随着重要性的不断凸显,AI 框架已经成为了人工智能产业创新的焦点之一,引起了学术界、产业界的重视。在此背景下,白皮书致力于厘清 AI 框架的概念内涵、演进历程、技术
3、体系与作用意义,通过梳理总结当前 AI 框架发展现状,研判 AI框架技术发展趋势,并对 AI 框架发展提出展望与路径建议。由于 AI框架仍处于快速发展阶段,我们对 AI 框架的认识还有待持续深化,白皮书中存在的不足之处,欢迎大家批评指正。目目 录录 一、AI 框架技术持续演进,已形成较为完整的体系.1(一)AI 框架演进步入深化阶段.1(二)AI 框架技术演化出三个层次.5(三)AI 框架重要性愈加突显.13 二、全球 AI 框架繁荣发展,多元化竞合态势渐显.14(一)供给主体方面,企校贡献最活跃.14(二)开源生态方面,全球进入活跃期.16(三)市场格局方面,双寡头持续引领.18(四)支撑应
4、用方面,科研与产业齐驱.20(五)推广途径方面,三条路齐发并进.25 三、应对未来多样化挑战,AI 框架有六大技术趋势.27(一)泛开发:AI 框架将注重前端便捷性与后端高效性的统一.27(二)全场景:AI 框架将支持端边云全场景跨平台设备部署.28(三)超大规模:AI 框架将着力强化对超大规模 AI 的支持.29(四)科学计算:AI 框架将进一步与科学计算深度融合交叉.31(五)安全可信:AI 框架将助力提升 AI 模型可解释性与鲁棒性.32(六)工程化:AI 框架将加速 AI 应用产业规模级工程化落地.34 四、AI 框架生态远未成熟,未来发展空间可观.36(一)从硬件适配向算子接口标准化
5、演进.36(二)强化开源社区打造与开源氛围营造.36(三)重视与高校科研院所广泛开放合作.37(四)推进融入 AI 基础设施布局落地.37(五)支持深度赋能大模型及科学计算.38 图图 目目 录录 图 1 AI 框架技术演进.2 图 2 AI 框架核心技术体系.5 表表 目目 录录 表 1 Github 社区中主流 AI 框架情况(2022.1).16 表 2 Gitee 社区中主流 AI 框架情况(2022.1).18 AI 框架发展白皮书(2022 年)1 一、AI 框架技术持续演进,已形成较为完整的体系 AI 框架是 AI 算法模型设计、训练和验证的一套标准接口、特性库和工具包,集成了算
6、法的封装、数据的调用以及计算资源的使用,同时面向开发者提供了开发界面和高效的执行平台,是现阶段AI 算法开发的必备工具。当前,人工智能基础性算法理论研究创新日益活跃,深度神经网络日趋成熟,各大厂商纷纷投入到深度神经网络算法的工程实现并发力建设算法模型工具,进一步将其封装为软件框架供开发者使用,这个过程中 AI 框架(业界也称 AI 开发框架、深度学习框架等)应运而生。AI 框架负责给开发者提供构建神经网络模型的数学操作,把复杂的数学表达转换成计算机可识别的计算图,自动对神经网络进行训练,得到一个神经网络模型用于解决机器学习中分类、回归的问题,实现目标分类、语音识别等应用场景。(一一)AI 框架
7、演进步入深化阶段框架演进步入深化阶段 结合人工智能的发展历程和 AI 框架的技术特性来看,AI 框架的发展大致可以分为四个阶段,分别为萌芽阶段(2000 年初期)、成长阶段(20122014 年)、稳定阶段(2015 年2019 年)、深化阶段(2020 年以后)。其发展脉络与人工智能,特别是神经网络技术的异峰突起有非常紧密的联系。中国 AI 框架发展白皮书(2022 年)2 来源:中国信息通信研究院 图 1 AI 框架技术演进 萌芽阶段:受限于计算能力不足,这一阶段的神经网络技术影响力相对有限,因而出现了一些传统的机器学习工具来提供基本支持,也就是 AI 框架的雏形,但这些工具或者不是专门为
8、神经网络模型开发定制的,或者 API 极其复杂对开发者并不友好,且这些工具并没有对 GPU 算力进行支持。这一阶段的 AI 框架并不完善,开发者不得不进行大量基础的工作,例如手写反向传播、搭建网络结构、自行设计优化器等。成长阶段:2012 年,Alex Krizhevsky 等人提出了一种深度神经网络架构,即著名的 AlexNet,在 ImageNet 数据集上达到了最佳精度,并碾压第二名,引爆了深度神经网络的热潮。自此极大地推动了 AI 框架的发展,出现了 Caffe、Chainer 和 Theano 等具有代表性的早期 AI 框架,帮助开发者方便地建立复杂的深度神经网络模型,如 CNN、R
9、NN、LSTM 等。不仅如此,这些框架还支持多 GPU 训AI 框架发展白皮书(2022 年)3 练,让开展更大、更深的模型训练成为可能。在这一阶段,AI 框架体系已经初步形成,声明式风格和命令式风格为之后的 AI 框架趟出了两条不同的发展道路。稳定阶段:2015 年,何恺明等人提出的 ResNet,再次突破了图像分类的边界,在 ImageNet 数据集上的准确率再创新高,也终于凝聚了产业界和学界的共识,那就是深度学习将成为下一个重大技术趋势。在这一到两年里,Google 开源了著名的 TensorFlow 框架,它至今仍是机器学习领域最流行的 AI 框架。Caffe 的发明者加入了Faceb
10、ook(现更名为 Meta)并发布了 Caffe2;与此同时,Facebook AI 研究团队也发布了另一个流行的框架 PyTorch,该框架拓展自Torch 框架,但使用了更流行的 Python API。微软研究院开发了CNTK 框架。Amazon 采用了 MXNet,这是华盛顿大学、CMU 和其他机构的联合学术项目。国内的百度则率先布局了 PaddlePaddle 飞桨深度学习框架并于 2016 年发布。TensorFlow 和 CNTK 借鉴了 Theano 的声明式编程风格,而PyTorch 则继承了 Torch 的直观和开发者友好的命令式编程风格。Francois Chollet 几
11、乎是独自开发了 Keras 框架,该框架提供了神经网络和构建块的更直观的高级抽象。同时各种 AI 框架不断进行迭代,为框架提供各种面向高效友好开发的核心组件,例如几乎所有AI 框架都支持的自动微分能力,TensorFlow 提供了分布式版本的AI 框架和支持 iOS 系统的能力,PyTorch 则在完全拥抱 Python 的基中国 AI 框架发展白皮书(2022 年)4 础上提供了一整套包括优化器、库函数、API 工具等支持。AI 框架迎来了繁荣,而在不断发展的基础上,各种框架不断迭代,也被开发者自然选择。经过激烈的竞争后,最终形成了两大阵营,TensorFlow 和PyTorch 双头垄断。
12、2019 年,Chainer 团队将他们的开发工作转移到PyTorch;Microsoft 停止了 CNTK 框架的积极开发,部分团队成员转而支持 PyTorch;Keras 被 TensorFlow 收编,并在 TensorFlow2.0版本中成为其高级 API 之一。深化阶段:随着人工智能的进一步发展,新的趋势不断涌现,例如超大规模模型的出现(GPT-3 等),向 AI 框架提出了更高的要求。随着人工智能应用场景的扩展以及与更多领域交叉融合进程的加快,越来越多的需求被提出,如对全场景多任务的支持、对高算力的需求等,这就要求 AI 框架最大化的实现编译优化,更好地利用算力、调动算力,充分发挥
13、硬件资源的潜力。此外,人工智能与社会伦理的痛点问题也促使可信赖人工智能在框架层面的进步。基于以上背景,现有的流行框架都在探索下一代 AI 框架的发展方向,如 2020 年华为推出昇思 MindSpore,在全场景协同、可信赖方面有一定的突破;旷视推出天元 MegEngine,在训练推理一体化方面深度布局。在这一阶段,AI 框架正向着全场景支持、超大规模AI、安全可信等技术特性深化探索,不断实现新的突破。AI 框架发展白皮书(2022 年)5(二二)AI 框架技术演化出三个层次框架技术演化出三个层次 根据技术所处环节及定位,当前主流 AI 框架的核心技术可分为基础层、组件层和生态层。来源:中国信
14、息通信研究院 图 2 AI 框架核心技术体系 1.基础层 基础层实现 AI 框架最基础核心的功能,具体包括编程开发、编译优化以及硬件使能三个子层。编程开发层是开发者与 AI 框架互动的窗口,为开发者提供构建 AI 模型的 API 接口。编译优化层是 AI 框架的关键部分,负责完成 AI 模型的编译优化并调度硬件资源完成计算。硬件使能层是 AI 框架与 AI 算力硬件对接的通道,帮助开发者屏蔽底层硬件技术细节。编程开发-编程接口 API:开发者通过调用编程接口来描述算法的计算过程。对于开发者来说,编程接口的易用性以及接口的表达中国 AI 框架发展白皮书(2022 年)6 能力非常重要,对算法的描
15、述会映射到计算图上。编程接口主要可以分为 3 类:一类是基于数据流图的编程接口,流行的基于数据流图的机器学习编程框架包括 TensorFlow、MXNet、Theano、Torch7等;另一类是基于层的编程接口,如 Caffe;还有一类是基于算法的编程接口,主要用于传统机器学习算法的实现,如 Scikit-Learn。编程开发-编码语言:人工智能应用场景众多,人工智能开发者基于不同场景选择使用的编程语言多样,完善的 AI 框架应支持多种不同的语言,例如 Python/仓颉/Julia 等。面向使用不同编程语言的开发者,AI 框架需要提供功能相同、性能可比的开发服务和技术支持。编译优化-分布式并
16、行:指数据流并行、模型并行、Pipeline 并行、优化器并行等策略。随着模型规模的增大,传统的数据并行无法有效处理,自动并行技术的使用将会是常态。需要将大模型切分到不同的设备上,切分就是将不同大块计算切分成小块计算,并将小块计算发送到不同的计算资源进行计算,最后将小块计算的结构进行规约合并。而切分策略寻优是很困难的,不同的切分产生的通信量差异巨大,计算利用率也很不一样,比如 Pipeline 并行往往在计算利用率方面存在较大的挑战,算子切分的并行则在通信量方面存在较大的挑战,需要 AI 框架来支持。编译优化-自动微分:自动微分是将一个复杂的数学运算过程分解为一系列简单的基本运算,每一项基本运
17、算都可以通过查表得出AI 框架发展白皮书(2022 年)7 来。自动微分有两种形式,包括前向模式(forward mode)和反向模式(reverse mode),前向模式是在计算图前向传播的同时计算微分,反向模式需要对计算图进行一次正向计算,得出输出值,再进行反向传播。因此反向模式的内存开销要大一点,它需要保存正向传播中的中间变量值,这些变量值用于反向传播的时候计算导数。编译优化-动静转换:静态图在定义执行前的所有操作和网络结构,并将其呈现给传感器流,在训练期间提供了更高的性能,但这样做的代价是不易于使用、不够灵活。动态图计算是即时执行的,提供了更大的灵活性和更容易的调试,但这样做的代价是性
18、能较低。TensorFlow2.0、MindSpore 等均支持动态图和静态图的转换技术,可以实现计算效率和灵活性的平衡。编译优化-模型轻量化:轻量化是指为满足 AI 模型尺寸小、计算复杂度低、电池耗电量低、下发更新部署灵活等要求下,AI 框架所配置的轻量化技术。一般来说,模型轻量化就是指模型压缩和加速,其中压缩重点在于减少网络参数量,加速则侧重在降低计算复杂度、提升并行能力等。算法层压缩加速主要包括结构优化(如矩阵分解、分组卷积、小卷积核等)、量化与定点化、模型剪枝、模型蒸馏等;框架层加速主要包括编译优化、缓存优化、稀疏存储和计算、NEON 指令应用、算子优化等。编译优化-图算融合:通过自动
19、分析和优化现有网络计算图逻辑,并结合目标硬件能力,对计算图进行计算化简和替代、算子拆分和中国 AI 框架发展白皮书(2022 年)8 融合、算子特例化编译等优化,以提升设备计算资源利用率,实现对网络性能的整体优化。相比传统优化技术,图算融合具有多算子跨边界联合优化、与算子编译跨层协同、基于 Polyhedral 的算子即时编译等独特优势。另外,图算融合只需要开发者打开对应配置,整个优化过程即可自动完成,不需要网络开发人员进行其它额外感知,使得开发者可以聚焦网络算法实现。编译优化-内存优化:由于硬件系统的内存资源有限,特别是AI 芯片的内存资源有限,需要有高效的内存优化策略降低 AI 网络对系统
20、内存的消耗。一般常用的内存优化技术有:静态内存复用优化和动态内存分配机制。静态内存复用优化会分析计算图的数据流关系,基于数据的内存占用大小、数据间的生命周期重叠关系,规划数据的内存复用策略,从而最小化内存占用。动态内存分配机制是在运行时创建大块内存,并按照实际算子执行过程中需要的内存进行内存切片提供,当算子执行完且相关数据的引用均已结束时,释放内存切片,从而实现内存的有效复用。编译优化-算子生成:AI 框架会提供基础常用的算子,但是这些算子往往不能满足开发者算法不断演进的需求。因此,需要 AI框架具备针对不同算力设备的统一算子生成和优化的能力,使得开发人员只需要编写高层编程语言(如 DSL)就
21、可以通过 AI 框架提供的算子编译生成能力,生成高质量的底层算子,极大降低 AI 框架和硬件平台的开发和维护成本,拓展应用范围。AI 框架发展白皮书(2022 年)9 编译优化-中间表示:中间表示(Intermediate Representation,简称 IR)是对计算图和算子格式的定义。完备的中间表示需要支持不同硬件设备算子定义和计算图的性能优化,支持不同类型的 AI模型网络结构的灵活表达,支持不同设备间的模型中转和迁移。硬件接入-计算算子:在深度学习领域计算算子特指计算图中的一个函数节点,一个在张量上执行的计算操作,它接受零或多个张量作为输入,得到零或多个张量作为输出,利用梯度、散度、
22、旋度的表达方式进行计算。硬件接入-通信算子:用于分布式节点通信的函数节点。2.组件层 组件层主要提供 AI 模型生命周期的可配置高阶功能组件,实现细分领域性能的优化提升,包括编译优化组件、科学计算组件、安全可信组件、工具组件等,对人工智能模型开发人员可见。并行及优化组件-自动并行:指对自动并行技术的多样化组合支持。AI 框架支持开发者进行多种不同并行进行组合,根据需要形成混合并行策略,例如数据流并行和模型并行的组合、数据流和Pipeline 并行的组合等,支持开发者个性化的选择自己的并行策略,以更灵活的姿态支持人工智能模型训练、应用适配。并行及优化组件-高阶优化器:AI 框架支持多种不同的一阶
23、/二阶优化器,能为开发者提供灵活方便的接口,例如 SGD 优化器、中国 AI 框架发展白皮书(2022 年)10 SGDM 优化器、NAG 优化器、AdaGrad 优化器、AdaDelta 优化器、Adam 优化器、Nadam 优化器等。科学计算组件-科学计算(数值方法):人工智能发展的重要方向之一是科学计算,因此要求 AI 框架向开发者提供科学计算相关的功能支持,通过函数式编程范式为 AI+科学计算提供融合的表达方式,使得开发者以更加接近数学计算的方式进行编程,以缓解当前 AI 框架的编程接口主要面向深度神经网络设计,但是科学计算中需要大量的数学公式的表达(例如微分方程求解)的情况。科学计算
24、组件-科学计算(AI 方法):针对 AI 方法直接替代数值方法取得计算结果的形式,AI 框架需要具备“AI+科学计算”统一的数据底座,将传统科学计算的输入数据(如传统科学计算软件生成的仿真数据)转换为 AI 框架的输入数据(即张量)。针对 AI 方法与数值方法配合取得计算结果形式,除了需要具备统一的数据引擎之外,AI 框架需要支持传统数值计算的方法,例如高阶微分求解、线性代数计算等,并通过计算图对传统数值方法和 AI 方法的混合计算优化,从而实现“AI+科学计算”端到端加速。安全可信组件-AI 可解释:AI 框架需要具备三个层面的能力支持可解释人工智能。建模前的“数据可解释”,分析数据分布,找
25、出代表性的特征,在训练时选择需要的特征进行建模。构建“可解释人工智能模型”,通过与传统机器学习(如贝叶斯概率编程)结合的方式,对人工智能结构进行补充,平衡学习结果的有效性和学习模型AI 框架发展白皮书(2022 年)11 的可解释性。对已构筑模型进行“解释性分析”,通过分析人工智能模型的输入、输出、中间信息的以来关系分析(如 TB-Net 的方式)及验证模型的逻辑。安全可信组件-数据安全:人工智能领域的数据安全问题不仅仅涉及到原始数据本身的保护,还要防止通过模型推理结果反推出数据隐私关键信息。因此,AI 框架本身除了要提供数据资产保护能力,还需要通过差分隐私等方式,保护模型数据的隐私。同时,为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 人工智能 行业 AI 框架 发展 白皮书
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【Stan****Shan】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【Stan****Shan】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。