《1. 引言》

1. 引言

深度学习是一种通过计算机构建多层人工神经网络实现数据表示、抽象和高级任务的机器学习方法[1]。近些年来,深度学习的快速发展引起了学术界的广泛关注。在人工智能、计算机科学等相关领域,深度学习甚至已经远超人类专家的水准。目前,深度学习已经被广泛应用于计算机视觉[2]、语音或图像识别[3,5]、机器人系统[6],以及其他领域[7,9]。然而,计算机平台下的深度学习受制于von Neumann结构的限制,在处理时间和计算能耗方面难以取得突破[10-11]。在过去的几十年间,光学系统中的光学信息处理方式实现了卷积运算、相关运算和傅里叶变换运算等诸多运算范式,光学信息处理方式在并行计算上更展现出独特的优势[12,17]。通过设计衍射光学元件,研究人员已经在光学系统中构建出传统计算机端的深度学习框架,并实现诸多智慧功能[18,21]。基于3D打印技术在太赫兹波段下实现的深度衍射神经网络(D2NN)是其中一项里程碑式的研究工作[18]。

D2NN基于深度学习算法框架和误差反向传播理论,在计算机端进行学习训练。D2NN包含多层衍射光学元件,每层衍射光学元件上的微纳结构单元充当人工神经元。在学习训练过程中,这些人工神经元的复值透射系数(振幅/相位)得以优化,进而控制层间的光学衍射传播方式,以特定的输出光场分布形式实现预期设定的智慧任务。一旦学习训练完毕,系统便可通过物理加工手段进行固化,除去初始的相干光源和用于接收输出光场的探测器需要供电外,整个系统将无电化运行。基于D2NN的诸多应用,如具备非线性激活函数(引入铁电薄膜材料)并在傅里叶空间实现的D2NN [17],以及针对手写数字和时尚产品进行目标识别的线性D2NN [18,21]等,已经被广泛研究。

通过3D打印在太赫兹波段下实现的D2NN已经取得巨大的成功,其有效性和良好性能已经在诸多研究中得以验证[18,20]。尽管太赫兹波段下的D2NN存在着巨大优势,但其在实际应用中仍存在一些众所周知的局限性,如材料损耗和粒子间耦合[22]。因此,将D2NN从太赫兹波段扩展至可见光波段或近红外波段[23]具有重要科研意义和实际应用价值;将D2NN从太赫兹波段扩展至可见光波段还会赋予系统更加新颖的应用场景[24,29]。然而,将D2NN从长波长扩展至短波长,必须解决一些限制和问题,如工作波长、人工神经元特征尺寸和制备加工能力间存在的矛盾。工作波长越短,人工神经元特征尺寸越小,制备加工越困难,而经典最大半锥衍射角理论无法克服这一矛盾[18,20]。

为了克服上述矛盾,本文提出了一种一般理论模型,该模型包含了D2NN系统设计过程中所需考虑的完备参数。该一般理论模型是在经典最大半锥衍射角理论的基础上,通过引入修订公式得以实现的。该理论模型定量分析和明确了将D2NN应用扩展至其他波段,如氦(He)-氖(Ne)激光器等可见光波段下的系统设计参数和方法。本文设计了一系列的仿真实验,对所提出的一般理论模型进行验证。具体来说,本文以D2NN分类器为例来验证所提出的一般理论模型。为了减少训练时间和训练复杂度,本文仅采用手写数据集MNIST中的部分子集进行训练,实现针对手写数字0~9的识别分类功能。在此情况下,为防止过拟合,本文设计了五层纯相位调制型D2NN,共计32 000个神经元。通过采用全新测试集对系统进行盲测分类,实现了对所提出的一般理论模型的验证。

基于所提出的一般理论模型,本文进一步设计实现了一种全新功能的可见光D2NN分类器,并使用He-Ne激光器在工作波长632.8 nm处进行了实验验证。与已有的D2NN分类器相比[18,20],本文提出的可见光D2NN分类器即使在目标发生变化的情况下(如数字被遮挡或涂改),也可对目标物进行正确分类。在学习训练中,本文将MNIST数据集中的55 000个手写数字训练样本扩展到80 000个,其中新增的25 000个手写数字实物为遮挡或涂改的MNIST训练数据集。本文使用包含500万个神经元的五层相位型D2NN,对全新测试集内11 000幅样本图像(包含MNIST数据集中的10 000个手写数字测试样本和1000个遮挡或涂改的手写数字测试样本)进行盲测识别分类,数值分类精度为91.57%。随后本文采用多步光刻-套刻-刻蚀工艺在二氧化硅(SiO2)基底上制备实现了上述可见光D2NN。在实验过程中,本文采用50个手写数字实物作为输入,对系统进行实验测试,系统的实验分类精度为84%。可见,本文获得的实验分类精度(84%)和数值分类精度(91.57%)量化了理论设计和制造系统性能之间的匹配。

基于所提出的一般理论模型,对D2NN进行仿真设计,本文实现了可见光波段下的D2NN。深度神经网络有时被称为黑匣子[30],本文所提出的可见光D2NN可为剖析该问题提供一定的解法思路。此外,充分了解人类大脑中生物神经元间的相互作用,能够更好地构建深度神经网络。本文所提出的可见光D2NN可以为当前生物神经元之间的相互作用提供新的见解思路,并且所提出的框架理论可以将D2NN应用于各种人机交互设备和人工智能交互设备下的实际问题,以促进生物学和计算科学发展。

《2. 材料和方法》

2. 材料和方法

《2.1. 深度学习和深度衍射神经网络架构》

2.1. 深度学习和深度衍射神经网络架构

本文所提出的可见光D2NN遵循光学衍射理论和深度学习框架[32,35]。与传统的深度学习系统相比,D2NN有以下几点不同:① D2NN的前向衍射传播遵循惠更斯理论(Huygens’principle)和瑞利-索末菲光学衍射理论(Rayleigh-Sommerfeld diffraction)[36];②训练用的损失函数,如交叉熵函数(SCE)基于输出平面不同位置探测器的光强分布。在此基础上,本文可以基于目标理想光强分布来计算损失函数,并由此进行误差反向传播来优化网络结构以及相应的相位值分布。

在深度学习框架中,D2NN每层衍射层中每个人工神经元的相位值,将依据所要实现的特定任务进行不断地学习迭代调整。系统通过输入训练数据,经光场衍射传播,最终在输出平面上得到特定的光场分布。在对D2NN前向传播模型进行详细分析讨论前,本文先对l层进行如下相关定义(其中l层表示D2NN中的第l层衍射层)。

t表示l层衍射层的复值传递系数。i表示在第l层空间坐标为(x, y, z)的人工神经元。对于第i个人工神经元,其复值传递系数由振幅和相位组成,并可进一步描述为:t(x, y, z) = a(x, y, z) exp(jΦ(x, y, z)), 其中a(x, y, z)为复值传递系数中的振幅项,Φ(x, y, z)为复值传递系数中的相位项,j为虚数并满足j =-1。对于纯相位型D2NN系统,振幅项a(x, y, z)往往取常数值1。

W1表示经过l层衍射层传播后的次波衍射函数。对于第l层空间坐标为(x, y, z)的人工神经元,其次波衍射函数为W1W1的振幅和相位取决于输入波函数和对应的l层衍射层的复值传递系数t

Y1表示次波衍射函数W1经过ll+1层之间的距离传输后的输出光场函数。Y1也可表示为l+1层衍射层的输入光场函数。当输入光场函数Y垂直入射到第l层时,W1为透射函数t和输入光场函数Y之间的乘积:

Wl+1=Yltl(1)

式中,o表示哈密顿乘积操作。

光场由第l层传输到第l+1层后,会引入一个相移因子,如下所示:

exp(jkdlcosγ)=exp[jkdl1-(cos2α+cos2β)](2)

式中,d表示第l层和第l+1层之间的传播距离;αβγ是次波衍射函数W1沿x轴、y轴、z轴方向的各自方位角;k为波数并满足k=2π/λλ表示工作波长。

假定u=cosαλv=cosβλ,其中uv为空间频率。在经过由l层到l+1层的距离传播后,相应的相移因子可以表示为:

exp(jkdlcosγ)=exp[jkdl1-λ2(u2+v2)](3)

随后,我们可以推导得到

Yl+1=Wl+1·exp[jkdl1-λ2(u2+v2)](4)

最终,D2NN的前向传播模型概括如下:

Yl+1=(Yltl)·exp[jkdl1-λ2(u2+v2)](5)

《2.2. 基于TensorFlow设计DNN和处理流程》

2.2. 基于TensorFlow设计DNN和处理流程

本文中的D2NN仿真设计,是基于Python(v3.7)以及TensorFlow(v1.12.0, Google Inc., USA)框架所提出的,并在计算机端经过了20个循环的学习训练。计算机的配置为Windows 10操作系统(Microsoft Corporation, USA)、GeForce GTX 1080 Ti显卡、Intel® CoreTM E5-2650 @2.00 GHz CPU以及128 GB内存。D2NN每层训练参数通过反向传播函数和随机梯度优化算法Adam,在学习率为10-3下进行学习迭代优化。五层D2NN训练时间约为20 h。

手写数字实物通过激光直写工艺在玻璃基底上进行制备,并制作成振幅型目标样本输入到D2NN中。具体工艺流程为:首先,使用丙酮和异丙醇清洁基底。然后,在清洁完的基底上利用电子束蒸镀工艺镀上一层厚度约为几百纳米的铬。随后旋涂上一层正向光刻胶进行预烘焙后,使用激光直写工艺对数字图案进行曝光。最后,使用显影剂剥离曝光后的光刻胶,并使用铬媒染剂剥离未覆盖的铬。通过使用丙酮和异丙醇再次清洗基底,完成整个加工流程。

为了能够更好地制备可见光波段的D2NN,本文使用sigmoid函数将每个人工神经元的相位值约束到0~π,经过经典的多步光刻-套刻-刻蚀工艺实现制备。在制备之前,还需要将人工神经元的相位值Φ进一步转化为对应的台阶高度∆h∆h = λΦ/2π∆n,其中∆n是基底和空气之间的相对折射率差)。D2NN在制备前需要通过上述方法在SiO2基底上进行清洗。清洗过后,先使用六甲基二硅氮烷预处理来改变SiO2基底表面的活性,以增强光刻胶和基底的附着力。随后再旋涂光刻胶并进行曝光,并使用显影剂将曝光的光刻胶进行剥离。紧接着,基底经过氧等离子体处理后,采用磁中性环放电刻蚀。重复上述操作,最终可以制备得到设计的D2NN。更多的设计处理过程可以参考附录A中的图S1和图S2。

《3. 结果》

3. 结果

本文通过在SiO2基底上采用多步光刻-套刻-刻蚀工艺,将设计的D2NN制成如图1所示的五层光学衍射层结构。对于被遮挡或涂改的目标,现有的深度学习系统会出现误分类[18,20]。即使在足够高的目标分类识别精度下[20],现有系统仍然会出现错误分类。针对这种情况,如图1(a)所示,本文设计的手写数字D2NN系统可以对出现的所有情况进行分类识别:既可以对原始数据集中的数字(0~9)进行正确分类,也可以对遮挡或涂改的数字样本进行分类识别。为了完成上述分类识别任务,本文设计了一种纯相位五层D2NN系统。系统将对80 000张手写数字实物进行学习训练,其组成包含MNIST数据集中全部55 000张原始的手写数字训练样本,以及25 000张对MNIST数据集进行遮挡和涂改变形后的手写数字实物。在仿真阶段,手写数字实物通过振幅编码的形式输入D2NN系统,经过五层衍射层的传播,在输出平面11个不同的探测区域实现映射。学习训练过程如图1(a)所示:我们将原始的手写数字(0~9)输出映射到编号为0至编号为9所对应的探测区域,对于遮挡或涂改的手写数字实物统一映射到编号为X所对应的探测区域。探测区域的空间位置分布如图1(a)所示。系统实现正确分类的判断依据为对应探测区域采集到最大的光强能量分布。

《图1》

图1 可见光D2NN实验原理图及实验装置示意图。(a)对于原始手写数字0~9以及遮挡涂改的数字(如遮挡的手写数字7和涂改的手写数字5)的分类器原理图;(b)探测器的空间位置分布图;(c)五层衍射层L1、L2、L3、L4以及L5仿真相位值分布图;(c)实验装置原理图;(d)、(e)实验装置示意图。CCD:电荷耦合器件。

训练完成后,使用11 000张全新的测试样本对系统的数值分类精度进行测试,这些测试样本包括从MNIST测试数据集获得的全部10 000张原始手写数字测试样本以及1000张经过遮挡和涂改的手写数字实物,这些遮挡和涂改的数字样本是在MNIST测试数据集的基础上变形的。对于上述测试集,系统达到了91.57%的数值分类精度。

仿真测试后,本文将图1(b)中五层D2NN的相位分布进行物理固化。在此之前,需要将人工神经元的相位分布转化为对应位置的台阶高度,经由多步光刻-套刻-刻蚀工艺在SiO2基底上完成加工制备。制备完成后的系统,依据图1(c)的实验原理图进行测试平台的搭建和表征。在实验测试中,本文采用一台工作波长为632.8 nm的He-Ne激光器(25-STP-912-230, Melles Griot, USA)作为入射光源。He-Ne激光器的输出经透镜1和透镜2进行准直扩束,并通过针孔进行空间滤波。经准直扩束和空间滤波后的激光入射至输入平面的目标图像,经过五层D2NN的层层衍射调制,在电荷耦合器件(CCD,大恒光电)探测平面进行接收。考虑到训练样本集的样本数量,本文设计的D2NN的每层结构包含100万个人工神经元(1000 × 1000),五层共计500万个人工神经元。激光器的输出功率为5 mW。每个人工神经元的特征尺寸为4 µm × 4 µm,单层D2NN的结构尺寸为4 mm × 4 mm。D2NN的层间距离为5 cm。对于五层D2NN的对准过程细节详见附录A中的图S3。

对于11 000张全新测试样本,本文设计的五层D2NN数值分类精度为91.57%。本文采用图2(a)中混淆矩阵的方式对11 000张测试样本的数值分类精度进行直观展示。通过激光直写技术制备的50个手写数字实物,实验分类精度达到84%。实验分类精度相较于数值分类精度仅有较小幅度的降低。本文设计了一种特殊的遮挡器件用于获得输出光场,其中,编号为0至编号为X的探测区域可透光,并由CCD进行探测,其余部分光场信息由遮挡器件遮挡,无法透光。在测试过程中,本文首先测试原始手写数字实物和遮挡涂改后的手写数字实物。本文将手写数字3、涂改的手写数字3、手写数字4、遮挡的手写数字4作为输入目标输入系统,如图3(a)所示。图3(b)所展示的仿真结果和实验测试结果表明,可见光D2NN可以很容易对原始目标和遮挡涂改目标进行分类。如图3(c)所示,光强能量分布表明系统能够正确识别输入目标。随后本文使用四种不同形式的手写数字6进行测试,如图4所示。图4(c)的仿真结果和实验结果表明,所制备的可见光D2NN实现了正确分类。可见光D2NN可以将输出平面的光强集中到对应数字的探测区域。

《图2》

图2 仿真结果和实验测试结果的混淆矩阵。(a)仿真结果的混淆矩阵。对于11 000张全新测试样本,五层D2NN的数值分类精度为91.57%。(b)对于50个手写数字实物,系统的实验分类精度为84%。

《图3》

图3 用于可见光D2NN手写数字的分类结果。(a)在光学显微镜下的样本图像,包括手写数字3、涂改的手写数字3、手写数字4、遮挡的手写数字4。Amp:振幅。(b)仿真结果和实验测试结果表明了D2NN成功将样本分类到对应的探测区域,其中每个探测区域对应一种手写数字类型。例如,手写数字3和手写数字4输出能量集中到编号为3和编号为4对应的探测区域(如白色箭头所示区域)。涂改的手写数字3和遮挡的手写数字4的输出能量均集中到编号为X的探测区域。Max:最大值。(c)实验测试和仿真测试结果的能量分布直方图,表明了可见光D2NN的有效性以及推理能力。

《图4》

图4 可见光D2NN手写数字分类结果。(a)在光学显微镜下,不同形式的手写数字6。(b)仿真结果和实验测试结果证明D2NN对于不同类型的手写数字6能够正确分类识别。四种不同形式的手写数字6,其输出能量均聚焦到编号为6的探测区域,如白色箭头所示。(c)实验测试和仿真测试结果的能量分布直方图,表明了可见光D2NN的有效性以及推理能力。

综上所述,本文提出的可见光D2NN在工作波长632.8 nm处能够成功识别原始目标(手写数字0~9)和被遮挡涂改的目标。此外,本文提出的可见光D2NN系统还具有迁移学习的能力,如图5所示。当激光不经过任何的手写数字实物直接照射到D2NN系统时,之前的系统仍会将其衍射到某一探测区域[18,20],这表明此时的入射光被误判为某一类手写数字。当激光直接入射到本文提出的D2NN系统时,系统将能量聚焦到编号为X对应的探测区域。图5(b)所示的实验测试结果和仿真结果相符合。

《图5》

图5 本文提出的D2NN具备迁移学习能力。(a)将入射光直接输入系统时输出平面光场能量分布的仿真结果:在输出平面上大部分能量集中到编号为X对应的探测区域,表示系统将此种情况判断为错误分类。(b)输出平面光场分布的实验测试结果,与仿真结果相符合。

本文提出的D2NN一般理论可以解决系统从长波长延展至短波长应用时出现的矛盾。本文所进行的定量分析也证明了依据该理论构建可见光D2NN系统的正确性,该理论解决了入射波长、人工神经元特征尺寸和加工难度之间的矛盾。

层间人工神经元的连通性将直接影响信息的衍射传播,进而影响D2NN系统的信息传递和推理性能。全连通D2NN可以实现人工神经元间充分的信息传递。全连通D2NN意味着任一人工神经元的衍射角足够大并可覆盖下一层的全部人工神经元。全连通系统可通过最大半锥衍射角(φmax)定性描述,其受入射波长和人工神经元特征尺寸调控,具体如下所示:

φmax=sin-1(λ/2df)(6)

式中,df表示人工神经元特征尺寸。

为了获得较大的衍射角,需要研究人员设计较小的人工神经元尺寸和考虑较大的工作波长。在之前的研究工作[18]中,研究人员提出的D2NN系统使用0.75 mm的太赫兹波长,人工神经元特征尺寸为0.4 mm × 0.4 mm,最大半锥衍射角约为70°。对于可见光,如本文使用的He-Ne激光器,其工作波长为632.8 nm,约为太赫兹波长的1/1200。为了能够获得70°的最大半锥衍射角,需要将人工神经元的特征尺寸设计为小于330 nm,这也约为太赫兹波段下人工神经元特征尺寸的1/1200。如果采用330 nm作为人工神经元的特征尺寸来设计制造系统,将对设计制作工艺提出巨大挑战,即出现了工作波长、人工神经元特征尺寸和加工难度之间的矛盾。因此,在设计可见光D2NN时,需要提出一种更为通用的设计思路。

对于相邻两个衍射层层间的传播距离D,每个人工神经元的衍射半径R可以表示为:

R=D×tanφmax(7)

如果df 为人工神经元的特征尺寸,N为每层人工神经元的总数,则每个衍射层的尺寸为:

w=N×df2(8)

式中,通常假定衍射层为方形[18,20]。为了能够得到全连通的D2NN,每个人工神经元的衍射半径应满足Rw。因此在传统最大半锥衍射角理论的基础上,本文提出一个全新的公式,如下所示:

φmax=sin-1(λ/2df)DN·df·4df2/λ2-1(9)

改进后得出的一般公式可以用于定量分析D2NN的连通性。当参数满足公式(9)时,全连通的D2NN得以实现。该公式表明,D2NN的连通性受工作波长、人工神经元特征尺寸、人工神经元数量、层间距离等的共同影响。可以通过调节人工神经元数量、层间距离等解决在短波长,如可见光波段下,人工神经元大小和加工制备能力之间的矛盾。该公式可以将D2NN应用于任何工作波长下的场景。

图2图5中的实验参数皆是依据公式(9)进行选取,所产生的实验结果验证了公式(9)的正确性。为了进一步检验公式(9)的正确性,本文进行了一系列的仿真分析。为了减少训练时长和复杂度,本文使用MNIST数据集中的一个子集,设计训练了一个五层纯相位型D2NN,用于对手写数字0~9进行分类识别。如图6所示,训练集包含了10 000张手写数字0~9;每一类数字大约为1000张随机抽取的样本图片。将这10 000张手写数字实物以振幅编码的形式输入D2NN中,进行传播训练,输出光场映射到探测平面10个不同区域。训练完成后,本文使用500张样本对D2NN进行分类识别性能测试。其中用于测试的500张样本均为MNIST数据集中随机抽取的全新样本。依据系统对测试集的盲测分类结果来验证所提出的理论的正确性。

《图6》

图6 依据公式(9)设计的D2NN系统。(a)对于手写数字0~9实现分类的D2NN原理图,探测区域分布如图所示;(b)依据公式(9)设计的拟合曲线;(c)四种不同参数的测试情况。对于(c)中四种不同参数的数值分类精度进行分析研究,并给出示例1(d)、示例2(e)、示例3(f)和示例4(g)的混淆矩阵,证明所提理论的正确性。

为了对公式(9)进行定量分析,本文将其拟合成曲线,如图6(b)所示。为了防止过拟合,根据设计经验,本文设定每层人工神经元数量为6400(80 × 80)。根据图6(b)的拟合曲线所示,当工作波长、衍射层层间距离和人工神经元特征尺寸等参数选择位于拟合曲线本身或拟合曲线上方区域(如绿色箭头所指)时,D2NN将实现层间全连通;当上述参数落在拟合曲线下方区域(如红色箭头所指)时,D2NN将无法实现全连通。在图6(b)中,示例1和示例2所选取的参数位于拟合曲线本身,示例3选取的参数位于拟合曲线上方,示例4选取的参数位于拟合曲线下方。示例1至示例3所示系统,对样本的数值分类精度均在90%以上,但是对于示例4系统,其数值分类精度仅约为0.1%。示例1至示例4的混淆矩阵对应图6(d)~(g)。这些结果证明了所提出的理论的正确性,即改进后的理论是一般理论模型,为构建D2NN提供了定量分析手段,并进一步证明了全连通D2NN所带来的性能优势。图6(c)仿真结果与前人的研究[18,20]结果一致。通过对比示例1和示例2可以看出,本文所提出的一般理论可以通过调整衍射层层间距离,解决人工神经元特征尺寸和加工制备难度之间的矛盾。大的层间距离(5.7 × 103λ)和大的人工神经元特征尺寸(6λ)与小的层间距离(15λ)和小的人工神经元特征尺寸(0.53λ)性能保持一致。通过调整人工神经元特征尺寸和衍射层层间距离可以解决加工制备难题。本文还分析了衍射层层间对准误差和衍射层相位加工误差带来的影响,详细的分析可以查看附录A中的图S4和图S5。

《4. 分析和结论》

4. 分析和结论

本文提出了构建D2NN的一般设计理论,并将D2NN扩展到可见光波段。可见光波段的D2NN可以克服太赫兹波段固有的一些问题并存在诸多潜在性应用价值[25,29]。然而,直接将系统从太赫兹波段扩展到可见光波段存在一些困难,这体现在工作波长、人工神经元特征尺寸和加工制备能力间的矛盾。更短的波长需要更小的人工神经元特征尺寸,这会使加工变得愈发困难。对此,本文提出了系统设计的一般性理论用于解决上述矛盾。通过一系列的仿真分析,本文验证了所提理论的正确性。基于所提理论,本文设计了一种全新的可见光波段的D2NN识别分类器,其可以在工作波长为632.8 nm处对原始手写数字(0~9)和变化目标(遮挡或涂改的目标)进行分类识别。数值分类精度为91.57%,实验分类精度为84%。数值分类精度和实验分类精度进一步验证了理论分析和系统设计制备的准确性。

尽管目前已经在光学平台上实现了D2NN [18,22,24],但是距离真正的全光学设计处理还有一定距离。例如,在学习训练阶段,系统仍需要借助计算机进行仿真。光学信息处理所带来的低能耗和高速处理优势未完全体现。此外,光学深度学习技术的应用仍处在新兴阶段,许多早期尝试[18,20]仍然使用的是标准机器学习模型,这可能不是光学深度学习的最佳模型。可以尝试将其他模型,如无监督学习[37]、生成对抗网络[38]、强化学习[39-40]等整合到光学神经网络中。预计未来,研究人员会提出更快、更准确的光学深度学习框架,直至超越人类现有的知识能力。