最近APL photonics刊登了一篇关于光子加速器的review文章"Novel frontier of photonics for data processing—Photonic accelerator",小豆芽这里做一个读书笔记,供大家参考。
下图是集成电路的演化与瓶颈示意图,
(图片来自文献1)
摩尔定律比较有名,稍微介绍下另外两个定律。Dennard缩放定律,是指随晶体管尺寸的缩小,IC的功耗密度保持不变。Amdarhl定律,给出了使用并行运算后,计算效率能够达到的上限。随着器件尺寸逐渐逼近物理极限,在后摩尔时代,为了进一步提升计算能力,人们提出了多种技术方案,包括More Moore, More than Moore和beyond Moore这三个大的技术路线。More Moore(深度摩尔)仍然是想通过一定的方案延续摩尔定律,缩小器件尺寸;More than Moore(超越摩尔),是指通过与其他技术集成,提供更多的功能,例如MEMS;Beyond Moore是指一些可以替代CMOS的技术方案,不再使用晶体管处理数据。
光子硬件加速器(photonic accelerator,简称PAXEL)是用光子处理一些特殊的计算任务,辅助已有的数字计算机。其典型的框架图如下图所示,
(图片来自文献1)
与电子硬件加速器相比,光子加速器方案中信号加载在光信号上,因而会需要额外的光电转换步骤。PAXEL的主要优势是计算速度快、功耗小。文献1中列出了光子硬件加速器的几个应用情景,
1)人工神经网络(articifical neural network)
深度学习的计算涉及大量的矩阵计算,
矩阵计算可以通过PAXEL较为简单的实现。目前主要有三种具体的光学实现方案,如下图所示,
(图片来自文献1)
第一种方案在自由空间中实现,借助于空间光调制器(SLM)实现对矩阵元的编码;第二种方案在光芯片上实现,输入的data信号编码在不同的波长上,通过微环调制器实现对weight矩阵元的编码;第三种方案也是在光芯片上实现,级联的MZI网络可以实现任意的NxN矩阵乘法,需要对每一个MZI进行编码。后两种方案都已在硅光芯片上实现,第二种方案使用了微环谐振器,对工艺、温度都比较敏感。使用波长编码data信号,后期在矩阵的扩展上会存在一定的限制。
这三种方案都对应一些创业公司,包括Optalysys公司(方案一)、Luminous Computing公司(方案二)、Lightelligence公司和Lightmatter公司(方案三)。
2)储备池计算(reservior computing)
储备池计算是递归神经网络的一种,其结构如下图所示,包括input层,reservior层和output层。储备池层含有多个节点,利用储备池代替传统神经网络中的中间层,输入层到储备池的输入连接权和储备池的内部连接权都是随机生成并保持不变。唯一需要通过训练确定的是储备池到输出层的连接权。
(图片来自文献2)
目前主要有两种典型的架构实现光学储备池计算:
a)基于延迟的储备池
典型的架构如下图所示,由一个非线性器件(例如激光器)和反馈延迟线构成储备池,不同时刻的光信号构成储备池中虚拟的节点(virtual nodes)。
(图片来自文献1)
b)基于空间模式的储备池
典型的架构如下图所示,由空间光调制器(SLM)每个像素反射的光场构成储备池的节点。
(图片来自文献1)
这两种方案相比,第一种方案需要较复杂的信号处理,第二种方案实现起来相对简单,但是第二种方案基于空间光学,对系统的稳定性要求较高。
3) 基于逻辑门的计算
集成电路以与或非三种逻辑运算为基础,可实现任意的运算。光学逻辑门方案试图采用类似的途径,以光学逻辑门单元实现复杂的运算。Mach-Zehnder干涉器是光学运算的核心单元,进而构建复杂的网络,如下图所示,左图为光学逻辑门构成的光路,右图为电学逻辑门构成的相同功能的电路结构图,光学逻辑门方案所需的运算时间为t_switch +N*t_path, 而电学方案的运算时间为N*t_switch+N*t_path, 光学方案的运算速度更快。
(图片来自文献1)
4)决策问题(decision making problem)
这里主要介绍下一个经典的问题——多臂选择机问题(multiarmed bandit),如何通过光学方法实现。所谓多臂选择机问题,是指当我们进入赌场时,会看到一排老虎机,每台机器外观一模一样,但是吐钱的几率不太一样。我们不知道具体的几率是多少,怎么做才能获得最大收益?对于这一问题,如果一个个去试老虎机的几率,虽然可以得到大概的几率分布,但是自己也会损失很多,这就是所谓的exploitation-exploration困境。针对这一问题,人们已经提出了多种算法。
下图是利用单光子实现决策机的光路图,利用NV色心产生单光子,单光子的偏振态可通过二分之一波片进行调节。当光子的偏振态为水平时,选择machine 0; 当光子的偏振态为竖直时,选择machine 1;当偏振态为45°偏振时,光子以50%的几率触发machine 0或者machine 1。根据机器触发后获得的收益,来决定半波片的调整方向,往获益多的那个偏振方向调整。
(图片来自文献1)
5)压缩采样问题(compressed sampling)
压缩采样问题,是指利用信号的稀疏性,采用小于Nyquist频率的进行采样,进而重构出原始信号,如下图所示,
(图片来自文献1)
一个典型的应用场景,通过测量人体细胞浓度,判断人体所处的状态,如下图所示,
(图片来自文献1)
以上是文献1中提及到的光子加速器的几个应用场景,相比较而言,在深度学习方面的应用,受到了更多的关注,并且也在往商业化的道路推广。其他几种应用,更多的是处于科研阶段,有些场景也仅仅是展示了光学实现的可行性,有些场景的难点是算法问题。光子计算,也许是后摩尔时代的一颗新星。
文章中如果有任何错误和不严谨之处,还望大家不吝指出,欢迎大家留言讨论。
参考文献:
- K. Kitayama, et. al., "Novel frontier of photonics for data processing—Photonic accelerator", APL Photonics 4, 090901(2019)
- F. Duport, et.al., "Fully analogue photonic reservoir computer", Sci. Rep. 6, 22381(2015)