向右滑动:上一篇 向左滑动:下一篇 我知道了
广告

8位浮点数成功训练出深度神经网络AI芯片

时间:2018-12-12 作者:Junko Yoshida 阅读:
IBM研究人员开发出使用8位浮点数成功训练DNN的数字AI芯片,同时可在深度学习模型上保持原有的准确性,而其模拟AI芯片也采用了8位精度的内存乘法与相变内存...

随着在美国旧金山举行的国际电子组件会议(IEDM)以及在加拿大蒙特利尔举行的神经信息处理系统大会(NeurlPS)双双启动,对于任何希望迎头赶上人工智能(AI)研发进展步伐的人来说,最近正是把握庞大机会的最佳时刻。

例如,IBM研究人员介绍其打造数字和模拟AI芯片的新AI途径。IBM声称其数字AI芯片首次展现“使用8位浮点数成功训练深度神经网络(DNN),同时在一系列深度学习模型和数据集上完整保持准确性(accuracy)。”

另外,IBM研究人员在IEDM还展示了一款模拟AI芯片,采用了8位精度(precision)的内存(in-memory)乘法以及相变内存。

IBM Research-Almaden副总裁兼实验室主任Jeffrey Welser在接受《EE Times》访问时指出,“我们确实认为目前进行中的这些工作——例如试图降低精度以提高性能提升并降低功率——对于持续推进AI非常重要。”。

这一点至关重要。Weiser解释说,因为这个世界正从“狭义AI”(narrow AI)转变为“广义AI”(broad AI),例如我们从“用AI在因特网上辨识猫”进展到“分析医学影像,或者我们希望能够将文本和成像信息整合在一起,以提出解决方案”。

他补充说:“所有这些更广泛的问题需要更大的神经网络、更大的数据集和多模态数据集...... (为此),我们需要改变架构和硬件来实现这一切。”

Weiser认为IBM发表的两篇论文可看出“一连串有趣的进展”,有助于使业界走向(广义AI)的未来。

市场研究公司Linley Group总裁兼首席分析师Linley Gwennap说:“机器学习继续迅速发展。现有硬件无法有效处理研究人员建构的最大神经网络,因此他们正在寻找各种新方法来提高性能和效率。”

Gwennap补充说,这些新的发展将会对于硬件供应商带来巨大压力,因为芯片公司“必须灵活、快速地在这个混乱的市场中生存”。

AI的GPU时代结束

IBM大胆预测GPU在AI领域的主导地位即将结束。

Welser说:“GPU能够为绘图处理进行大量的平行矩阵乘法运算。这种矩阵乘法恰巧与神经网络所需的完全相同。”在他看来,“这有点巧合,但它非常重要。因为没有那些(GPU),我们永远无法达到我们目前已在AI实现的性能。”但是,Welser补充说,“随着我们更能掌握关于如何实现AI的更多知识,目前也正着手寻找方法设计一种更高效的硬件。”

降低精度

提高效率的途径之一是降低AI处理所需的精度。

Welser解释说,“几年前我们开始意识到一个大方向是,虽然习惯于非常精确的计算——以32位计算浮点作为标准,甚至64位,才能为真正准确的计算类型倍增精度,但这一点在AI中并不一定非常重要。”

他强调,在AI中,“对于神经网络在意的是当你展示一个影像或单词时,它是否能得到正确的答案。当我们问它是猫还是狗时,它回答说是一只猫。如果答案正确,你并不一定会注意到其间进行的所有计算过程。”

理想情况下,AI应该模仿人眼。Welser说:“如果你从一扇起雾的窗子看出去,你看到一个人走在街上。这是一个低度定位的影象...但是你可能经常会说‘喔,那是我妈走过来了!’所以,只要你得到正确的答案,视觉影像是否正确精准其实是无关紧要的。”

他解释说,这就解释了AI处理中精度逐渐较低的趋势。

Welser继续说道:“对于32位计算,我必须在32位上进行计算。如果我们可以在16位上进行,那基本上只需要一半的计算能力,或者可能是芯片面积的一半甚至更少。如果你可以再降低至8位或4位,那就更好了。”他说,“所以,这让我在面积、功率、性能和吞吐量方面获得了巨大的胜利——我们能够以多快的速度完成这一切。”

IBM_trainingconfiguration.jpg

(来源:IBM Research)

然而,Welser坦承,“很长一段时间,我们认为我们必须持续使用32位精度进行AI培训,当时别无他法。”

2015年,IBM Research发表了针对传统CMOS技术的新型数据流相关文章,推出为AI模型训练与推论而降低精度的途径。IBM展示以16位精度的训练模型,其准确度约相当于32位训练模型,而不至于牺牲准确度。

从那时起,IBM观察到“降低精度的方法很快地被采纳为业界标准,16位训练和8位推论如今已经司空见惯,并促使新创公司和创投业者(VC)投资大量涌入,投入打造降低精度的AI芯片。”尽管存在这样一种新兴趋势,但由于人们需要保持模型的高准确度,因此,小于16位的“训练”几乎不可能实现。

如何实现?

Welser说IBM开发一连串让研究人员可应用于AI处理的方法,实现了这一目的。例如,他说,“我们确实有一部份以8位来做,有些部份采用16位进行累积,而其他部份则以不同组件实现,所以不至于失去精度。”

换句话说,比起普遍将8位计算应用于整个操作,IBM团队的研究成果更加复杂,但研究人员找到了各种方法组合,分别应用于流程的不同部份。

Welser证实,“没错,这完全正确。例如,我们现在可以使用8位进行所有的权重更新过程,但仍然使用16位进行一些加法和累积步骤过程。事实证明这非常重要,因为16位加法比16位乘法更容易,所以实际上以16位的方式执行它是有帮助的。”

也许更重要的是,正如Welser所指出的,IBM的研究成果关键在于“提出一种数据流架构,让数据以非常流畅的方式流经芯片,而且以这种方式运行最终也不至于造成瓶颈。”

最后,“我们证明您可以有效地使用8位浮点,以取得较过去人们使用16位或32位相同的准确度。”

8位操作的障碍?

Linley Group的Gwennap表示,最新的GPU和AI芯片支持使用IEEE定义格式的16位浮点(FP16)。

然而,他补充说,“尽管如此,大多数开发人员还在使用FP32训练神经网络。”他说,“8位FP的问题在于缺乏标准格式,只有几种可能的指数组合和有意义的尾数。在标准(IEEE或某些非正式协议)建立之前,芯片制造商将发现难以在硬件中有效实施。”

那么在商业世界多久才开始使用8位精度进行训练?Welser说目前还不得而知,因为“我们现在看到第一次使用16位技术的情况越来越多,但是产业界大部份还是着眼于32位…。”

然而,他强调说他并未看到任何降低精度的实际障碍,“只要我们能够显示出相同输出的结果。”他指出,从用户的角度来看,“如果芯片速度更快、耗功更低,价格更便宜,而且也能得到同样的答案,就没什么好计较的了。”

当然,在其下的软件基础设施修改必发挥作用。

Welser证实,“你必须拥有能够降低精度的软件或算法,使其得以正确执行。”由于现在所有的软件架构都是为使用GPU和32位而建构的,“所有的一切都必须为接受16位或8位而进行修改。”

在用户存取实际硬件之前,业界可能持续使用已知的内容。

8位精度的内存乘法

IBM在IEDM展示该公司所谓的8位精度内存乘法以及设计中的相变内存(PCM)。

IBM_in-memorycomputing.jpg

在IEDM上,IBM科学家发表了一项关于新型内存内运算(in-memory computing;IMC)装置的研究,它比起当今的商业技术达到了更低100-1000倍的运算能耗级。该组件非常适用于边缘AI应用,例如自动驾驶、医疗保健监控和安全性(来源:IBM Research)

工程界已经意识到,降低能耗的关键是尽量减少运算架构中出现数据必须从内存移至处理器进行运算的机会。这种移动需要耗负大量的时间和精力。

对于更高效AI处理的需求促使许多人致力于研究内存内运算。Mythic在追逐这一点的AI芯片新创公司中脱颖而出,但其后还可能出现更多竞争对手。

在Welser看来,模拟技术“很自然地适于边缘AI。」正如从运算发展史的观察,模拟运算需要低功耗,证明它具有高能效。但它也不准确。”Welser说:“这就是为什么数字运算最终胜过模拟运算。”

但是,Tirias Research首席分析师Kevin Krewell表示,模拟正在回归中,因为“内存内运算与模拟运算可以相互搭配。”他解释说:“内存数组保持神经网络权重,模拟组件则执行总和和触发。”

Krewell补充说,“挑战在于保持模拟的正确校准,以及过程和温度变化的准确性。此外,内存和模拟组件也不像数字组件那样扩展。”

权重是内存的阻值

同样地,Welser解释说,模拟运算中神经网络使用的权重是“存在于内存内部的阻值”。它们不必移入和移出,都是固定的。Welser说:“换句话说,由于采用内存内运算架构,内存单元兼作处理器,有效地实现了储存和运算的双重任务。”

然而,Welser所说的挑战是:“我们将要使用的是什么阻值状态?它能使我们在训练时将其设置为各种不同的阻值吗?它必须够准确才可用。”

Welser解释说,虽然数字AI硬件会降低精度,但模拟至今一直受到内部精度相对较低的限制,从而影响了模型精度。

在开发接近8位精度的能力时,IBM使用了相变内存(PCM)。Welser说,PCM长久以来一直用于模拟内存。在此情况下,“我们使用PCM来回储存更多不同的阻值。更重要的是,我们正使用一种新颖的架构。”

IBM的论文详细介绍在纯量乘法运算中实现8位精度的技术。该公司声称,这导致“以往的模拟芯片准确度提高了大约一倍,而且也比同类精度的数字架构功耗更低33倍”。

Gwennap坦言IBM已经在PCM上研究一段时间了,但他称之为“仅仅是一项研究计划”。

Gwennap认为这种PCM途径的最大挑战在于可制造性。“模拟特性因不同的晶体管以及产在线的不同芯片而异,这就是为什么大多数产业都使用较不易受这种变化影响的数字电路。”

《EE Times》向Linley Group和IBM分别询问了商用AI芯片(如Mythic)使用内存内运算架构的情况。Gwennap说:“Mythic似乎最接近于将这项技术投入生产,但即使如此也还需要至少一年的时间。”

IBM承认,“Mythic采用了一种专注于使用内存内运算的有趣方法。”然而,IBM也指出,Mythic的芯片“仅适用于推论应用”。

根据IBM发言人,IBM的不同之处是:“我们相信完整的AI解决方案需要加速推论和训练。我们正在开发可用于推论和训练的非挥发性内存组件,并使其发展得更成熟。”

(原文发表于ASPENCORE旗下EDN姐妹网站EETimes,参考链接:IBM Guns for 8-bit AI Breakthroughs,编译:Susan Hong,EET Taiwan)

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
Junko Yoshida
ASPENCORE全球联席总编辑,首席国际特派记者。曾任把口记者(beat reporter)和EE Times主编的Junko Yoshida现在把更多时间用来报道全球电子行业,尤其关注中国。 她的关注重点一直是新兴技术和商业模式,新一代消费电子产品往往诞生于此。 她现在正在增加对中国半导体制造商的报道,撰写关于晶圆厂和无晶圆厂制造商的规划。 此外,她还为EE Times的Designlines栏目提供汽车、物联网和无线/网络服务相关内容。 自1990年以来,她一直在为EE Times提供内容。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • 模拟与混合信号电路会否占领未来AI SoC高地? 随着摩尔定律的发展,过去30年的集成电路发展的最主要趋势是数字化。数字化设计是目前大型SoC的基本方法学,越来越多的模拟电路进入全数字时代,All Digital PLL, Digital LDO, Time-domain based ADC,Digital PA,数字化/二值化方法成为了克服模拟电路瓶颈的重要手段。然而“羞于见人”的模拟电路并非一无是处。
  • 一张订单的两面:从精准需求到精准供应 为了了解制造商们将如何应对下一波市场变化及行情,在管理供应链和渠道方面又会有哪些新策略,有芯电子今年向电子制造商、分销商/代理商、元器件原厂发出了三千多份问卷,涵盖通信、工控/仪表、消费电子、汽车电子、电力/能源等领域,最终获得了1614份有效问卷回复。其中从企业规模上来看,小微企业居多,从企业性质上来看,民企居多,与整个市场的结构较接近,反映了调查的严谨性与可靠性。
  • 地平线张永谦:AI在边缘侧落地背后的思考 “边缘侧智能设备大规模爆发的趋势,使数据成为如今AI芯片领域最大的挑战。”2019年11月7日,在由ASPENCORE《电子工程专辑》、《国际电子商情》和《电子技术设计》主办的“2019全球双峰会”上,地平线副总裁&AIOT芯片方案产品线总经理张永谦以“边缘AI芯片赋能行业,共建普惠AI时代”为题,介绍了地平线机器人在边缘AI芯片以及解决方案,以及地平线对AI在边缘侧落地背后的思考。
  • 从e-AI和SOTB两大技术看,如何通过技术创新实现业务模式 目前在各种领域当中都有AI的应用方案,但很多方案AI应用都取决于云端的计算能力。嵌入式系统对实时性的要求,会因为延时而出现滞后问题。在这样的环境下,嵌入式人工智能就能大显身手。
  • 安静!我要跟车子讲话... 随着CarPlay、Android Auto以及Echo Auto等平台渗透乘用车市场,车内语音识别技术预期将成为主流;但仍有一个答案未知的问题是:市场上有任何语音启动技术已经准备好随机应对车内的关键任务了吗?
  • 边缘AI大战一触即发 一场边缘AI大战正悄悄展开...每一家处理器供货商都将机器学习视为「金鸡母」,积极地调整自家公司策略,竞相为这个具有最大商机的领域——边缘AI提供加速特定工作负载的解决方案...
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告