文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

每次矩阵相乘用不到一个光子,手写数字识别准度超90%,光学神经网络效率提升数个量级

2024-12-03 04:34

关注

当前,深度学习在越来越多的任务上超越了人类,涉及的领域包括游戏、自然语言翻译、医学图像分析。然而,电子处理器上训练和运行深度神经网络的高能量成本阻碍了深度学习的进步空间。因此,光学神经网络代替深度学习物理平台的可行性受到了广泛的关注。

理论上,光学神经网络比部署在常规数字计算机上的神经网络具有更高的能源效率。在最近的一项研究中,来自美国康奈尔大学等的研究者们证明了,光学神经网络可实现在手写数字分类上的极高准确度:其中,在权重相乘中使用约 3.2 个检测到的光子使得准确度达到了 99%,而仅使用约 0.64 个光子(约 2.4×10^-19 J 光能)就能达到 90%以上的准确度。

论文链接:https://arxiv.org/pdf/2104.13467.pdf

该研究的实验结果是通过自定义的自由空间光学处理器所实现的,该处理器可以执行大规模并行矩阵矢量乘法运算,最多可同时执行约 50 万次标量(权重)乘法。

使用市售的光学组件和标准的神经网络训练方法,光学神经网络可以在标准量子极限附近通过极低的光功率达到很高的精度。这样的结果证明了低光功率操作的原理,并为实现光学处理器开辟了一条道路:只要仔细设计用于数据存储和控制的电子系统,每个标量乘法只需要 10^-16 J 的总能量,这要比当前的数字处理器高效好几个数量级。

光学矩阵向量乘法器的实验仪器配置。a 为光学装置原理图,b 为与原理图相对应的主要实验仪器。

大规模光学矩阵向量相乘

在光学矩阵矢量乘法器中实现能量优势的关键是尽可能放大要相乘的矩阵和向量。被放大后,大规模的乘法和累加操作就可以完全在光学领域并行执行,而且电子和光信号之间的转换成本有缓冲空间。在光学中,有几种不同的方法来实现并行操作:波长多路复用、光子中的集成电路空间多路复用和 3D 自由空间光学处理器中的空间多路复用。

迄今为止,在所有多路复用方法和架构中,模拟 ONN 都使用较小的向量 - 向量点积(作为实现卷积层和完全连层的基本操作)或矩阵向量乘法(用于实现完全连接的层),将向量限制最多 64 维(远低于 10^3),这也是光处理器能耗高于理论预测的根本原因。

因此,运用了可以进行大规模矩阵矢量乘法的 3D 自由空间光学处理器,研究者构建了如下图 a 所示的 ONN 架构,用每次标量相乘少于一个光子进行图片分类,达到了 ONN 的量子限制理论效率峰值。

研究者设计和构造的光学处理器使用以下方案执行矩阵向量乘法图片:

矩阵向量乘法是通过三个物理步骤计算的:

当光通过设置,矩阵向量乘法中涉及的所有标量乘法和加法被并行计算完成。向量元素在光强度中的编码将设置限为使用矩阵和具有非负元素的向量执行矩阵向量乘法。而且,该系统还可以用于对具有正负的元素的矩阵和向量执行矩阵向量乘法,方法是使用偏移量和缩放比例将计算转换为仅涉及非负数的矩阵向量乘法。

对于系统计算的每个向量 - 向量点积,将与逐项积相对应的空间模式聚焦到单个检测器上,来进行逐项积的求和。因此,检测器的输出与点积答案成正比,其信噪比(SNR)在散粒噪声极限下缩放为√N。如果向量足够大,那么即使每个空间模式的平均光子数都远小于 1,撞击到检测器上的光子总数也可能远远大于 1,因此正如图 1c 所示,精确地读出了点积答案是可能的。

亚光子点积的精度

为了了解系统在低光功耗情况下的实际性能,研究者在调整光子的数量的同时描述其准确性。在第一个表征实验中,研究者计算了随机选择的向量对的点积(图 2a),将通过点积计算得到的表征结果直接应用于通用矩阵向量乘法的设置(看作向量 - 向量点积计算)。

而点积计算的答案是标量,因此只需使用单个检测器,编码点积答案的光信号由能够分辨单个光子的灵敏光电检测器测量。通过改变检测器的积分时间并在 OLED 显示后立即插入中性滤光片,可以控制每个点积所使用的光子数。

如上图 2b 所示,为了证明设置可以基于大尺寸向量使用每个标量乘积少于 1 个光子的计算,研究者测量了尺寸约为 50 万的向量之间点积的数值精度。每个标量乘法 0.001 个光子的情况下,测得的误差约为 6%,导致此误差的主要因素是检测器的散粒噪声。随着增加所使用的光子数量,误差逐渐减小,直到在每次乘法 2 个或以上光子时达到大约 0.2%的最小误差。

为了使实验获得的模拟数字精度与数字处理器中的数字精度之间能够进行对比,研究者将每个测得的模拟误差百分比解释为对应于计算出的点积答案的有效位精度。使用度量噪声等效位的模拟 RMS 误差 6%对应于 4 位,而 0.2%RMS 误差则对应于大约 9 位。

研究者还证实了,当每个标量乘法使用较少数量的光子时,可以计算出较短向量之间的点积(图 2c)。对于每次乘法范围为 0.001 至 0.1 个光子的光子预算,无论所测试的所有向量有多大,数值误差都由散粒噪声决定。当使用的光子数量足够大时,误差不再由散粒噪声控制,这与图 2b 中所示的单向量大小结果一致。对于测试的每个光子预算,较大向量之间的点积误差较低。这可能是因为较大向量之间的点积涉及了更大量项的有效平均。

使用亚光子乘法的 ONN

由于使用非常有限的光子预算,导致了乘法误差。为了确定 ONN 可以容忍多少误差,研究者运行经过训练的神经网络,并根据使用的光子数量来测量分类精度。

如下图 3a 所示,研究者将带有 MNIST 数据集的手写数字分类作为基准任务,并训练了一个具有用于低精度推理硬件(量化感知训练)的反向传播的四层全连接多层感知器(MLP)。

研究者首先评估了 MNIST 数据集中 5 个不同光子预算下的前 130 个测试图像:每个标量乘法的光子分别为 0.03、0.16、0.32、0.64 和 3.2 个光子(图 3b 中间图橙色点)。

然后他们发现了每次乘法使用 3.2 个光子会导致~ 99%的分类精度(图 3b 右上),几乎与在数字计算机上运行的同一训练过的神经网络的精度(99%)相同。在亚光子状态下,每个乘法使用 0.64 个光子,ONN 达到大于 90%的分类精度(图 3b 中上)。

实验结果与遭受散粒噪声的 ONN 所执行的同一神经网络的仿真结果非常吻合(图 3b 中间面板,深蓝色线)。如图 3b 所示,为了达到 99%的精度,每次推断手写数字所检测到的总光能约为 1 pJ。对于这些实验中使用的权重矩阵,平均 SLM 透射率约为 46%。

因此,当考虑到 SLM 不可避免的损耗时,每次推断所需的总光能约为 2.2 pJ。而 1 pJ 接近电子处理器中仅用于一个标量乘法的能量,而研究者的模型每次推断需要 89,400 标量乘法。

康奈尔大学的研究者使用标准的神经网络模型架构和训练技术,无须执行任何重新训练就可以运行模型。软件和硬件开发的成功分离也表明,研究者的光学神经网络(ONN )在无需对 ML 软件的工作流程进行任何重大更改的条件下,可以替代其他更传统的神经网络加速器硬件。

同时,这些研究结果表明,光学神经网络在原理上比电子神经网络具有更多基本的能量优势。光学神经网络可以在光子预算体制下运行,其中标准量子极限(即光学散粒噪声)决定了可达到的精度。

 

来源:机器之心内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯