用于光学神经网络的设备和方法

文档序号:29044786发布日期:2022-02-25 21:43阅读:75来源:国知局
用于光学神经网络的设备和方法1.本技术是申请日为2017年6月2日、申请号为201780043808.x,发明名称为“用于光学神经网络的设备和方法”发明专利申请的分案申请。2.相关申请交叉引用3.本技术要求2016年6月2日提交的、名称为“methodsanddesignofopticalneuralnetwork(光学神经网络的方法和设计)”的美国申请号62,344,621的优先权,该申请通过引用被全文并入本文中。[0004][0005]
背景技术
::[0006]对于大范围的任务,例如感知、通信、学习和决策制定,基于冯·诺依曼架构的现有计算机相比其生物对等物-中心神经系统通常更耗电且不太有效。随着与大数据处理关联的数据量的不断增大,开发能够快速和高效地学习、组合并分析大量信息的计算机是有益的。例如,语音识别软件(例如苹果公司的siri)通常是在云端执行的,原因是所涉及的运算对于移动电话中的硬件通常太有挑战。[0007]解决冯·诺依曼计算架构的缺点的一种方法是开发人工神经网络(annw)。annw通常模拟大脑中的信号处理架构,近来已经受到广泛关注。annw能够大大地改善语音识别、可视对象识别、对象探测和许多其它领域,例如药物发现和基因组学。传统的人工神经网络通常使用电子架构,例如专用集成电路(asic)和现场可编程门阵列(fpga)。然而,用这些硬件架构实现的运算速度和电源效率仍受电子时钟速率和欧姆损耗的限制。技术实现要素:[0008]本技术的实施例大体上涉及人工神经网络。在一个示例中,用于实现人工神经网络的设备包括输入波导阵列,所述输入波导阵列接收第一阵列的光学信号。光学干涉单元与所述输入波导阵列光学通信,以执行所述第一阵列的光学信号到第二阵列的光学信号的线性变换。所述设备还包括光学非线性单元,所述光学非线性单元与所述光学干涉单元光学通信,以对所述第二阵列的光学信号执行非线性变换,以便生成第三阵列的光学信号。探测器阵列与所述光学非线性单元光学通信以探测所述第三阵列的光学信号。[0009]在另一示例中,用于人工神经网络计算的方法包括用输入波导阵列接收第一阵列的光学信号。所述方法还包括使用与所述输入波导阵列光学通信的光学干涉单元干涉所述第一阵列的光学信号,以将所述第一阵列的光学信号线性地变换成第二阵列的光学信号。所述方法还包括使用与所述光学干涉单元光学通信的光学非线性单元非线性地变换所述第二阵列的光学信号,以便生成第三阵列的光学信号。所述方法还包括探测所述第三阵列的光学信号。[0010]在又一示例中,光学神经网络包括输入波导阵列,所述输入波导阵列接收第一阵列的光学信号。所述网络还包括多个互连马赫-曾德干涉仪(mzi),所述多个互连马赫-曾德干涉仪与所述输入波导阵列光学通信,以通过在所述第一阵列的光学信号中的干涉将所述第一阵列的光学信号线性地变换成第二阵列的光学信号。所述多个mzi中的每个mzi包括第一移相器,所述第一移相器被配置成改变所述mzi的分光比;以及第二移相器,所述第二移相器被配置成移动所述mzi的一个输出的相位。所述网络还包括可饱和吸收体阵列,所述可饱和吸收体阵列与所述多个互连mzi光学通信,以将所述第二阵列的光学信号非线性地变换成第三阵列的光学信号。所述可饱和吸收体阵列中的每个可饱和吸收体接收所述第二阵列的光学信号中的对应的光学信号。所述网络还包括探测器阵列,所述探测器阵列与所述光学非线性单元光学通信,以探测所述第三阵列的光学信号。[0011]应当认识到前述构思和在下面详细讨论的附加构思(如果这些构思并非相互不一致)的全部组合被认为是本文中公开的本发明主题的一部分。具体而言,出现在本公开结尾处的所声称的主题的所有组合被认为是本文中公开的本发明主题的一部分。还应当认识到在本文中明确使用的也可能出现在通过引用并入的任何公开中的术语应当被给予与本文中公开的具体构思最一致的含义。附图说明[0012]本领域技术人员将理解附图主要出于示意目的,不旨在限制本文中描述的本发明主题的范围。附图不一定是按比例绘制的;在一些情况下,本文中公开的本发明主题的各个方面可以被夸大地显示或者在附图中被放大,以促进对不同特征的理解。在附图中,相同的附图标记大体上指相同的特征(例如功能上相似和/或结构上相似的元件)。[0013]图1示出基于光子集成电路的光学神经网络的示意图。[0014]图2a和图2b示出可以用在光学神经网络中的光学干涉单元200的示意图,所述光学神经网络基本上类似于图1中示出的光学神经网络。[0015]图3示出可以用在光学神经网络中的控制电路的示意图,所述光学神经网络基本上类似于图1中示出的光学神经网络。[0016]图4a示出包括一个输入层、多个隐藏层和输出层的光学神经网络的示意图。[0017]图4b示出在图4a中示出的光学神经网络中的实施svd分解的隐藏层的示意图。[0018]图4c示出在图4a中示出的光学神经网络中的使用马赫-曾德干涉仪(mzi)用于光学线性变换的隐藏层的示意图。[0019]图4d示出使用互连mzi并实施元音识别的光学神经网络的示意图。[0020]图5示出基于可饱和吸收的非线性单元的光学响应。[0021]图6a和图6b图示可以用于光学神经网络中的光学非线性单元的光学双稳态,所述光学神经网络基本上类似于图1中示出的光学神经网络。[0022]图7示出包括可调谐环形谐振器的光学非线性单元的示意图。[0023]图8示出包括马赫-曾德干涉仪的光学非线性单元的示意图。[0024]图9a-9d图示使用包括环形谐振器的光学非线性单元的光学神经网络。[0025]图10示出递归光学神经网络的示意图。[0026]图11a示出包括多列互连mzi的光学神经网络的示意图。[0027]图11b是用实验制造的5×5单元片上光学干涉单元的显微镜图像。[0028]图12示出在图11a和图11b中示出的神经网络上训练的简单的2维3类分类问题的决策边界。[0029]图13a示出用实验制造的22模片上光学干涉单元的光学显微照片。[0030]图13b是图13a中示出的光学神经网络的示意图示。[0031]图13c是在图13a中示出的光学神经网络中的mzi中使用的单个移相器的示意图示。[0032]图14a示出对于具有各个相位编码误差(σf)和光探测误差(σd)的元音识别问题的校正率。[0033]图14b-14e示出对于没有误差的训练矩阵的仿真和实验元音识别结果。具体实施方式[0034]综述[0035]光学神经网络(onnw)提供了在微电子和混合光-电子实施方案中克服运算效率和功耗的局限性的有希望的方式。onnw(一般称为人工神经网络)通常包括输入层、至少一个隐藏层和输出层。在每一层中,通过线性组合(例如矩阵乘法)、随后对线性组合的结果应用非线性激励函数来使得信息传播经过神经网络。在训练人工神经网络模型时,数据可以被供给到输入层中,通过前向传播步骤计算输出。然后,参数可以通过后向传播过程被优化。每个突触的加权参数(即矩阵的元)通过后向传播过程被优化。[0036]在onnw中,线性变换(和某些非线性变换)可以以光速被执行,并且在光子网络中以超过100ghz的速率被探测,并且在一些情况下,具有最小的功耗。例如,普通透镜可以执行傅立叶变换,而没有任何功耗,某些矩阵运算也可以用光学方法执行,而不消耗功率。然而,由于缺少相位稳定性以及在网络中集成大量神经元(例如百万个神经元的数量级)的难度,用笨重的光学部件(例如光纤和透镜)实施这些变换可能是有挑战的。集成光子可以通过为大型、相位稳定的光学变换提供可扩展架构解决此问题。[0037]本文中描述的设备和方法使用基于光子集成电路的片上、相干光学神经形态计算技术。通常,神经形态计算技术中的运算可以被分解成一系列对输入光学信号的线性和非线性变换。在这种技术中,矩阵乘法(即线性变换)是使用一个或多个光学干涉单元实现的,一个或多个光学干涉单元可以将任意加权矩阵乘法ωi施加到输入光学信号中的第i个信号。非线性激励是通过光学非线性单元实现的,光学非线性单元可以基于非线性光学效应,诸如可饱和吸收。[0038]基于光子集成电路的光学神经网络具有几个优点。首先,光子中可实现的高速、高带宽和低串扰很好地适应超快速人工神经网络处理器。此外,光子器件的高电光转换效率允许这种实施方式比得上或者胜过低能量使用的相当的电子系统。使用量子光学器件和片上纳米光子电路制造中的现有技术,设计可变的片上onnw架构是可行的。[0039]图1示出基于光子集成电路的光学神经网络100的示意图。网络100包括电子接口110以将数字信号105a编码成光学信号105b的阵列,所述数字信号105a例如用于图像识别的图像信号或者用于语音识别的语音信号。这里可以使用各种编码方案。例如,数字信号105a可以被编码成光学信号105b的极化形式。在另一示例中,数字信号105a可以被编码成光学信号105b的相位(或时间延迟)。在又一示例中,数字信号105a可以被编码成光学信号105b的强度。在又一示例中,数字信号105a可以被编码成光学信号105b的波长。[0040]光学信号105b的阵列通过输入波导阵列122被引导到光子集成电路(pic)120。如本文中所使用,术语“波导”可以包括能够以局限的方式引导光学信号的任何结构。例如,波导可以包括光纤、在衬底中制造的半导体波导、被配置成引导光学信号的光子晶体结构或任何其它适合的结构。pic120包括光学干涉单元124(也称作矩阵乘积单元124)以执行光学信号105b的阵列的线性变换。换言之,光学信号105b的阵列被当作向量(例如x),光学干涉单元124充当与该向量相乘即mx的矩阵(例如m)。矩阵乘法生成光学信号105c,光学信号105c通过输出波导阵列128被引导到光学非线性单元126。[0041]在一些情况下,光学干涉单元124将每个输入波导122连接至全部输出波导128。换言之,输入波导122和输出波导128是完全连接的。在一些情况下,光学干涉单元124将输入波导阵列122中的输入波导的子集连接至输出波导128中的输出波导的全部子集。例如,输入波导阵列122中的两个输入波导可以与输入波导阵列128中的两个输出波导完全连接。实践中,也可以使用任何其它数目的完全连接的波导。[0042]光学非线性单元126被配置成对光学信号105c执行非线性激励函数,并生成光学信号105d。在网络100中使用探测器阵列130来探测光学信号105d,并生成经探测的信号105e。经探测的信号105e被电子接口140转换回大量的并行电子信号105f。[0043]图2a和图2b示出可以用在上文描述的光学神经网络100中的光学干涉单元200的示意图。通常,光学干涉单元200作用是对光学信号的阵列执行矩阵乘法。出于示意目的,在图2a中示出光学干涉单元的三个示例220a、220b和220c。实践中,可以使用能够执行线性变换的任何其它类型的干涉单元。[0044]在一个示例中,光学干涉单元200可以包括光子晶体220a。如图2b中所图示,光子晶体220a包括衬底222a和在衬底222a中限定的二维(2d)阵列的孔224b。孔224a的尺寸(例如直径和间距)和衬底222a的材料可以被配置成使得光学信号的干涉被传送到光子晶体220a中。关于使用光子晶体用于光学信号干涉的更多信息可以在名称为“multimodeinterferencecouplerforusewithslotphotoniccrystalwaveguides(用于槽型光子晶体波导的多模干涉耦合器)”的美国专利申请公开号us20100226608a1中找到,该申请通过引用被全部并入本文中。[0045]在一些情况下,光学干涉单元200可以包括一个光子晶体220a。在其它情况下,光学干涉单元200可以包括光子晶体的阵列,其可以接收n个光模的阵列,对所接收的光模执行线性变换,然后输出n个光模的阵列。[0046]在图2b中,光子晶体220a包括孔224a的阵列。也可以使用其它配置。例如,光子晶体220a可以包括设置在衬底222a上的微盘的阵列。在另一示例中,光子晶体220a可以包括薄膜的堆叠,在这种情况下,光子晶体220a可以是一维(1d)光子晶体。光子晶体220a的长度可以基本上等于或者大于20μm(例如大约20μm、大约30μm、大约50μm、大约100μm、大约200μm、大约30μm、大约500μm或者更大,包括任何值和这些值之间的子范围)。每个孔224a的直径例如可以基本上等于或者大于20nm(例如大约20nm、大约30nm、大约50nm、大约100nm、大约200nm、大约300nm或者更大,包括任何值和这些值之间的子范围)。在一些情况下,孔224a的阵列的间距d可以基本上等于在光子晶体220a中传播的光学信号的波长λ除以光子晶体220a的折射系数np,即d=λ/np。在一些情况下,衬底222a可以由硅或者任何其它适合的材料制成。[0047]光子晶体220a可以用相变材料涂布,以改变光子晶体220a的光学路径长度。光学路径长度的改变转而可以改变在光子晶体220a中传播的光学信号的干涉。这可以调节在所产生的光学神经网络中的每个隐藏层的权重参数。[0048]在另一示例中,光学干涉单元200包括互联马赫-曾德干涉仪(mzi)220b的阵列。每个mzi将输入光学信号分裂成第一臂和第二臂,然后将来自两个臂的光学信号组合以用于干涉。每个mzi还包括第一移相器和第二移相器,第一移相器被配置成改变mzi的分光比,第二移相器被配置成移动mzi的一个输出的相位。在下面参照图4a-4d描述在光学干涉单元200中使用mzi的更多细节。[0049]在又一示例中,光学干涉单元200可以包括多模干涉仪(mmi)220c。mmi可以包括接收输入光学信号的单模波导和用于所接收的光学信号相互干涉的多模波导的阵列。多模波导具有许多导模,其中的每一个具有不同的传播常数。因为模是本征模,所以模相互独立地传播。当多模干涉由输入光学信号激励时,场分布可以被分解成本征模。即使这些本征模之间通常没有任何能量交换,但以不同的速度传播,产生沿多模波导的长度变化的干涉模式。关于多模干涉的更多的信息可以在名称为“multi-modeinterferencedevice(多模干涉装置)”的美国专利号9097852b2中找到,该申请通过引用被全部并入本文中。[0050]图3示出可以用在图1中示出的光学神经网络100中的控制电路300的示意图。控制电路300包括提供数字控制信号的控制器310,数字控制信号被数模转换器(dac)320转换成模拟控制信号。缓冲放大器330用在控制电路300中以在将信号施加到光子集成电路305之前放大模拟控制信号。光子集成电路305可以与图1中示出并在上文描述的光子集成电路120基本上相同。[0051]实践中,控制电路300可以用来训练包括光子集成电路305的光学神经网络。例如,光子集成电路305可以包括互连mzi的阵列,其中的每一个包括控制mzi的分光比的一个移相器和控制输出的相位的另一移相器。控制电路300接着可以控制由每个移相器强加的相位,以便实现不同的矩阵变换。换言之,控制电路300可以改变由光子集成电路305中的光学干涉单元实现的变换矩阵m的元素m(i,j)(也称作权重参数)。[0052]在训练过程中,具有预期输出的一组测试数据点可以被发送至光学神经网络。接着预期输出与实际输出进行比较。在有任何差异的情况下,控制电路300接着可以改变光子集成电路305的相位设置,以便使得光子集成电路305产生预期结果。在确定产生预期结果的相位设置之后,光学神经网络接着可以用来处理未知的数据点。[0053]替代性地,权重参数可以在电子计算机上被分开地训练。接着,权重参数可以通过热移相器(例如当mzi用于光学干涉单元时)被编程到光学神经网络,或者通过相变材料被硬编码到光学神经网络。[0054]使用马赫-曾德干涉仪的光学神经网络[0055]图4a-4c示出使用马赫-曾德干涉仪(mzi)进行光学线性变换的光学神经网络400的示意图。图4a示出光学神经网络400包括输入层410、隐藏层的序列420(1)、420(2)、...、和420(n)(总称为隐藏层420)以及输出层430。每个层包括多个神经元(在图4a中图示为圆圈)。例如,输入层410包括四个神经元411、412、413和414(也称作节点)。在一些情况下,如由图4a中的圆圈所指示的每个节点可以包括波导(例如输入波导122),各列圆圈之间的箭头可以是执行线性和/或非线性变换的光子电路(例如图1中的光学干涉单元124和/或光学非线性单元126)。类似地,输出层430包括四个神经元431、432、433和434。实践中,对于每一层,可以使用任何其它数目的神经元。在图4a中可以看出,输入层410中的每个神经元连接至第一隐藏层420(1)中的全部四个神经元。类似地,第一隐藏层420(1)中的每个神经元连接至第二隐藏层420(2)中的全部四个神经元,以此类推。[0056]在光学神经网络400中,在每一层(例如420)中,通过线性组合(例如矩阵乘法)、随后应用非线性激励函数来传播信息。在此网络400中,光学信号的向量可以表示为:[0057][0058]其中,ej是波导j处的电场(在图4b中描绘为脉冲)。矩阵-向量积z1=wi-1x由光学干涉单元执行,激励函数f(z(i))是使用光学非线性单元实现的。网络400的单元、光学干涉和非线性单元可以被平铺以实现深度学习网络。[0059]在网络400中,可以每ln/c秒评估矩阵-向量积和非线性激励,其中,l是网络400的物理长度,n是折射系数,c是光速。例如,网络400可以具有大约1厘米的长度l,折射系数大约为3,从而提供大约100ps(也称作前向传播时间)的评估时间。在此前向传播时间中,总数为d的输入向量可以通过网络400传播,产生总带宽dc/nl。因此,以时钟速率产生的运算可以容易地超过几十吉赫。此时钟速率可能只受可以将光学信号转换成电信号所采用的速率(例如在当前技术中大约为100ghz)的限制。[0060]除了超快速前向传播之外,与评估矩阵向量积关联的运算时间与矩阵尺寸n线性地成比例。将矩阵的尺寸从n增大到n+1,对应于给网络400增加一个波导。对于此系统,每秒的运算次数为r=2m·n2·1011运算/秒,其中,m是神经网络400中层的数目。[0061]图4b示出每个隐藏层420包括光学干涉单元425和光学非线性单元427以实施奇异值分解(svd)方案,以便对输入光学信号实现任意的线性变换。在svd方案中,一般实数矩阵(m)可以被分解为m=usv*,其中,u是m×m酉矩阵,s是对角线上具有非负实数的m×n对角矩阵,v*是n×n酉矩阵v的复数共轭。图4b中示出的光学干涉单元425包括:第一mzi阵列421,以使用矩阵v实现矩阵乘法;衰减器422(或放大器)的阵列,以使用矩阵s实现矩阵乘法;以及第二mzi阵列423,以使用矩阵u实现矩阵乘法。以此方式,光学干涉单元425可以使用矩阵m将矩阵乘法施加到输入信号,其中,m=usv*。[0062]以此方式实现的矩阵乘法在原则上不消耗任何功率。这带来神经网络400的高能量效率。[0063]矩阵s的对角线元素λi通常称作矩阵m的奇异值。通常的惯例是以降序列出奇异值。在这种情况下,对角矩阵s由m唯一地确定。可以使用一组光学放大器获得对角矩阵s。光学放大器是一种不必将光学信号转换成电信号直接放大光学信号的器件。光学放大器可以包括具有或不具有光腔的激光器(例如行波放大器或单通道放大器),或者是来自腔的反馈被抑制的激光器。在光学神经网络400中,每个光学放大器被施加到输出节点,并将信号放大或衰减常数因子λi。[0064]光学非线性单元426可以包括可饱和吸收体阵列427。替代性地,光学非线性单元426可以包括双稳态材料的阵列。通常,对于输入强度iin,从光学非线性单元426的光输出强度由非线性函数iout=f(iin)给出。[0065]图4c示出光学干涉单元425和光学非线性单元426的示意图。光学干涉单元425包括互连mzi428。每个mzi428包括两个输入波导442a和442b、两个臂444a和444b以及两个输出波导446a和446b。每个mzi428还包括设置在一个臂444a上的移相器445a和设置在一个输出波导446a上的另一移相器445b。[0066]每个移相器可以用加热器实现,加热器对将电场施加到波导的电极的波导加热。移相器445a施加相位θ,并可以控制由两个输出波导446a和446b传送的信号之间的分光比。移相器445b施加相位φ,并可以控制由两个输出波导446a和446b传送的信号之间的相位延迟。用该配置,每个mzi可以对由两个输入波导442a和442b接收的光学信号执行酉变换,酉变换可以写成:[0067][0068]图4d示出光学神经网络400,图示了光学干涉单元425和非线性单元426。每个光学干涉单元425包括互连mzi,每个非线性单元426包括包含可饱和吸收体或双稳态材料的波导的阵列。一个光学干涉单元425和一个非线性单元426形成传播光学信号的一层420。实践中,层420的序列形成光子集成电路,光子集成电路可以从扬声器接收例如语音信号,接着处理所接收的语音信号,以识别语音信号的内容,即语音识别。[0069]光学非线性单元[0070]在本文中描述的神经形态技术中使用光学非线性单元(例如图1中的126或者图4a-4d中的426)来施加非线性激励函数。具体而言,光学非线性单元可以通过非线性函数f用尽输入功率iin,变成输出功率,使得iout=f(iin):[0071]在一个示例中,光学非线性可以基于可饱和吸收。不受任何特殊理论或运算模式的约束,可饱和吸收体的非线性函数可以写成:[0072][0073]其中,σ是吸收截面,τs是形成吸收体的材料的辐射寿命,tm是可饱和吸收体的最大透射率,t0是初始透射率,i0是峰值入射强度。图5示出基于可饱和吸收的非线性单元的光学响应。在此单元中使用的可饱和吸收体可以是例如染料或半导体量子点。[0074]图6a和图6b图示可以用于光学非线性单元的光学双稳态。图6a示出具有光学双稳态的光子晶体600的示意图。光子晶体600包括嵌入在低指数介质衬底610(nl~1.5)中的高指数介质棒620(例如,nh~3.5)的阵列。在一些情况下,棒620的阵列的间距由a表示,棒620的阵列中每个棒的半径为r=a/4。[0075]图6b示出图6a中示出的光子晶体的光学响应。不受任何特殊理论或运算模式的约束,光子晶体600的非线性关系可以写成:[0076][0077]其中,i0是光子晶体600的特征强度,δ是取决于光子晶体600的几何形状的参数。关于光学双稳态光子晶体的更多信息可以在soljacic等人所著的“optimalbistableswitchinginnonlinearphotoniccrystals(非线性光子晶体中的最佳双稳态开关)”,1110(0)、1110(1)、...和1110(l)。除了每个mzi1120还包括两个损耗平衡移相器1125之外,每一列1110中的mzi1120与图4c中示出的mzi基本上相似。一个损耗平衡移相器设置在mzi1120的臂上,另一损耗平衡移相器设置在mzi1120的输出波导上。图11b是用实验制造出的5×5单元片上光学干涉单元的显微镜图像。[0088]图12示出在图11a和图11b中示出的神经网络上训练的简单的2维3类别分类问题的决策边界。三种类别的数据被标记于图12中。在训练中,批前向传播和后向传播被用来优化参数。图12示出对于两个输入单元、3个输出单元和1个隐藏层的分类结果,展示小于8%的误差率。在另一轮训练中,使用786个输入单元、6个输出单元和1个隐藏层。类似地,实现小于10%的误差率。[0089]图13a示出用实验制造出的22模、片上光学干涉单元的光学显微照片。光学神经网络程序的物理区域以灰色高亮显示。系统充当光学现场可编程门阵列,其可以是用于光学试验的测试床。图13b是包括图13a中示出的光学干涉单元的光学神经网络1300的示意图示。光学神经网络1300完全用光学方式既实现矩阵乘法又实现矩阵放大。图13c是马赫-曾德干涉仪(mzi)中的单个移相器和用于调谐mzi的内部移相器的传输曲线的示意图示。[0090]光学神经网络1300包括输入波导阵列1305以接收输入模,并将输入模传输到su(4)核心1310,su(4)核心1310包括互连mzi的阵列。非酉对角矩阵乘法核心(dmmc)1320耦合到su(4)核心1310。dmmc1320包括竖直列的mzi。每个mzi的一个输入波导连接至su(4)核心1310。每个mzi的一个输出波导耦合到例如光学非线性单元,而另一输出波导被阻挡。替代性地,输出波导可以耦合到探测器1330以探测由输出波导传送的信号的一部分。以此方式,dmmc1320可以改变由神经网络1300接收的光学信号的总强度(或功率)。[0091]su(4)1310核心通过givens旋转算法实现算子u和v,givens旋转算法将酉矩阵分解成若干组移相器和分束器,而dmmc1320通过控制dmmc干涉仪的分光率以相对于基准幅度向光模增加或从其移除光来实现算子s。以此方式,su(4)1310和dmmc1320的组合可以执行svd分解。[0092]对神经网络1300执行元音识别。为了准备训练并测试数据集,使用360个数据点。每个数据点包括一个音素的四个对数区比例系数。对数区比例系数或者特征向量表示在不同的对数地间隔开的频带中包含的功率,并通过计算被汉明窗函数相乘的语音信号的傅立叶变换来导出。通过90个不同的人讲4种不同的元音音素生成360个数据点。这些数据点中的一半用于训练,剩下的一半用来测试经训练的光学神经网络1300的性能。在常规计算机上使用随机梯度下降法用标准后向传播算法训练矩阵参数。[0093]用包括56个马赫-曾德干涉仪(mzi)和213个相移元件的阵列的可编程纳米光子处理器实现相干光学神经网络1300,如图13a中示出的。每个干涉仪包括两个消失模波导耦合器,所述两个消失模波导耦合器夹有控制输出模的分光比的内部热-光移相器,随后是控制输出模的相对相位的第二调制器。通过控制由这两个移相器传播的相位,给定在mzi的两个电磁输入模上的受控入射相位,这些mzi执行su(2)lie组中的所有旋转。例如,可以在绝缘体上硅光子平台中用opsisfoundry制造纳米光子处理器。[0094]对于实验中使用的720个光学干涉单元和dmmc核心,测量的保真度是99.8±0.003%。在此模拟计算机中,保真度受实际的非理想条件的限制,诸如(1)使用每个通道16位电压分辨率的定制240-通道电压源可设置的光学相位的有限精度;(2)光探测噪声;以及(3)移相器之间的热串扰,这实际上降低用于设置相位的分辨率的位数。如同数字浮点运算一样,这些值表现出某个位数的精度,光学强度中的有限动态范围和噪声引起有效的截断误差。[0095]在此演示中,非线性变换iout=f(iin)是在电子域中通过测量光探测器阵列上的光模输出强度并将信号iout注入到下一级中来实现的。这里,f模拟与真实的可饱和吸收体(例如染料、半导体或石墨可饱和吸收体或可饱和放大器)关联的数学函数,可饱和吸收体可在电路的每个光学干涉级之后直接集成到波导中。例如,给定输入强度i0,可以从上面的等式(3)求解tm(i0),输出强度可按iout=i0·tm(i0)计算。[0096]在对纳米光子处理器编程以实现包括每一层具有4个神经元的4层光学干涉单元的光学神经网络架构之后,神经网络用于元音识别测试集。与仿真正确度165/180(91.7%)相比,该网络正确地识别138/180个(76.7%)案例。[0097]图14a示出具有各个相位编码误差(σf)和光探测误差(σd)的元音识别问题的正确率,这两个变量的定义可以在方法部分中找到。实线是不同水平的正确度百分比的轮廓。图14b-14e示出无误差训练矩阵的仿真和实验元音识别结果。在图14b中,发出元音a。在图14c中,发出元音b。在图14d中,发出元音c。在图14e中,发出元音d。[0098]由于光学神经网络1300在模拟信号域中处理信息,所以该架构可能易于有运算误差。光探测和相位编码是这里呈现的光学神经网络中误差的主要来源。为了理解onnw硬件架构中相位编码噪声和光探测噪声的角色,并开发其准确率模型,用不同程度的相位编码噪声(σf)和光探测噪声(σd)以数字方式仿真经训练矩阵的性能。正确度百分比对σf和σd的分布示于图14a中,图14a用作理解光学神经网络的实验性能的指南。[0099]在光探测阵列和电压控制器中实现较高精度模数转换器可以使光学神经网络的性能接近数字计算机的性能。已知技术可以应用于设计光电二极管阵列,以实现明显更高的动态范围,诸如使用对数或多级增益放大器。解决这些可管理的工程问题可以进一步提高光学神经网络的正确度性能,以实现接近误差校正数字计算机的性能的正确度百分比。[0100]以高速、低功率处理大数据可能是计算机科学领域中的核心挑战,并且实际上,数据中心中的大多数功率和处理器都花费在进行前向传播(测试时间预测)上。而且,低的前向传播速度限制了人工神经网络在包括自动驾驶汽车的许多领域中的应用,这些领域要求高速和并行的图像识别。[0101]相比现有技术的电子计算机架构,本文中描述的光学神经网络架构充分利用了高探测率、高灵敏度光子探测器以实现高速、能效神经网络。一旦参数已经被训练并在纳米光子处理器上被编程,则以光学方式对被动系统执行前向传播计算。在此实施方式中,维护相位调制器设置平均每个调制器只消耗大约10mw水平的少量的功率。此外,可以用非易失性相变材料设置相位,这维护起来不消耗任何功率。使用这种改变,总功耗可以只被物理大小、色散部件的光谱带宽(thz)和光探测速率(例如大约100ghz)限制。原则上,这种系统可以比电子神经网络(其局限于ghz时钟速率)快至少2个数量级。[0102]在具有n个节点、实现m层n×n矩阵乘法并以典型的100ghz光探测速率操作的光学神经网络中,系统每秒运算的次数可以是:[0103]r=2m×n2×1011运算/sꢀꢀꢀ(5)[0104]运算期间的onn功耗可以由光强度管控,以触发光学非线性,在光探测器处实现足够高的信噪比(snr)。在光学非线性单元中,可以假设触发可饱和吸收的阈值功率p大约为1mw/cm2。例如,染料可以具有大约0.3mw/cm2到大约1mw/cm2的阈值功率。石墨可以具有大约0.5mw/cm2到大约0.8mw/cm2的阈值功率。[0105]由于波导的横截面a大约为0.2μm×0.5μm,因此运转系统的总功率被估计为:p~nmw。因此,光学神经网络的每次运算的能量可以标定为r/p=2m×n×1014运算/焦耳(或p/r=5/mnfj/运算)。如果使用光学双稳态来代替可饱和吸收作为启动非线性现象,则可以获得差不多相同的能量性能和速度。即便对于非常小的神经网络,上面的功率效率已经相比常规的电子cpu和gpu中的功率效率高至少3个数量级,其中,p/r~1pj/运算(不包括花费在数据移动上的功率),而常规的图像识别任务通常涉及数千万个训练参数和几千个神经元(mn~105)。这些因素表明对于标准问题大小,本文中描述的光学神经网络可以比常规的计算机高效数千万倍。实际上,神经网络越大,使用光学器件的优点越多,原因是在电子学中评估n×n矩阵使用o(n2)能量,而在光学中,原则上不使用任何能量。[0106]光学神经网络还允许新方法来训练人工神经网络参数。在常规计算机上,参数是用后向传播和梯度下降训练的。然而,对于某些人工神经网络,参数的有效数目实质上超过不同的参数的数目(包括递归神经网络(rnn)和卷积神经网络(cnn)),使用后向传播进行训练可能是不高效的,这是众人皆知的。特别是rnn的递归性质使得他们事实上是极深的人工神经网络(深度=序列长度),而在cnn中,相同的权重参数在图像的不同部分被重复地使用以用于提取特征。[0107]在光学神经网络中,直接获得每个不同的参数的梯度的替代性方法可以不用后向传播来实现。此方法可以在光学神经网络上使用前向传播和有限差分方法。[0108]在这种方法中,用于人工神经网络中具体的不同的权重参数的梯度δwij可以用两个前向传播步骤来获得,这两个步骤是计算j((wij)和j(wij+δij),之后是评估δwij=j(wij+δij)-j(wij)/δij(此步骤只需要两次运算)。在常规计算机上,此方案不是有利的,原因是前向传播(评估j(w))通常计算量大。然而,在光学神经网络中,每个前向传播步骤是以恒定时间(由光探测速率限制,其可能超过100ghz)计算的,功耗只与神经元的数目成比例。而且,使用此片上训练方案,可以容易地用参数表示酉矩阵并训练酉矩阵。[0109]关于提出的光学神经网络的物理大小,当前的技术能够实现超过1000个神经元制式的光学神经网络。例如,可以制造具有高达4096个光学组件的光子电路。3-d光子集成可以通过增加另一空间自由度实现甚至更大的光学神经网络。而且,通过随时间(而不是一次供给全部)多个批次供给输入信号(例如图像),可以用相对小数目的物理神经元实现大得多的有效的神经网络。[0110]结论[0111]尽管在本文中已经描述和图示了各个本发明的实施例,但本领域技术人员将很容易设想用于执行功能和/或获得结果和/或本文中描述的一个或多个优点的各种其它装置和/或结构,且这些变形和/或改进中的每一个都被认为在本文中描述的本发明的实施例的范围内。更具体而言,本领域技术人员将很容易认识到本文中描述的所有参数、尺寸、材料和配置的含义是示例性的,且实际的参数、尺寸、材料和/或配置将取决于使用本发明的教导的特定应用。本领域技术人员将认识到或者能够仅仅使用常规实验弄清楚本文中描述的具体的本发明的实施例的许多等同。因此,要理解前述实施例只通过示例呈现,且在其所附权利要求和其等同物的范围内,本发明的实施例可以用与具体描述和声称的不同的方式实践。本公开的本发明的实施例涉及本文中描述的每个个别特征、系统、物品、材料、套件和/或方法。此外,如果这些特征、系统、物品、材料、套件和/或方法不是相互不一致的,则两个或更多个的这些特征、系统、物品、材料、套件和/或方法的任意组合包括在本公开的本发明的范围内。[0112]同样,各个本发明的构思可以体现为一个或多个方法,已经提供了其示例。作为方法的一部分执行的动作可以以任何适合方式被排序。因此,可以构造其中以不同于所图示的顺序执行的动作的实施例,其可以包括同时地执行一些动作,即便在图示的实施例中显示为有顺序的动作。[0113]如本文中定义和使用的所有定义应当理解为对照字典定义、通过引用并入的文献中的定义和/或所定义术语的普通含义。[0114]在说明书和权利要求书中使用的不定冠词“一”除非明确指示为相反,否则应当理解为表示“至少一个”。[0115]在说明书和权利要求书中使用的短语“和/或”应当理解为表示这样连结的元件中的“任一个或者两者”,即在一些情况下元件连带地存在,而在其它情况下元件分别存在。用“和/或”列出的多个元件应当以相同的方式解读,即“一个或多个”元件这样连结。除了由“和/或”从句明确标识的元件之外,其它元件可以可选地存在,不管与明确标识的那些元件相关或不相关。因此,作为非限制性示例,在与诸如“包括”的开放式语言连结使用时提到ꢀ“a和/或b”在一个实施例中可以指只有a(可选地包括除了b之外的元件);在另一实施例中,指只有b(可选地包括除了a之外的元件);在又一实施例中,指a和b两者(可选地包括其它元件);等等。[0116]在说明书和权利要求书中使用的“或”应当理解为与上面定义的“和/或”ꢀ具有相同的含义。例如,当在列表中分开各项目时,“或”或者“和/或”应解读为是包括性的,即包括许多元件或元件列表中的至少一个,但也包括不只一个,且可选地,包括附加的没有列出的项目。只有明确指示为相反的术语,诸如“只有一个”或“恰好一个”或在权利要求书中使用时,“由...组成”ꢀ指的是包括许多元件或元件列表中的恰好一个元件。通常,本文中使用的术语“或”其前面有诸如“或者”、“...中的一个”、“...中只有一个”或者“...中的恰好一个”排他性术语时,将只解读为指示互斥方案(即“一个或另一个但不是两者”)。“基本上包括”在权利要求书中使用时将具有与用在专利法领域中一样的普通含义。[0117]如在说明书和权利要求书中所使用的,短语“至少一个”在谈及一个或多个元件的列表时,应理解为含义是从元件列表中的任何一个或多个元件中选择的至少一个元件,但不一定包括元件列表中明确列出的所有的元件中的至少一个,且不排除元件列表中元件的任何组合。此定义还使得除了在短语“至少一个”指示的元件列表中明确标识的那些元件之外,元件可以可选地存在,而不管与明确标识的那些元件相关或不相关。因此,作为非限制性示例,“a和b中的至少一个”(或等同地“a或b的至少一个”或者等同地“a和/或b中的至少一个”)在一个实施例中可以指至少一个a,可选地包括不只一个,但b不存在(且可选地包括除了b之外的元件);在另一实施例中,指至少一个b,可选地包括不只一个,但a不存在(可选地包括除了a之外的元件);在又一实施例中,指至少一个a,可选地包括不只一个,且至少一个b,可选地包括不只一个(可选地包括其它元件)等。[0118]在权利要求书以及在上面的说明书中,所有的过渡性短语,例如“包括(comprising)”、“包括(including)”、“携带(carrying)”、“具有(having)”、ꢀ“包含(containing)”、“涉及(involving)”、“保持(holding)”、“由...组成(composedof)”等应理解为是开放性的,即含义是包括但不限于。只有过渡性短语“由...组成(consistingof)”和“基本上由...组成(consistingessentiallyof)”相应地是封闭或半封闭的过渡性短语,如在unitedstatespatentofficemanualofpatentexaminingprocedures,section2111.03(美国专利审查程序专利办公室手册,2111.03部分)中陈述的。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1