广告

AI的训练与推理,会往哪个方向发展?

时间:2020-12-08 作者:黄烨锋 阅读:
Graphcore公司CEO Nigel Toon先生多年前曾经专门撰文提过,训练和推理的问题。Graphcore的IPU同时支持训练和推理,不过“如果你根据训练和推理来看IPU,那么你可能对机器学习硬件有些误解。”“对于IPU是针对训练还是推理的问题,我的回答可能会让很多人惊讶。”
广告

去年我在与英国Graphcore公司联合创始人兼CEO Nigel Toon先生的沟通中,他有数度谈到AI的“训练(training)和推理(inference)技术本质上没有什么区别”。似乎在多番探讨中,Nigel Toon都有意无意地提及,训练和推理不应做过分严格的区分。

当时Graphcore高级副总裁兼中国区总经理卢涛也谈到:“未来的应用,是在不停地训练和发展这个模型。有客户之前提到online training或者streaming training的说法。一般大家讲的训练都是离线的,数据拿来,训练好之后再拿到线上进行推理。但现在,很多应用可能会转为online training和inference。就是一边在用,同时又有新的数据进来,一边同时更新知识库。”

这两段话,是什么意思呢?

Graphcore去年针对IPU芯片的宣传资料中也提到了这么一段:“用户可以用相同IPU芯片进行推理或训练;从架构的角度来看,这对我们非常重要,因为随着机器学习演进,系统将能够从经验中学习。推理性能表现的关键包括低延迟、能使用小模型、小批次(small batches),以及可能会尝试导入稀疏性(sparsity)的训练模型;IPU可以有效地完成所有这些事情。”

“因此在一个4U机箱中,16颗IPU共同合作协作进行训练,每颗IPU可以执行独立的训练或者推理任务,并由一个CPU上执行的虚拟机来控制,最终你会得到一个可用于训练的硬件。因此一旦模型被训练、布署,随着模型演进且我们开始想要从经验中学习时,就可以采用相同硬件。”

AI的训练与推理

消费用户知道AI或者“深度神经网络”,应该是从当代手机产品上,手机SoC内可能会有个专门的AI单元——Arm和华为称其为NPU,苹果则称其为NE。通常我们说,执行神经网络任务有两个关键点,分别就是神经网络模型的执行与推理(也译作推论)。

训练过程,就和神经网络学习的过程一样。而训练后的神经网络,投入使用,就是将其所学应用到具体的场景中,比如说识别图片、语音——这个过程,就是推理的过程。有了训练才有了推理。

在训练神经网络的过程中,会有训练数据首先加入到网络第一层,单个神经元基于执行的任务,为输入分配权重。比如说在图片识别的网络中,第一层会去找画面对象边缘;随后查看边缘构成的形状——长方形或圆形;第三层再去发现特定的特征,比如画面中的眼睛、鼻子......直至最后一层,最终输出是由所有产生的权重决定的。

比较典型的例子是猫图片的识别:给神经网络输入海量的训练图片,神经网络需要做是不是猫的判断——训练算法的响应仅有“正确”和“错误”两种。如果算法告诉神经网络某判断“错误”,则这个错误会通过神经网络层级回传,网络就需要做其他的尝试了。每次尝试,都需要考虑其他属性;并给每层检查的属性加权重。直到最终有了正确的权重,每次都能取得正确答案。

那么这样一来就有了数据结构和所有的权重,是通过“学习”的过程获得的。整个过程的最大特点,就是算力需求非常大。

而将小批量、真实世界的数据,交给神经网络,并得到非常快速的回答——这就是推理的过程。在上例中,就是给一张全新的照片,让已经训练过的神经网络来判断这张图中是否有猫。但通常,推理部分在应付巨型的神经网络时,在应用中要确保速度和延迟,就需要有一些方案来对其做“修剪”,比如说一部分神经网络不激活;或者将神经网络多层级融合成单独的计算步骤。

推理过程,通常以更为简单、优化的运行时性能,来获得相近的预测精度。手机上的NPU,以及许多带ADAS系统的汽车所携的AI芯片,如果按照这样的划分来看,担纲的角色就是做本地推理。推理也是进行高度并行计算,但算力、精度要求通常会比训练低很多。

说推理,可能太狭隘了

Nigel Toon多年前曾经专门撰文提过,训练和推理的问题。Graphcore的IPU同时支持训练和推理,不过“如果你根据训练和推理来看IPU,那么你可能对机器学习硬件有些误解。”“对于IPU是针对训练还是推理的问题,我的回答可能会让很多人惊讶。”

Graphcore官方比较喜欢提“机器智能”这个词,称其IPU产品为机器智能硬件,以及“我们设计IPU,帮助变革者们开发新一代机器智能系统”。此前我没能很好地理解这个词,基本将其与传统机器学习方案划等号。或许针对这个词,一个优解就在Graphcore对于训练和推理的理解上。

Toon当时曾提到:“如今的机器学习系统,相对而言仍然太过简单。”常规的方案如卷积神经网络,前文所述比如训练一个分类系统,那么系统就能相对精准地识别图片、文字等对象了。整个过程需要大量标记数据,而且更为重要的是,由于训练和推理的分开,系统并不会从新的经验中有所学习。

而Graphcore理想中的“机器智能”硬件,是能够学习,并且使用已习得的知识来构建系统的。这样“机器智能系统才有可能提升,并且提供越来越好的结果。”Toon表示,“这些系统不应当只是训练,而应当是即便在部署之后,都仍然能够快速进化,成为学习系统。”

“推理,是比较狭隘的一种表达方式;推理实际上可以快速发展成复杂得多的机器学习系统。”“比如说,在自动驾驶领域,我们期望汽车能够持续学习,我们在路上遭遇的各种新状况。如果有辆自动驾驶汽车,发现有个球滚到了马路上,后面还跟着个孩子,我们期望自动驾驶系统能够学习到,在马路上出现一个皮球,是极有可能意味着后面跟着个孩子的。”

“而这个新知识不应当只是放在一辆车上,我们期望能够分享这个知识,比如说可能当天晚上就连接到云端的学习系统,知识系统就获得了更新。如此一来,第二天所有的汽车都能更新模型,获得最新的理解。理想情况下,我们期望其他的汽车,也能在看到一辆玩具拖拉机突然出现在马路上的时候,也能够意识到后面可能跟着一个孩子——跟它看到一个球的时候,做出的反应一样。”

这番描述实际上就相当清晰地表明了,为什么Toon认为“推理”在机器智能应用上,是个比较片面、狭隘的词汇,因为在他看来部署机器智能才是正确的方向。

机器智能的理想硬件形态

那么如果不谈推理,而用像上面这种概念的机器智能系统,那么实际的硬件部署是什么样的呢?Toon此前同样有给出自己的答案。在理想情况下,机器智能计算应当是在云端进行的,而边缘位置则进行“智能处理”,可以是嵌入到端侧产品的,也可以是边缘服务器上的——针对某些特定的任务,做本地的支持。

云需要支持许多不同的用户和不同的智能任务——并且在云端高度并行运作。在更为具体的设备部署上,算力需要具备相当的弹性——相信这应该也是现如今二代IPU,具备相当程度弹性扩展能力的重要原因。有兴趣的可以参见电子工程专辑官网的文章《二代IPU:怎样做一颗秒杀超算的芯片?》

而在边缘和端侧,为了确保实时响应,系统仍然要求“智能处理”的硬件部署。比如自动驾驶汽车,“L5自动驾驶需要大量的本地智能处理。通过移动互联网连接到云是不实际的。系统需要作出实时响应,处理一些突发状况,比如在发生危险时快速决策。那么车内本身就需要相当的智能处理算力。

但如前所述,作为机器智能系统的组成部分,本地仍然参与学习的过程,并且也能从云获取更多的知识。

“创新,还在以相当快的步伐继续,我们很快也会有全新的硬件平台,让机器学习领域的革新者们推进边界。现如今训练,并在此后推理的方式,会让位于机器智能系统。机器智能系统在部署之后,能够学习并持续进化。机器智能将戏剧性地改变计算。”Toon写道。

实际上,我们现如今看到越来越多的AI系统,本身就在朝着这个方向发展,即便可能在称呼上不叫“机器智能”或者延续了训练与推理的说法传统。不过当现在回顾开头那几段文字,是否感觉已经十分明朗?尤其是“系统将能够从经验中学习”,以及同时支持训练和推理。

责编:Amy Guan

本文为《电子工程专辑》2020年12月 刊杂志文章,版权所有,禁止转载。点击申请免费杂志订阅  

本文为EET电子工程专辑 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
黄烨锋
欧阳洋葱,编辑、上海记者,专注成像、移动与半导体,热爱理论技术研究。
  • 系统级芯片(SoC)的复杂设计选择:EDA和IP 在做系统级芯片(SoC)的设计规划时,需要考虑哪些主要因素?目前主流的SoC一般包括哪些功能模块或IP?有什么新的技术趋势值得关注?为SoC选择IP时主要基于什么标准或要求?如何实现差异化设计?当前SoC在设计验证方面遇到哪些挑战?有什么应对解决方案?AI在复杂的高性能SoC设计中能够发挥什么作用?未来设计趋势如何?
  • 地平线计划C轮融资总额超7亿美金,已完成C1轮融资 2020年12月22日,地平线公告已启动总额预计超过7亿美金的C轮融资,目前已完成由五源资本(原晨兴资本)、高瓴创投、今日资本联合领投的C1轮1.5亿美金融资,参与本轮融资的其他机构包括……
  • 系统级芯片(SoC)的复杂设计选择:片上网络(NoC) 什么是片上网络(NoC)?为什么系统级芯片(SoC)设计需要NoC?片上网络(NoC)相比传统的总线接口通信有什么优点和缺点?高性能的SoC设计在性能、功耗和尺寸方面面临哪些挑战? 5G、AI和自动驾驶等新兴应用对SoC设计提出了什么特别要求?
  • 智连大湾区,TE能提供哪些“智”与“连”的技术及服务? 今年是谋划“十四五”规划的关键之年,同时也正值深圳经济特区成立40周年,中国为应对国际形势的压力和全球疫情带来的影响,“新基建”的概念开始提出及其涉及范围逐步明确。在如此背景下,粤港澳大湾区(以下简称“大湾区”)作为我国开放程度最高、经济活力最强的市场之一,人工智能、大数据中心、5G基建等新项目在大湾区各大城市集群落地、全面开花。数字新基建已成为大湾区建设的新引擎。
  • 系统级芯片(SoC)的复杂设计选择:RISC-V处理器内核 在做系统级芯片(SoC)的设计规划时,需要考虑哪些主要因素?目前主流的SoC一般包括哪些功能模块或IP?有什么新的技术趋势值得关注?RISC-V与FPGA如何有机结合助力SoC设计?当前的SoC设计在性能、功耗和尺寸方面面临哪些挑战?有何解决方案?物联网和边缘计算等嵌入式系统对SoC设计提出了什么特别要求?
  • FPGA怎样一边做更低功耗,一边做高性能AI推断? 在便利店收银支付,收银员看到的与顾客看到的屏幕内容是不一样的,这就要求设备本身能够做到“双屏异显”。支持双屏异显方案的芯片,有的是价格太贵,有的是功能单一——只支持某种分辨率,而且性能存在不确定性,没有大规模量产的。但有一款芯片正好适用……
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了