中文 英语

开发人员转向模拟神经网络

用模拟电路和光子学代替数字电路可以提高性能和功率,但这并不是那么简单。

受欢迎程度

机器学习(毫升)的解决方案正在各种各样的行业中激增,但绝大多数的商业实现仍然依赖于数字逻辑的解决方案。

除了内存计算之外,模拟解决方案大多局限于大学和尝试神经形态计算.然而,这种情况正在开始改变。

“每个人都在关注这样一个事实:当你在数字中实现深度神经网络时,它们是如此的能量密集型,因为你有所有这些乘法和累积,它们是如此之深,以至于它们可以吸收大量的能量,”eelias Fallon说,他是自定义IC和PCB组的软件工程组主管节奏

一些人认为我们已经达到了数码时代的极限。的产品经理Sumit Vishwakarma说:“数字架构方法在解决深度神经网络MAC(乘法-累加)操作方面遇到了瓶颈。西门子EDA.“随着DNN尺寸的增加,重量获取操作会导致巨大的能源消耗。”

目前的模拟方法并没有试图定义一个全新的ML范式。相反,他们正在利用现有的基础设施和生态系统。但他们做的不是数字实现,而是模拟实现。

Aspinity首席执行官兼联合创始人托马斯•道尔表示:“过去50多年来,人们都在关注数字处理,这是有充分理由的。“数字化很容易设计、制造和编程。它非常灵活。模拟设备大多已沦为通讯设备。”

这正在被重新评估。该公司数字设计组研发、AI和ML解决方案总监Venki Venkatesh表示:“这又回到了过去的美好时光。Synopsys对此.“我们从模拟转向了数字,这消耗了更多的能量,但它提供了更多的稳定性。但现在我们又回到了原点。”

毫无疑问,是否有可能用模拟来做事情。“只要能生产出具有可编程响应的元素,这就是我们所需要的,”该公司高级技术人员Michael Kotelyanski说上的创新.真正的问题是,它是否能比数字技术更有效地完成。

关注ann
绝大多数神经网络在商业应用中被称为“人工神经网络”或“ann”。这与试图模仿大脑的神经形态网络形成了鲜明对比。ann没有生物模拟物,但它们提供了一种计算范式,允许有效的机器学习。

总的来说,人工神经网络的实现是数字化的。这允许技术的扩展,它提供了数字抽象带来的许多不同领域的简化。然而,最大的挑战是在训练和推理中使用的能量量——尤其是在边缘。

虽然不断努力开发更适合电池供电应用的精简架构,但进一步降低功耗仍然是一个目标。降低能耗的一种方法是使用模拟实现而不是数字实现。

模拟已经在两个领域进行了探索内存计算(IMC)和神经形态。但整合营销传播涉及到一个数字海洋中的模拟孤岛。与此同时,神经形态的实现往往与现有的框架和生态系统不同,这给市场带来了更大的挑战。此外,像BrainChip提供的、英特尔正在研究的尖峰神经网络,仍然使用数字技术。

相反,我们谈论的是一个完全的模拟实现,否则就是一个标准的ANN,使用许多相同的模型开发工具,就像今天常用的一样。不同之处在于训练的模型是以模拟方式而不是数字方式实现的。Lightmatter首席执行官尼克·哈里斯(Nick Harris)表示:“我们正在做传统的深度学习。“你可以在英伟达GPU上运行相同的算法。我们做到了。”

Aspinity的Doyle表示:“构建模拟机器学习模型与构建数字解决方案的方法类似。“我们通过PyTorch来帮助我们的机器学习团队构建模型,然后将模型编译到我们的硬件上。当你在PyTorch中设计模型时,它会考虑到我们的技术。”

目前有两种模拟方法。一种是更为明显的电子方法,即用模拟电路取代数字电路。另一种方法是用光子结构代替电子电路。

这两种方法都能降低功率。但相似之处就到此为止了,因为它们的实现截然不同。

电子模拟ann
当模拟实现所操作的原始数据也在模拟域中时,模拟实现特别有用。这将适用于许多传感器,比如带有模拟输出的麦克风。

Aspinity已经开始使用模拟程序来实现它的始终开启的唤醒词检测方案。它是基于这样一个事实,即89%的时间里,没有说话,更不用说说唤醒词了。道尔说:“80%到90%的边缘数据都是数字化的,可以在数字世界中查看。”“而且这与手头的任务无关。”

图1:呈现给语音激活单元的大部分声音是非语音的。来源:Aspinity

图1:呈现给语音激活单元的大部分声音是非语音的。来源:Aspinity

Aspinity最近发布了一个破窗检测算法。他说:“窗户真的破掉的情况非常罕见。”“所以如果你先把输入数字化,你就浪费了很多能量,而这种情况很少发生”。

在不替换整个音频链的情况下,模拟块充当始终在线的电路,用于扫描唤醒字。大多数时候,数字电路可以休眠。当模拟块检测到一个唤醒词时,它就可以唤醒音频链的其余部分,这些部分是数字的,以便在本地或云中处理命令的全部内容。

Doyle说:“数字元件的耗电量在不断提高,但仍然在毫安的范围内,对于始终在线的处理来说还是太多了。”“对于电池,我们必须接近零。”

图2:上图显示了一个典型的配置,其中所有的声音都是数字化的。在下图中,所有声音都首先通过模拟块运行。只有相关数据被发送到数字域,在被召唤之前,数字域一直处于睡眠状态。来源:Aspinity

图2:上图显示了一个典型的配置,其中所有的声音都是数字化的。在下图中,所有声音都首先通过模拟块运行。只有相关数据被发送到数字域,在被召唤之前,数字域一直处于睡眠状态。来源:Aspinity

分离特征提取
该模拟块包含模拟神经网络,但与数字领域中更常见的神经网络有显著区别。大多数常见的网络都有自己的特征识别,这些特征由网络提供。

“我们可以用神经网络进行特征提取,”格雷厄姆解释说。“但我们在很多情况下发现,以系统的方式获得这些功能会更快、更容易一些。”

在Aspinity的案例中,他们通过非神经模拟块进行特征提取。“我们做的第一件事是明确地在模拟域内提取特征,”Doyle说。“然后我们根据需要将其输入神经网络。”

图3:在输入模拟神经网络之前,在非神经模拟电路中提取特征。这些声音也可以被压缩并以“预滚”的形式发送到内存中,即发出唤醒词之前的声音。来源:Aspinity

图3:在输入模拟神经网络之前,在非神经模拟电路中提取特征。这些声音也可以被压缩并以“预滚”的形式发送到内存中,即发出唤醒词之前的声音。来源:Aspinity

模拟块看起来更像是一个现场可编程模拟阵列(FPAA)。Aspinity的Graham说:“我们有一个可重构的模拟和混合信号框架,用它我们可以创建任何我们想要的电路。”

但是,它并不包含用于实现的统一资源集。相反,资源以一种渐进式的方式布局,基于要完成的计算的性质。因此,当一个人沿着管道向下移动时,资源会发生变化,以适应进一步下游处理的变化性质。

格雷厄姆解释说:“我们不会说,‘我们只会有滤波器、放大器、运算放大器或电容器电路’,我们会改变我们正在做的事情,这样我们就可以在前进的道路上逐步做出更多的决定。”“在这条路线的某些地方,我们有小型神经网络,我们可以把它们组合在一起,创建更大的神经网络。”

这些资源的配置由设计软件完成。对于非神经部分,它可以与更常见的fpga使用的设计软件相媲美。对于神经网络,遵循标准的设计范式,在TensorFlow这样的框架中开发网络。当网络准备好实施时,它不是适应某种数字平台,而是适应模拟平台。

确切地说,乘法累加函数是如何实现的并没有公开,但它与IMC所做的并不相同。它仍然基于欧姆定律,但涉及运算放大器而不是存储单元。它可以通过软件命令进行高度可调。

自定义闪光-但不为IMC
Aspinity对他们的方法可能与IMC相混淆的事实很敏感。Aspinity联合创始人、首席战略官大卫•格雷厄姆(David Graham)表示:“我们在模拟领域进行乘法-累加,但不同之处在于,我们的框架始终保持模拟状态。”

可能更让人困惑的是,他们还开发了自己专有的flash变体,允许他们在浮动门中放置精确的值。基于flash的IMC使用类似的单元格,但与IMC不同的是,Aspinity的单元格并不直接参与计算。它们被用来调整模拟电路的配置来进行计算。

Graham说:“你可以调整偏移量,可以调整PVT变化,可以从一开始就排除不匹配。”

这些单元有标准的10年数据保留。考虑到它们要么是在制造过程中配置的,以调整值,要么是在下载新设计时配置的,耐久性不是一个重要的考虑因素。但是如果需要,可以在现场更新应用程序。

使这个应用程序对模拟有吸引力的是,声音是一个快速周期函数。如果传感器正在跟踪环境温度或气压之类的东西,其变化足够慢,以至于可以对数字实现进行空比循环,使其处于睡眠状态,除非唤醒以采样当前值。声音和其他声学和振动变化太快,因此无法发挥作用。这就是值得做模拟的地方。

与许多模拟电路一样,这也适用于更成熟的节点。但Aspinity说,如果有必要,向下到更激进的节点并没有什么困难。它还没有弄清楚未来是finFET、FD-SOI还是其他什么,但它说没有根本的限制。

在其当前版本中,该公司已经能够使用10µA或25µA进行始终在线的语音检测,如果存储用于预卷。

模拟问题
不过,在模拟设计方面还有很多工作要做。Alric Althoff,高级硬件安全工程师龟岛的逻辑,指出了一些关于模拟电路在侧信道和其他攻击下的脆弱性的担忧。虽然这是重要的考虑因素,但Aspinity回应说,这些主要是在无线电频率范围内的担忧,这远远超过了它使用的频率。Aspinity声称,芯片外不会检测到来自其信号的辐射。

当被问及为什么每个人都不这样做时,道尔简单地回答说:“这很难。”

我们也很难构建出比一个优秀的模拟工程师所能做的更好的工具。“数字化带来的工具和基础设施不容易用模拟来模仿。”Ashutosh Pandey,系统工程师和高级技术人员英飞凌

英飞凌RAM产品线内存解决方案应用工程和产品营销高级总监Ramesh Chettuvetty还指出,模拟电路针对应用和数据速率进行了优化。如果设计为高速率,就需要更高的功率,所以如果你想以较低的数据速率运行电路,效率就会较低。他说:“如果你以较低的数据速率运行系统,那么模拟就会消耗这些能量。”

最后,当你不可避免地过渡回到数字领域时,会有一些能量的回馈。该公司技术和战略副总裁Keith Schaub表示:“在某些时候,你将需要电力将模拟转换回数字效果显著.“这不是免费的。”

光子模拟ann
虽然模拟电子设备可以降低功耗,但电路本身仍然必须通电才能运行有源组件,并将电子推过连接整个设备的电线。这与光子学不同。

只要有足够强的激光和低损耗波导,计算就可以在“电路”中不需要能量的情况下以光子方式完成。(在光子学中,人们没有真正的电路,但在与电子学进行比较时,这样称呼它们是有帮助的。)

至少有三家公司正在采用这种方法——Lightmatter、Lightelligence和Luminous。

硅光子学最常被讨论的是它在高速互连中的价值。在这种情况下,唯一的目标是使波导一端的信号输入完整地到达另一端,这在光子学中更容易实现。

“在光子学中,没有电阻、电感或电容的概念,”哈里斯说。“如果你把一个方波放入波导中,它会给你一个方波。”

然而,对于ML,我们正在进行计算,而不仅仅是互连。Lightelligence公司工程副总裁莫里斯•斯坦曼表示:“我们正试图同时利用高效数据传输和计算的特性。”

计算更为复杂,因为光会在电路的不同部分从不同方向被分开。“你必须有相当高的光功率,才能在芯片上提供光子,”清华大学硅光子学副总裁Anthony Yu说GlobalFoundries

然而,激光能量构成了所需的所有能量。光所经过的计算路径不需要更多的能量。这就形成了一个低功耗系统。

“你还需要极低损耗的波导,”Yu补充道。“你谈论的(损耗)要求可能是光学互连的十分之一。”新材料正在评估,以提高电力性能的应用。

配置网络确实需要能量,但不是很多。哈里斯说:“控制调制的设置在持续的基础上消耗了微不足道的能量。”

没有复制硬件的并行性
颜色可以提供计算并行性。“在每种颜色中,我们都编码了一个完全独立的数据集,”哈里斯说。这种混合光将穿过网络,每种颜色在同一时间使用相同的电路得到自己的结果。“我们可以使用单一的乘法累加数组,同时在多个数据集上摊销能量和面积成本。如果有两种颜色,速度是原来的两倍;三种颜色,三倍的速度;64种颜色,64倍的速度。”

这可以用于批量处理大型数据集或同时为多个用户提供服务。“假设我有三个用户想把句子从英语变成德语,”哈里斯继续说。“每个用户将通过数组并发地完成计算。”

这增加了巨大的效率,因为它是高度并行的,而不需要并行电路。当被问及颜色通道是否会相互干扰时,哈里斯回答说:“如果你有三种颜色穿过同一个物体,它根本不会混淆颜色。”

在这种情况下,乘法-累加的方式与电子版本非常不同。虽然实现乘数的方法有很多,但马赫-曾德干涉仪(MZIs)似乎是目前最受欢迎的。MZI将一条光路分成两条,在每条光路上添加不同的相移。当重新组合时,干扰可以提供乘法。

图4:Mach-Zehnder干涉仪根据两条路径之间的相位差提供基本的乘法函数。来源:Lightmatter

图4:Mach-Zehnder干涉仪根据两条路径之间的相位差提供基本的乘法函数。来源:Lightmatter

改变相位差成为乘法的一部分。这是如何发生的尚不清楚,但Lightmatter已经写了一篇关于其工作原理的解释。哈里斯说,他们使用“一个标准的固态器件作为阵列计算元件”来实现相移。

他补充说:“这一点,加上其他组件的升级和设计优化,使商业产品的速度提高了2到10倍(取决于工作负载),比我们在热芯片[2020]上报告的测试芯片节能15倍。”

于注意到了这些路径上的速度。他说:“当你用Mach-Zehnder调制器做矢量乘法时,你就得到了一个极低功耗的光子计算机,延时非常低——整个过程只有几皮秒。”

ASIC伴奏
Lightmatter的完整系统需要一个在数字领域运行的配套ASIC。这两个芯片被封装在一起,数字芯片位于光子芯片之上。Harris说:“12nm ASIC的工作就像是光子计算机的协调器。”“权重就在它们所在MAC的上方,所以你可以在遍历各个层时迅速将权重重置为不同的值。”

此外,在ASIC中执行非线性激活函数。“关于模拟和光电子激活单元——看起来像s型函数的东西,有很多学术工作。但它并没有那么有用。这只是极少数的行动。”哈里斯说道。“所以我们把MAC结果转换回数字比特流,然后我们可以用数字电路对其进行操作。”

Lightelligence联合创始人兼首席技术官怀宇(Huaiyu孟)对此表示赞同。“光学非线性确实存在,”孟说。“但对于一款可用的产品,最好还是回到数字电子领域,因为不同的人使用不同的非线性。”

图5:一个ASIC被封装在Lightmatter的光子IC上。在左边,权重在ASIC中,并通过DAC驱动光子IC。在中间,ASIC提供累积和其他激活功能。右边是数字和光学芯片的3D包装。来源:Lightmatter

图5:一个ASIC被封装在Lightmatter的光子IC上。在左边,权重在ASIC中,并通过DAC驱动光子IC。在中间,ASIC提供累积和其他激活功能。右边是数字和光学芯片的3D包装。来源:Lightmatter

光子学也可以提供稳定性的好处。Harris指出:“在不匹配和环境波动方面,光学具有一些显著的优势。“这是我们能够在巨大的神经网络阵列上实现近99% 32位浮点精度的主要原因。”

噪音情况也不同。哈里斯说:“如果你制造一个模拟电子处理器,你就必须处处处理热噪声。”“对于光学,你就没有这个问题。你必须处理光子射噪声——电磁场的量子化——但它真的好得多。光子学也不会产生串扰,因为光子线之间不会有电容耦合。”

此外,如果需要,它更容易拨号供电。哈里斯说:“利用光子学,你可以不断增加光强度。”“无论是模拟电子设备还是数字电子设备,电压都不能超过1伏,否则会把晶体管炸飞。”

最小的流程更改
这些光子电路的实现因素之一是,它们不是建立在一个从头开始开发的新的光子平台上。Lightmatter与GlobalFoundries合作,需要适度开发一些新结构和可能的新材料。事实上,他们与现有的光子PDK保持了密切的关系,这意味着更容易推出一种快速商业化的芯片。

图6:左为ASIC布局图;右侧为光子IC布局图。来源:Lightmatter

图6:左为ASIC布局图;右侧为光子IC布局图。来源:Lightmatter

他说:“我们正在建造一台计算机,而不是基于一些低级别的试验线。”“我们正在建造一个300毫米的工厂,为我们其他重型工业计算机生产计算部件。很多人都想从零开始发明一种全新的光子结构。但我们面临的挑战是,我们必须在我们为光学互连所做的高产量部分与新结构的引入之间找到妥协。”

在保持现有生产流程的同时,有选择地进行改进可能会有所帮助。孟指出:“我们希望看到一些新的东西,比如更高水平的集成,以及更高效的移相器,这需要新的处理可能性或新材料。”

考虑到光子特性是以微米而不是纳米为单位来测量的,光子芯片似乎要比电子芯片大得多。但事实未必如此。颜色多路复用能力本身提供了很大的计算密度。但即使是一场接一场的比赛,情况可能也没那么糟。哈里斯说:“我们的光子倍增-累积的面积与7nm的等效面积相同。”

孟表示同意:“实际的规模比较真的不是1000倍。”

电路缩放也有一些实际的限制。孟提醒说:“光的波长是有自然限制的,只有一微米量级,这取决于你所处的媒体类型。”“因此,制造比一微米小得多的光学元件没有意义。”

需要明确的是,光子学并不是所有电路的灵丹妙药。孟说:“当我们的计算基于逻辑时,电子是更好的载体。”“然而,大多数机器学习工作负载都不是逻辑。这是线性运算。”

当然,所有这些模拟活动并不意味着人工智能数字化的终结,即使是利用模拟的解决方案。“你可以优化你的数字和模拟部分,以降低整体功耗,”英飞凌的Pandey说,并指出这两者都将出现。

不过,数字模拟能占据多少地盘还有待观察。

相关的
编译和优化神经网络
低功耗,提高性能的推理。
无矩阵数学的神经网络
加速人工智能和提高效率的不同方法。
理解新的边缘推断架构
如何驾驭大量令人困惑的选择和术语。



1评论

凯文·卡梅隆 说:

很遗憾Verilog-AMS是一个被忽视的标准,在Accellera被遗弃,而IEEE P1800的努力(SystemVerilog)继续忽视所有的模拟——如果你想构建巨大的模拟(AI)芯片,甚至使用AI为你设计它们,它实际上可能是有用的……

留下回复


(注:此名称将公开显示)

Baidu