中文 英语

在更快的隐性成本,低功耗的人工智能系统

权衡在AI /毫升的设计可以影响从老化可靠性,但并不总是以可预测的方式。

受欢迎程度

芯片制造商正在建立数量级的更好的性能和能源效率为智能设备,但要实现这些目标他们也正在权衡,将产生深远持久的,在某些情况下未知影响。

这些活动的直接结果推动智能边缘,这需要过程,分类和管理大规模增加数据从传感器集成到几乎所有的电子产品。有数百亿连接设备,许多与多个传感器实时收集数据。航运所有数据和云是不切实际的。没有足够的带宽。即使有,它需要太多太多的精力和成本。

所以芯片制造商已经磨练和培养了他们对提高效率和性能的优势,利用多个已知的和新的方法来加速,减少电力的人工智能/毫升/戴斯。莱纳姆:系统。其中包括:

  • 降低了精度。在人工智能芯片产生的数学分布计算,而不是固定的数字。分布的宽松,结果不准确,需要更少的能量做处理。
  • 更好的数据。减少需要处理的数据量可以显著提高性能和能源效率。这要求能够缩小收集什么来源,或快速筛选数据的能力,以确定什么是有价值的,什么不是,有时使用多个阶段的加工提炼数据。
  • 数据驱动架构。与传统的处理器设计,AI系统依靠更快的处理元素之间的数据流和记忆,和缩短距离的数据需要旅行。
  • 定制解决方案。算法可以稀疏的量化,加速器可以调整到特定的算法,可以提供100 x或更多改善性能相同或更少的力量。

这些方法是有效的,但他们都有一个关联的成本。甚至在某些情况下,成本不是完全理解,因为科技产业刚刚开始接受人工智能,和如何使用它。这并没有阻止公司添加人工智能无处不在,。有一个疯狂的活动建立某种形式的人工智能汽车等边缘设备,消费类电子产品,医疗设备,和备用服务器上针对尚未命名层次跨越从“附近”到“远”优势。

精度
对于人工智能系统,精度大致相当于抽象水平的工具。高级合成,例如,整个系统可以在一个非常高水平的设计和修改的速度远远超过在寄存器传输级。但这只是一个粗略的轮廓的芯片会是什么样子。

所不同的是,在人工智能系统中,这些足以让一些更高层次的抽象的目的,如检测运动在一个安全系统。通常是伴随着系统提供更高的精度,但代价是降低速度或更高的权力。

这不是一个固定的公式,结果并不总是如你所想。圣地亚哥加州大学的研究人员发现混合,通过高精度的结果精度结果在寻找新材料,他们实际上甚至最高精度系统的准确性提高了30%到40%。

“有时候有很便宜的方式来获得大量的数据不是很准确,并有非常昂贵的方式来获得非常精确的数据,“说Shyue萍Ong nano-engineering加州大学圣地亚哥分校教授。“你可以把这两个数据源。您可以使用非常大的数据集,这不是很准确,但它证明了机器学习模型的底层架构,工作更小的数据来做出更准确的预测。在我们的例子中,我们按顺序不这样做。我们结合数据流。”

Ong说这不仅仅是限于两个数据流。它可能包括五个或更多不同类型的数据。从理论上讲,没有限制,但流越多越好。

面临的挑战是理解和量化精度水平不同,和了解系统使用数据在不同级别的准确性将网格。所以虽然为材料工程工作,它可能不工作在一个医疗设备或一辆车,两个不同精度级别可以创建错误的结果。

说:“这是一个开放的问题,罗伯•艾特肯手臂的家伙。“如果你有一个系统给定的精度,和另一个系统具有不同程度的准确性,总体精度取决于相互独立的两种方法是,什么你使用结合两个机制。在图像识别这是很容易理解,但它是困难的汽车应用程序有雷达数据和相机数据。他们是相互独立的,但他们的精度依赖于外部因素。如果雷达说,这是一只猫,和相机什么也没有说,如果天黑之后你会假设雷达是正确的。但是如果下雨,那么也许相机是正确的。”

这可能是解决与冗余的相机和计算,但这需要更多的处理能力和更多的重量,从而减少了距离一个电动汽车可以乘坐一次充电,增加车辆的总体成本。“现在你必须决定如果补偿是值得的,还是更好的运用经验法则大部分时间因为你足够的目的,”艾特肯说。

这是正在考虑的众多方法中的一种。“有许多旋钮,正在研究,包括lower-precision推理(二元、三元)和稀疏显著减少计算和内存占用,”尼克倪说,人工智能和软件产品营销主管赛灵思公司。“我们已经证明/ 10 x加速使用稀疏模型运行基于fpga实现稀疏向量engine DSA。但有些稀疏模型上运行很糟糕——他们经常减慢——cpu、gpu和人工智能芯片,他们中的许多人被设计为运行传统的“密集”人工智能模型”。

更好的数据,但不一定
另一种方法是提高数据处理的质量放在第一位。这通常都是用一个更大的数据集。总的原则是,数据越多越好,但人们越来越认识到,并不是一定是正确的。只有收集正确的数据,或通过智能消除无用的数据,效率和性能在一个或多个系统可以大大提高。这是一个非常不同的方式看着稀疏,而且需要使用情报源或在多个阶段。

“迄今为止最好的方法提高功率效率不是计算,”史蒂文说哇,Rambus研究员、著名的发明家。“有绝对大增益如果你可以排除不需要的信息。另一种方式,人们谈论这样做,有很多的工作在这个领域——稀疏。一旦你有一个培训神经网络模型中,考虑这个问题的方式是神经网络是由节点,神经元和它们之间的连接。这真是一种multiply-accumulate数学运算。对所谓的权重相乘。它只是一个数与两个神经元之间的联系。如果该连接的重量是非常,非常小的或接近零,你可以四舍五入为零,在这种情况下,乘以权重值的零是一样的没有做任何工作。所以人们引入稀疏首先训练网络,然后看看重量值,他们只是说,“好吧,如果他们足够接近零,我也许能说它是零。的另一种方式的驱动系统的工作。”

这里的挑战是了解被留下。复杂系统的系统涉及的关键任务或高安全性的应用程序时,做这样的假设会导致严重的问题。在别人,它可能会被忽视。但在这种情况下,多个系统进行交互,影响是未知的。随着时间的推移和多个系统组合由于不同的预期寿命,未知数量的增加。

体系结构
最大的一个旋钮将性能和权力在AI系统设计算法的硬件,以充分利用尽可能少的浪费周期。在软件方面,这涉及到能够将任何可能的合并到单个multiply-accumulate函数。问题是,工具和度量对于每一个是不同的,跨学科和理解因果关系是一个挑战,从来没有完全解决。

“软件是一个重要组成部分,和你能做什么在软件有很大的影响在硬件,你能做什么”表示阿伦•Venkatachar AI和中央工程的副总裁Synopsys对此。“很多时候你不需要那么多节点。利用软件领域可以帮助实现这一目标所需的性能和分区。这需要架构的一部分,权衡你的力量。”

IBM,像大多数大型系统公司,从头设计定制系统。“我们的目标是将算法转化为体系结构和电路,”穆克什哈雷说,混合云在IBM研究的副总裁。“我们已经更关注深度学习工作负载。对我们来说,深度学习是最重要的人工智能工作负载的一部分,并要求理解数学和如何开发一个基于这个架构。我们一直致力于开发构建块在硬件和软件开发人员编写代码不必担心硬件。我们开发了一套共同的构建模块和工具。”

哈雷说,目标是提高计算效率1000倍的超过10年专注于芯片架构,异构集成和包逼近技术在内存和接近AI加速器。该公司还计划部署使用3 nm模拟人工智能技术,在重量和一个小MAC存储在记忆本身。

这些讨论在设计世界的十年,和IBM不是独自一人。但开展新技术并不总是按照计划进行。有很多创业公司致力于专业AI加速器芯片,其中一些被推迟由于几乎不断变化的算法。这把焦点集中在可编程的加速器,它本质上是低于一个优化的ASIC。但损失速度需要权衡对一些设备的长寿命和性能的不断退化加速器不能适应算法在这段时间内的变化。

“大多数现代先进的人工智能模型仍为大规模数据中心部署,是具有挑战性的适应能力/ thermal-constrained边缘设备实时性能,同时保持“Xilinx的倪说。“此外,模型的研究还远未完成,并不断创新。正因为如此,最新的硬件适应性模型实现基于人工智能的节能产品是至关重要的。虽然CPU、GPU和人工智能芯片基本上都是固定的硬件,在你需要依靠软件优化,fpga允许你与一个新的特定于域的架构完全重新配置硬件(DSA)是专为最新的模型。事实上,我们发现,重要的是要定期更新DSA,理想情况下季度,留下来的最优性能和能源效率。”

其他人也同意。“可重构硬件平台允许所需的灵活性和自定义升级和分化不需要重建,“Raik Brinkmann说的首席执行官OneSpin解决方案。“异构计算环境包括软件可编程引擎,加速器,为实现平台和可编程逻辑是必不可少的重构性以及会议低延迟、低功耗、高性能和能力要求。这些复杂的系统是昂贵的开发可以做任何扩展硬件的生命而仍然保持定制将至关重要。”

定制和共性
不过,这取决于应用程序的特定目标市场,尤其是当涉及到设备连接到一个电池。

“这取决于你在哪里在边缘,”Frank Schirrmeister说,高级组的解决方案营销总监节奏。“某些事情你不想改变每一分钟,但虚拟优化是真实的。人们能做的一个工作负载优化所需的规模,这可能是超大型的计算数据中心,他们将需要适应这些系统工作负载”。

定制可能会涉及多个芯片,同一个包内或使用一些高速互连连接方案。“所以你实际上提供芯片在一个非常复杂的水平不做设计就在芯片级,“Schirrmeister说。“你现在要设计组装,使用3 d-ic技术组装基于性能。这是发生在一个较高的复杂性水平。”


图1:特定领域的人工智能系统。来源:节奏

这些设备还包括重构性作为设计的一部分,因为他们是昂贵的构建和定制,变化如此之快,当系统包含这些芯片带到市场,他们可能已经过时了。对于一些消费产品,上市时间可能长达两年。与汽车或医疗设备,可只要5年。开发周期的过程中,算法可能改变了几十次。

挑战在于如何平衡定制,可以添加数量级的提高性能相同或更少的力量,反对这些快速变化。这个解决方案似乎是在体系结构中可编程性和灵活性的结合。

“如果你看看类似的医学影像企业优势,你需要高吞吐量,低功率,测量精度高,“说杰夫•泰特的首席执行官Flex Logix。“首先,你需要一个比一个GPU的体系结构。你需要更细的粒度。而不是一个大矩阵乘法器中,我们使用一维张量处理器是模块化的,所以可以把它们以不同的方式来做不同的运算和矩阵的应用。这需要一个可编程互连。最后我们计算内存减少延迟和能力非常接近。”

内存访问中发挥着关键作用,。“所有的计算发生在静态存储器,我们使用动态随机存取记忆体为权重。YOLOv3,有6200万int8权重。你需要这些权重的芯片,这样DRAM从未在性能的道路。他们被加载到存储器芯片。当他们都装,当先前的计算完成,然后切换到使用新的权重计算进来了。我们把他们的背景而我们做其他计算。”

有时这些权重是重用,每一层都有一组不同的权重。但这背后的主要思想是,并不是一切都是使用所有的时间,而不是每样东西都要存储在相同的死亡。

手臂一直看着效率从不同的方面,使用共性作为一个起点。“有些类有类似结构的神经网络,”艾特肯说。”所以即使有一百万个应用程序,你只有少数不同的结构。随着时间的推移,他们会发散,未来我们希望有一个合理的神经网络结构。但是当你得到更多的随着时间的推移,你可以预测他们的进化,。”

这些领域之一是运动的数据。首先它可以移动越少,距离越短,它必须移动,所需的结果和权力越少越快。

“数据的运动是一个非常大的部分功率预算这些天,“说Rambus吸引。“垂直叠加可以缓解。它不是没有自己的挑战。所以有问题管理上升暖气流,可制造性问题,问题来自不同制造商的试图合并硅片在堆栈。这些都是必须解决的事情,但是有一个好处,如果可能发生。”


图2:记忆的选择如何影响力量。来源:Rambus

有其他影响。电路是利用越多,密集的热,越难删除和电路年龄越快。最小化的处理可以延长整个系统的寿命。

“如果我们可以派小片的一样,因为我们不需要电力驱动数据在更远的距离,并帮助长期可靠性,因为你看不到大梯度的温度波动和你看不到高功率或高电压相关的设备,”吴表示。“但另一方面,你在靠近对方,这些设备和内存不喜欢热。另一方面,一个处理器通常喜欢燃烧功率来获得更多的性能。”

设计成本上升
这个谜题的另一块涉及时间的元素。虽然有很多关注传统的可靠性冯·诺依曼在长寿命设计,有人工智能系统的太少。这不仅是因为这项技术被应用到新的应用程序。AI系统都是出了名地不透明,可以随时间而变化的方式并不完全理解。

“挑战是了解测量,如何测量它,和要做什么,确保你有一个优化的系统,“安普萨哈说,市场开发经理西门子EDA。“你可以测试多少时间访问数据和处理数据的速度有多快,但这是非常不同于传统的半导体的设计。一个模型的架构,优化不一定是相同的。你可能有非常不同的数据类型,和单元性能不是系统性能一样重要。”

这影响如何以及在人工智能分区设计。“当你处理硬件软件合作设计,您需要了解哪些部分与哪些系统的一部分,”萨哈说。“一些公司使用eFPGAs对于这个。一些硬件和软件都是分区。你需要能够理解这个高水平的抽象和做很多设计空间探索微体系结构和管道的数据。这是一个系统,如果你看一辆车的体系结构,例如,SoC架构取决于车辆的整体架构和总体系统性能。但这里有另一个问题。硅设计通常需要两年,当你使用架构和优化性能你可以回去再更新设计。”

这个决定变得更复杂的设计是身体分成multi-chip包,萨哈指出。

人工智能,人工智能
使用人工智能技术也有实际的限制。什么工作在一个情况下或市场可能不会工作在另一个,甚至是证明工作的地方可能会有限制,仍在定义。这是明显的随着芯片行业开始利用人工智能基于广泛的各种设计和制造过程的混合数据类型和来源。

“我们实现一些人工智能技术到当前检验的解决方案,我们称之为AI ADT (anti-diffract技术),”戴蒙蔡说,检验产品管理主管上的创新。“所以我们可以提高灵敏度较高的权力,但我们也可以减少噪音,伴随而来。所以AI ADC可以帮助我们改善缺陷的分类。没有人工智能图像技术,我们将使用一个非常简单的属性告诉,这是一个,这是粒子。纯洁的缺陷,通常我们只能达到60%左右,这意味着另一个40%仍然需要人类的审查或SEM(扫描电子显微镜)审查。这需要大量的时间。人工智能,我们可以达到85%以上缺陷纯度和精度与传统的传统形象比较技术相比,在某些情况下我们可以做95%。这意味着客户可以减少运营商的数量和SEM审查时间和提高生产力。但是如果我们不能看到一个缺陷brightfield或暗视野,AI不能帮助。”

在其他情况下,结果可能会出乎意料的好,即使获得结果的过程不是很好理解。

“最有趣的一个方面,我们要做的是我们要理解先进的之间的相关性的一些让其它计量过程完成后,生成的数据和结果从机器学习和人工智能算法,使用数据从传感器和进程内的信号,”大卫说油炸,计算产品的副总裁林的研究。“也许没有理由,传感器数据关联或者是一个很好的代理让其它计量数据。但是随着机器学习和人工智能,我们可以找到隐藏的信号。我们可以确定一些传感器在给定室,这真的不应该有任何影响过程的结果,实际上是测量的最终结果。我们学习如何解释复杂的信号来自不同传感器,这样我们可以执行实时现场过程控制,即使在纸上我们没有闭合表达式解释为什么我们会这么做。”

结论
芯片行业仍处于早期阶段的理解AI是如何工作和如何最好地使用它为特定应用程序和工作负载。第一步是让它工作,就将它移出数据中心,然后以提高系统的效率。

不过,还不清楚什么是这些系统如何与其他系统工作,各种节能方法的影响会是什么,以及这些系统最终将接口与其他系统在没有人类在中间。在某些情况下,精度一直是出人意料的改善,而在其他结果是泥泞的,在最好的情况下。但是没有回头路可走,行业将不得不开始共享数据和结果来理解的好处和局限性安装人工智能无处不在。这是一个完全不同的方法来计算,它同样需要一个不同的方式为企业进行交互,以推进这项技术没有重大失误。

相关的
新用途的人工智能
大的功率和性能的改善来自低级情报。



1评论

董事总经理马德斯Hommelgaard MemXcell 说:

AI Compute-in-Memory解决方案感兴趣我会鼓励审查Stefan Cosemans博士在2020年ESSCIRC或他2019年IEDM有关此主题的论文。Cosemans博士给了一个很好的洞察架构和实现的根本问题。他的分析包括组件精度的影响(dac, adc和权重)和non-idealities,像线电阻如何影响数组存储单元选择和精度。

留下一个回复


(注意:这个名字会显示公开)

Baidu