Science | 颠覆AI:光子芯片反向传播
撰稿:Philip(香港中文大学,博士生)
然而,要通过光子处理器实现上述的应用,需要在光子神经网络中进行完整的神经网络训练,包括正向传播和反向传播。然而,由于现有技术限制,光子神经网络主要只是用于推理(已经训练好的模型对新数据进行预测,这包含正向传播过程),而无法进行训练(需要正向传播和反向传播两个过程)。所以目前的光子处理器主要还是先利用数字处理器(GPU, TPU等)对神经网络模型进行训练,再把训练好的参数部署到光子处理器上进行推理。现在,研究者们成功在光子神经网络上实现了反向传播,这意味着光子神经网络不仅可以进行推理,也可以进行训练。
近期,斯坦福大学和米兰理工大学的研究人员们提出了一种新的片上训练算法,成功在光子神经网络上实现了反向传播算法,这意味着光子神经网络不仅可以进行推理,也可以进行训练。
该成果近期以“Experimentally realized in situ backpropagation for deep learning in photonic neural neTWorks”为题发表在Science期刊上。
什么是反向传播
在理解反向传播之前,我们先需要了解一下神经网络的基础知识。神经网络是一种模仿人脑工作原理的人工计算模型,它由多个层次的节点(或称神经元)组成。这些节点通过权重(即连接强度)连接在一起。在神经网络中,输入数据被送入网络的第一层,然后逐层向前传播,直到输出层。在这个过程中,每个节点都会对其接收到的输入数据进行处理,并将处理结果传递给下一层的节点。
然而,当我们首次构建一个神经网络时,这些连接的权重都是随机设置的,这意味着网络的预测结果可能并不准确。为了改进这个情况,我们需要使用一种方法来调整网络中的权重,使得它能够更准确地进行预测。而这就是反向传播要做的事情。
“反向传播”描述的就是这样一种过程:首先,我们需要给神经网络提供一些输入数据,让它得到输出结果。然后,我们通过损失函数比较这个输出结果与目标结果(也就是我们所期望的正确答案)的差异,这个差异被称为“误差”或“损失”。接下来,这个误差会被送回网络,从输出层开始逐层反向传播,同时根据误差的大小和方向来调整每个节点的权重。这个过程会被重复多次,直到网络的输出值能达到满意的程度。
光子神经网络使用光信号进行计算和传输数据,因此在进行反向传播时,误差信号也是以光信号的形式反向传播的。此外,由于光子设备只能执行有限的操作,因此在计算权重时,需要通过在芯片上实施复杂的物理模拟。这也是为什么在实现光反向传播时,需要专门设计和构建可以支持这种操作的光子芯片的原因。
简单来说,“反向传播”就是通过计算预测误差并将其反向传播到网络中,逐步调整权重以减少误差的过程。
这个新的算法利用光信号对训练数据进行编码,经过光子神经网络后计算输出的误差信号。然后,将该误差信号反向传播并与原始输入信号进行光学干涉,从而确定网络连接的权重调整,以提高预测性能。这一突破意味着利用光子处理器进行人工智能模型的训练变得可行,而不仅仅局限于推理阶段。通过在光子芯片上实现训练能力,可以显著减少能源消耗并提高计算速度,从而加快人工智能技术的发展。
该新芯片具有与众不同之处:它在两端均配备了光源和光检测器,实现了信号在网络中的双向传递。此外,每个节点上都设有小型的光栅耦合器“抽头”,能够输出少量光信号,并将其引导至红外摄像机进行光强度测量。这些变化使得光学反向传播算法的实现成为可能。研究人员进行的实验证明,利用这一新芯片,他们成功训练了一个简单的神经网络,能够根据图形上的点位置进行标记,准确率高达98%,与传统方法相当。这个实验结果有力地证明了光子芯片在人工智能模型训练方面的潜力和有效性。
该实验首次实现利用片上反向传播训练光子神经网络并解决任务,这为训练神经网络提供了新的节能方法。
图2:片上梯度测量,采用5mW 1560nm激光器和校准控制单元用于输入生成和输出检测。芯片上的红外摄像机成像并记录了反向传播所需的所有光栅耦合器输出。
图源:Science, 380(6643), 398-404
免责声明:本文旨在传递更多科研资讯及分享,所有其他媒、网来源均注明出处,如涉及版权问题,请作者第一时间联系我们,我们将协调进行处理,最终解释权归旭为光电所有。