CN112232487A - 光学神经网络芯片及其计算方法 - Google Patents
光学神经网络芯片及其计算方法 Download PDFInfo
- Publication number
- CN112232487A CN112232487A CN202011121100.1A CN202011121100A CN112232487A CN 112232487 A CN112232487 A CN 112232487A CN 202011121100 A CN202011121100 A CN 202011121100A CN 112232487 A CN112232487 A CN 112232487A
- Authority
- CN
- China
- Prior art keywords
- photon
- optical
- weight
- bias
- resonators
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/067—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means
- G06N3/0675—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means using electro-optical, acousto-optical or opto-electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Optical Integrated Circuits (AREA)
- Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
Abstract
本公开提供了一种光学神经网络芯片及其计算方法,包括:光子权重模块,用于实现多个权重的编码,并基于多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的光信号表示的输入数据分别与多个权重的光学乘加计算;光子偏置模块,用于实现多个偏置的编码;光电探测器阵列,用于探测多个光学乘加计算与多个偏置一一对应的求和计算的结果。该芯片及计算方法利用光子实现神经网络计算,可以大幅度提高计算速度并降低计算能耗,通过波分复用对不同的数据进行表示,提高了芯片的计算性能。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种光学神经网络芯片及其计算方法。
背景技术
近年来,神经网络技术迅速发展,广泛的应用于图像处理、自然语言处理等领域。芯片技术的进步对于神经网络技术的发展有着重要的推动作用。当前应用于神经网络加速运算的芯片主要有图形处理单元(GPU)、现场可编程逻辑门阵列(FPGA)、专用集成电路(ASIC)三大类,均基于传统的电芯片技术。随着摩尔定律发展减缓以及冯·诺依曼架构瓶颈凸显,传统电芯片技术面临着日益严重的能耗等问题。与电子相比,光子具有高速度、高带宽、低功耗的优势,因此通过光学芯片实现神经网络计算,可以有效的提升计算速度,降低计算功耗。
在现有的光学神经网络芯片方案中,多数利用光的幅度对输入数据和权重进行编码,光的幅度具有非负性,神经网络中的权重一般既有正值也有负值,需要进行芯片结构和计算方法的联合设计实现。并且,在神经网络计算中,除了输入数据和权重,偏置也有着重要的作用,在芯片的设计中,需要进行各部分的联合设计。
发明内容
本公开的主要目的在于提供一种光学神经网络芯片及其计算方法,以提高光学神经网络芯片的计算性能。
为实现上述目的,本公开实施例第一方面提供一种光学神经网络芯片,包括:光子权重模块,用于实现多个权重的编码,并基于所述多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的所述光信号表示的输入数据分别与所述多个权重的光学乘加计算;其中,所述光子权重模块包括多个光子权重单元,每一所述光子权重单元均包括两列谐振器,其中一列谐振器包括的各谐振器用于将所述多个权重分别进行第一权重编码,另一列谐振器包括的各谐振器用于将所述多个权重分别进行第二权重编码,所述两列谐振器中每行对应的谐振器得到的第一权重编码与第二权重编码的差值表示一个权重;所述光子偏置模块,用于实现多个偏置的编码;所述光电探测器阵列,用于探测多个所述光学乘加计算与多个所述偏置一一对应的求和计算的结果。
可选地,所述光子权重单元包括N行相互平行的横向波导、两列相互平行的纵向波导和2N个所述谐振器,N表示所述输入信号包括的不同波长的光信号的数量,所述横向波导和纵向波导之间垂直交叉,各交叉处均设有一个所述谐振器,形成纵向的两列谐振器,分别用于对所述多个权重进行第一权重编码和第二权重编码;各所述光子权重单元的横向波导一一对应连接,所述输入信号通过各所述横向波导输入所述光子权重单元中。
可选地,包括:在所述光子权重单元中,所述两列谐振器中每行对应的两个谐振器相同,分别用于对同一所述权重进行所述第一权重编码和所述第二权重编码,并调制所述输入信号中同一波长的所述光信号,以实现对所述光信号表示的输入数据与所述权重的乘积计算;所述两列谐振器中各行的所述谐振器互不相同,分别用于对不同的所述权重进行所述第一权重编码和所述第二权重编码,并分别调制所述输入信号中不同波长的光信号,实现所述不同波长的光信号表示的多个输入数据与多个所述权重一一对应的的乘积计算;当实现所述多个输入数据与多个所述权重一一对应的乘积计算后,对所述乘积计算的光信号求和;各所述光子权重单元对应连接的所述横向波导上的所述谐振器交错调制不同波长的所述光信号。
可选地,所述光子偏置模块包括:光源,用于产生偏置光信号;分束器,用于将所述偏置光信号分为多束后输出给光子偏置单元;多个光子偏置单元,所述光子偏置单元与所述光子权重单元一一对应,每个所述光子偏置单元均包括两个谐振器,与对应的所述光子权重单元中的两列纵向波导的延伸一一对应连接,其中一个谐振器用于实现所述偏置的第一偏置编码,另一个谐振器用于实现所述偏置的第二偏置编码,所述第一偏置编码与所述第二偏置编码的差值表示所述偏置。
可选地,所述光电探测器阵列包括多个平衡光电探测器,与所述光子权重单元一一对应连接,其中,所述平衡光电探测器包括的两个光电探测器分别用于探测所述光子权重单元的两列纵向波导的延伸上传输的光信号,所述两列纵向波导上传输的光信号的信号差表示所述求和计算的结果。
可选地,包括:在所述光子权重单元中,所述两列谐振器均相同,各行谐振器分别对不同所述权重进行所述第一权重编码和所述第二权重编码,并调制所述输入信号中同一波长的所述光信号,以实现对所述光信号表示的多个输入数据分别与多个所述权重的乘积计算;当实现所述多个输入数据与多个所述权重的乘积计算后,对表示所述乘积计算的光信号求和;各所述光子权重单元调制的所述光信号的波长不同。
可选地,所述光子偏置模块包括:多个光子偏置单元,所述光子偏置单元与所述光子权重单元一一对应,各所述光子偏置单元各编码一个偏置,每个所述光子偏置单元均包括两个谐振器,其中一个谐振器用于实现所述偏置的第一偏置编码,另一个谐振器用于实现所述偏置的第二偏置编码,所述第一偏置编码与所述第二偏置编码的差值表示所述偏置,所述两个谐振器与所述光子权重单元中的两列纵向波导的延伸一一对应连接。
可选地,所述光电探测器阵列包括多个平衡光电探测器,与所述光子偏置单元一一对应连接,其中,所述平衡光电探测器包括的两个光电探测器分别用于探测所述光子权重单元的两列纵向波导的延伸上传输的光信号,所述两列纵向波导上传输的光信号的信号差表示所述求和计算的结果。
可选地,所述芯片还包括光子输入模块,用于产生所述输入信号,并将所述输入信号输入所述光子权重模块中,所述光子输入模块包括:光源阵列,用于产生多个不同波长的所述光信号;调制器阵列,用于对所述光信号进行幅度调制;复用器,用于将不同波长的所述光信号合为一束输入信号;分束器,用于将所述输入信号分为多束,所述输入信号中包括了不同波长的所述光信号。
本公开另一方面提供了一种光学神经网络芯片的计算方法,包括:
S100,对不同波长的光信号进行调制编码,以表示多个输入数据,并将所述不同波长的光信号合束为输入信号后,分为多束输入光子权重模块;S200,所述光子权重模块实现多个权重的编码,并基于所述多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的所述光信号表示的输入数据分别与所述多个权重的光学乘加计算;其中,所述光子权重模块包括多个光子权重单元,每一所述光子权重单元均包括两列谐振器,其中一列谐振器包括的各谐振器用于将所述多个权重分别进行第一权重编码,另一列谐振器包括的各谐振器用于将所述多个权重分别进行第二权重编码,所述两列谐振器中每行对应的谐振器得到的第一权重编码与第二权重编码的差值表示一个权重;S300,利用光子偏置模块实现多个偏置的编码;S400,利用光电探测器阵列探测多个所述光学乘加计算与多个所述偏置的求和计算的结果;S500,对所得到的结果进行非线性函数计算,所得输出作为下一层神经网络计算的输入。
本公开提供了一种光学神经网络芯片及其计算方法,该光学神经网络芯片利用光子实现神经网络计算,可以大幅度提高计算速度并降低计算能耗;通过波分复用对不同的数据进行表示,提高计算并行度;通过光学神经网络芯片的空间复用实现神经网络的正负值计算,提高了光学神经网络芯片的计算性能。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种光学神经网络芯片的整体架构示意图;
图2为本公开实施例提供的一种光学神经网络芯片的一种光子权重模块结构示意图;
图3为本公开实施例提供的一种光学神经网络芯片的一种光子偏置模块结构示意图;
图4为本公开实施例提供的一种光学神经网络芯片的另一种光子权重模块结构示意图;
图5为本公开实施例提供的一种光学神经网络芯片的另一种光子偏置模块结构示意图;
图6为本公开实施例提供的一种光学神经网络芯片的一种光子输入模块结构示意图;
图7为本公开实施例提供的光学神经网络芯片的计算方法的流程示意图。
具体实施方式
为使得本公开的发明目的、特征、优点能够更加的明显和易懂,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而非全部实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
神经网络是指一系列受生物学启发而构建的数学模型,其基本组成单元为人工神经元。对于人工神经元而言,最重要的为线性计算部分和非线性计算部分。在线性计算部分,来自其他神经元的信息与权重乘积,y’=W*x+b,其中x为输入,W为权重,b为偏置,W与b均为可学习的参数。在输出之前,线性乘积结果还需要进行非线性计算,y=f(y’),其中y为输出,f()为非线性函数,又被为激活函数,常用的激活函数如Sigmoid函数、双曲正切函数、ReLU函数。
图1为本公开实施例提供的光学神经网络芯片的整体架构示意图。
如图1所示,本公开实施例提供的光学神经网络芯片包括:光子权重模块1、光子偏置模块2和光电探测器阵列3。
光子权重模块1,用于实现多个权重的编码,并基于多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的光信号表示的输入数据分别与多个权重的光学乘加计算。
其中,光子权重模块1包括多个光子权重单元,每一光子权重单元均包括两列谐振器,其中一列谐振器包括的各谐振器用于将多个权重分别进行第一权重编码,另一列谐振器包括的各谐振器用于将多个权重分别进行第二权重编码,两列谐振器中每行对应的谐振器得到的第一权重编码与第二权重编码的差值表示一个权重。
光子偏置模块2,用于实现多个偏置的编码。
光电探测器阵列3,用于探测多个光学乘加计算与多个偏置一一对应的求和计算的结果。
具体的,不同波长的光信号经过幅度调制后,分别表示不同的输入数据,将各波长的光信号合束得到输入信号,将输入信号分为多束,分别从多个端口输入至光子权重模块1;光子权重模块1中的每一个光子权重单元均包括两列谐振器,一列对权重进行第一编码,另一列对权重进行第二编码,例如,当权重为正值时,同一行谐振器中的一个对权重的绝对值进行编码,另一个谐振器对零值进行编码,则两个谐振器编码的差值表示了该正值权重,当权重为负值时,同一行谐振器中的一个对零值进行编码,另一个谐振器对权重的绝对值进行编码,则两个谐振器编码的差值表示了该负值权重,在权重编码后,光子权重单元中的谐振器调制指定的波长光信号的幅度,实现该波长的光信号表示的输入数据与权重的乘积计算;光子偏置模块2中的光子偏置单元对偏置进行光学编码,偏置与权重乘积加和结果相加,所得结果输入至光电探测器阵列3,偏置的编码与权重的编码类似,由两个谐振器分别进行编码,且得到的两个编码的差值表示该编码;光电探测器阵列3包括多个平衡光电探测器,由于权重、偏置的编码均由两列谐振器共同编码,平衡光电探测器包括的两个光电探测器分别探测经两列谐振器调幅编码后的光信号,两个信号取差值,该差值表示偏置与光学乘加计算的结果的求和计算结果,所得结果可用于进行进一步的非线性计算。
图2为本公开实施例提供的一种光学神经网络芯片的一种光子权重模块结构示意图。
如图2所示,光子权重单元包括N行相互平行的横向波导、两列相互平行的纵向波导和2N个谐振器,N表示输入信号包括的不同波长的光信号的数量,横向波导和纵向波导之间垂直交叉,各交叉处均设有一个谐振器,形成纵向的两列谐振器,分别用于对多个权重进行第一权重编码和第二权重编码;各光子权重单元的横向波导一一对应连接,输入信号通过各横向波导输入光子权重单元中。在本公开实施例中,N=3。
在光子权重单元中,两列谐振器中每行对应的两个谐振器相同,分别用于对同一权重进行第一权重编码和第二权重编码,并调制输入信号中同一波长的光信号,以实现对光信号表示的输入数据与权重的乘积计算。
如图2所示,输入信号通过横向波导输入光子权重单元11、12、13中,包括的光信号的波长分别为λ1、λ2、λ3,以第一行横向波导为例,输入信号进入该横向波导,进入光子权重单元11,该光子权重单元11的该行横向波导上的两个谐振器分别用于实现一个权重w11的第一权重编码和第二权重编码,且用于调制波长为λ1的光信号的幅值或功率,以实现权重w11和波长为λ1的光信号表示的输入数据x1的乘积,即w11*x1。
两列谐振器中各行的谐振器互不相同,分别用于对不同的权重进行第一权重编码和第二权重编码,并分别调制输入信号中不同波长的光信号,以实现不同波长的光信号表示的多个输入数据与多个权重一一对应的乘积计算。
如图2所示,光子权重单元11的第一、二、三行的横向波导上的谐振器用于实现权重w11、w12和w13的编码,其中,第一行横向波导上的谐振器用于调制波长为λ1的光信号的幅值或功率,以实现权重w11和波长为λ1的光信号表示的输入数据x1的乘积,即w11*x1,第二行横向波导上的谐振器用于调制波长为λ2的光信号的幅值或功率,以实现权重w12和波长为λ2的光信号表示的输入数据x2的乘积,即w12*x2,第三行横向波导上的谐振器用于调制波长为λ3的光信号的幅值或功率,以实现权重w13和波长为λ3的光信号表示的输入数据x3的乘积,即w13*x3。
当实现多个输入数据与多个权重的乘积计算后,对表示乘积计算的光信号求和,实现不同输入数据与多个权重的一一对应的乘积结果的加和计算。
参阅图2的光子权重单元11,加和计算为w11*x1+w12*x2+w13*x3。
各光子权重单元对应连接的横向波导上的谐振器交错调制不同波长的光信号。
参阅图2的光子权重单元11、12、13,光子权重单元12、13分别实现了对权重w21、w22、w23和w31、w32、w33的编码,且每个横向波导上的谐振器相对于其余光子权重单元交错调制不同波长的光信号,其中,光子权重单元12的第一行、第二行、第三行横向波导上的谐振器分别用于调制波长为λ2、λ3、λ1的光信号的幅值或功率,光子权重单元13的第一行、第二行、第三行横向波导上的谐振器分别用于调制波长为λ3、λ2、λ1的光信号的幅值或功率,波长为为λ1、λ2、λ3的光信号分别表示了输入x1、x2、x3,则光子权重单元12实现了w21*x2+w22*x3+w23*x1,光子权重单元13实现了w31*x3+w32*x1+w33*x2。
图3为本公开实施例提供的一种光学神经网络芯片的一种光子偏置模块结构示意图。
如图3所示,在图2所示的光子权重模块1的基础下,光子偏置模块2包括:光源21、分束器22和多个光子偏置单元23。
光源21,用于产生偏置光信号。
分束器22,用于将偏置光信号分为多束后输出给光子偏置单元。
多个光子偏置单元23,光子偏置单元23与光子权重单元11、12、13一一对应,各光子偏置单元23各编码一个偏置,每个光子偏置单元23均包括两个谐振器,两个谐振器与光子权重单元11、12、13中的两列纵向波导的延伸一一对应连接,其中一个谐振器用于实现偏置的第一偏置编码,另一个谐振器用于实现偏置的第二偏置编码,第一偏置编码与第二偏置编码的差值表示偏置。
在本公开实施例中,偏置光信号的波长为λ4,在各光子偏置单元23中,其中一个谐振器用于实现偏置的第一偏置编码,另一个谐振器用于实现偏置的第二偏置编码,例如,若该偏置为正值4,第一偏置编码可以表示数值4,第二偏置编码可以表示0,则两编码的差值表示了该偏置。各光子偏置单元23编码的偏置分别为b1、b2、b3,参考图2所示光子权重模块1中各光子权重单元11、12、13得到的输入数值与权重的乘加计算,各光子偏置单元23实现偏置与对应的光子权重单元11、12、13产生的乘加计算的结果的求和计算,可分别表示为w11*x1+w12*x2+w13*x3+b1、w21*x2+w22*x3+w23*x1+b2、w31*x3+w32*x1+w33*x2+b3。
可选的,光子偏置模块2的光源21为激光器光源,光子偏置模块2的分束器22为定向耦合器、多模干涉耦合器或者星型耦合器,光子偏置模块2的光子偏置单元23为马赫曾德调制器、微环谐振器、微盘调制器或者沉积相变材料的光波导。
参阅图1,光电探测器阵列3包括多个平衡光电探测器,当光子权重单元和光子偏置单元如图2、3所示时,平衡光电探测器与光子权重单元一一对应连接,其中,平衡光电探测器包括的两个光电探测器分别用于探测光子权重单元的两列纵向波导的延伸上传输的光信号,两列纵向波导上传输的光信号的信号差表示求和计算的结果。
在本公开实施例中,光电探测器阵列3探测光子权重单元11、12、13的两列纵向波导的延伸上传输的光信号后,求探测到的两个光信号的差值,得到求和计算可分别表示为y1=w11*x1+w12*x2+w13*x3+b1、y2=w21*x2+w22*x3+w23*x1+b2、y3=w31*x3+w32*x1+w33*x2+b3,并对结果y1、y2、y3进行非线性函数计算。
图4为本公开实施例提供的一种光学神经网络芯片的另一种光子权重模块结构示意图。
在光子权重单元中,两列谐振器均相同,各行谐振器分别对不同权重进行第一权重编码和第二权重编码,并调制输入信号中同一波长的光信号,以实现对光信号表示的多个输入数据分别与多个权重的乘积计算。
参阅图4,输入信号通过横向波导输入光子权重单元11、12、13中,包括的光信号的波长分别为λ1、λ2、λ3,以光子权重单元11为例,该光子权重单元的各行横向波导上的谐振器分别用于实现权重w11、w12、w13的编码,且各行横向波导上的谐振器均用于调制波长为λ1的光信号的幅值或功率,分别实现权重w11、w12和w13和波长为λ1的光信号表示的输入数据x1、x2、x3的乘积,即w11*x1、w12*x2、w13*x3,其中,表示输入数据x1、x2、x3的光信号的幅值或功率不同。
当实现输入数据与多个权重的乘积计算后,对表示乘积计算的光信号求和,实现输入数据与多个权重的乘积结果的加和计算。
参阅图4的光子权重单元11,加和计算为w11*x1+w12*x2+w13*x3,实现了输入数据与各权重的乘积之和。
各光子权重单元调制的光信号的波长不同。
在本公开实施例中,与光子权重单元11相同,光子权重单元12、13的各行横向波导上的谐振器分别实现了权重w21、w22、w23和w31、w32、w33的编码,且光子权重单元12调制波长为λ2的光信号,光子权重单元13调制波长为λ3的光信号,同一波长的光信号被调制为不同幅值或功率,分别表示了输入数据x1、x2、x3,则光子权重单元12实现了w21*x2+w22*x3+w23*x1,光子权重单元13实现了w31*x3+w32*x1+w33*x2。
图5为本公开实施例提供的一种光学神经网络芯片的另一种光子偏置模块结构示意图。
如图5所示,在图4所示的光子权重单元的基础下,光子偏置模块2包括:多个光子偏置单元21、22、23。
光子偏置单元21、22、23与光子权重单元一一对应,各光子偏置单元各编码一个偏置,每个光子偏置单元均包括两个谐振器,其中一个谐振器用于实现偏置的第一偏置编码,另一个谐振器用于实现偏置的第二偏置编码,第一偏置编码与第二偏置编码的差值表示偏置,两个谐振器与光子权重单元中的两列纵向波导的延伸一一对应连接。
在本公开实施例中,各光子偏置单元21、22、23编码的偏置分别为b1、b2、b3,各光子权重单元11、12、13得到输入数值与权重的乘加计算,各光子偏置单元21、22、23实现偏置与对应的光子权重单元11、12、13产生的乘加计算的结果的求和计算,可分别表示为w11*x1+w12*x2+w13*x3+b1、w21*x2+w22*x3+w23*x1+b2、w31*x3+w32*x1+w33*x2+b3。
光电探测器阵列3包括多个平衡光电探测器,当光子权重单元和光子偏置单元如图4、5所示时,与光子偏置单元21、22、23一一对应连接,其中,平衡光电探测器包括的两个光电探测器分别用于探测光子权重单元的两列纵向波导的延伸上传输的光信号,两列纵向波导上传输的光信号的信号差表示求和计算的结果。
在本公开实施例中,光电探测器阵列3探测光子权重单元11、12、13的两列纵向波导的延伸上传输的光信号后,求探测到的两个光信号的差值,得到求和计算可分别表示为y1=w11*x1+w12*x2+w13*x3+b1、y2=w21*x2+w22*x3+w23*x1+b2、y3=w31*x3+w32*x1+w33*x2+b3,并对结果y1、y2、y3进行非线性函数计算。
图6为本公开实施例提供的一种光学神经网络芯片的一种光子输入模块结构示意图。
参阅图6,芯片还包括光子输入模块,用于产生输入信号,并将输入信号输入光子权重模块1中,光子输入模块包括:光源阵列41、调制器阵列42、复用器43和分束器44。
光源阵列41,用于产生多个不同波长的光信号。
调制器阵列42,用于对光信号进行幅度调制。
复用器43,用于将不同波长的光信号合为一束输入信号。
分束器44,用于将输入信号分为多束,输入信号中包括了不同波长的光信号。
具体的,光源阵列41包括N个不同波长的激光器光源;调制器阵列42包括N个马赫曾德调制器,分别与N个激光器光源相连,对接收到的光信号进行幅度调制,完成输入数据的光学编码;复用器43将N束光合为一束,并传至分束器44中;分束器44为多模干涉耦合器,将光分成N束,其中的每一束均包含调制后的N个不同波长的光信号。在本公开实施例中,N等于3。
在上述光学神经网络芯片中,谐振器可以为微环谐振器或者微盘谐振器,谐振器调制方式可以为热光调制、电光调制或者根据相变材料不同状态调制。
需要说明的是,光源阵列41、调制器阵列42、复用器43和分束器44的连接顺序不仅限于图6所示的连接方式,可以根据实际需求进行相应调整。
图7为本公开实施例提供的光学神经网络芯片的计算方法的流程示意图。
本公开提供的一种光学神经网络芯片的计算方法,应用于上述的光学神经网络芯片,包括S100~S500。
S100,对不同波长的光信号进行调制编码,以表示多个输入数据,并将不同波长的光信号合束为输入信号后,分为多束输入光子权重模块。
S200,光子权重模块实现多个权重的编码,并基于多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的光信号表示的输入数据分别与多个权重的光学乘加计算。
S300,利用光子偏置模块实现多个偏置的编码。
S400,利用光电探测器阵列探测多个光学乘加计算与多个偏置的求和计算的结果。
S500,对所得到的结果进行非线性函数计算,所得输出作为下一层神经网络计算的输入。
在本申请所提供的多个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本公开所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本公开所提供的光学神经网络芯片及其计算方法的描述,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本公开的限制。
Claims (10)
1.一种光学神经网络芯片,其特征在于,包括:
光子权重模块,用于实现多个权重的编码,并基于所述多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的所述光信号表示的输入数据分别与所述多个权重的光学乘加计算;
其中,所述光子权重模块包括多个光子权重单元,每一所述光子权重单元均包括两列谐振器,其中一列谐振器包括的各谐振器用于将所述多个权重分别进行第一权重编码,另一列谐振器包括的各谐振器用于将所述多个权重分别进行第二权重编码,所述两列谐振器中每行对应的谐振器得到的第一权重编码与第二权重编码的差值表示一个权重;
所述光子偏置模块,用于实现多个偏置的编码;
所述光电探测器阵列,用于探测多个所述光学乘加计算与多个所述偏置一一对应的求和计算的结果。
2.根据权利要求1所述的光学神经网络芯片,其特征在于,所述光子权重单元包括N行相互平行的横向波导、两列相互平行的纵向波导和2N个所述谐振器,N表示所述输入信号包括的不同波长的光信号的数量,所述横向波导和纵向波导之间垂直交叉,各交叉处均设有一个所述谐振器,形成纵向的两列谐振器,分别用于对所述多个权重进行第一权重编码和第二权重编码;各所述光子权重单元的横向波导一一对应连接,所述输入信号通过各所述横向波导输入所述光子权重单元中。
3.根据权利要求2所述的光学神经网络芯片,其特征在于,包括:
在所述光子权重单元中,所述两列谐振器中每行对应的两个谐振器相同,分别用于对同一所述权重进行所述第一权重编码和所述第二权重编码,并调制所述输入信号中同一波长的所述光信号,以实现对所述光信号表示的输入数据与所述权重的乘积计算;
所述两列谐振器中各行的所述谐振器互不相同,分别用于对不同的所述权重进行所述第一权重编码和所述第二权重编码,分别调制所述输入信号中不同波长的光信号,实现所述不同波长的光信号表示的多个输入数据与多个所述权重的一一对应的乘积计算;
当实现所述多个输入数据与多个所述权重的一一对应的乘积计算后,对所述乘积计算的光信号求和;
各所述光子权重单元对应连接的所述横向波导上的所述谐振器交错调制不同波长的所述光信号。
4.根据权利要求3所述的光学神经网络芯片,其特征在于,所述光子偏置模块包括:
光源,用于产生偏置光信号;
分束器,用于将所述偏置光信号分为多束后输出给光子偏置单元;
多个光子偏置单元,所述光子偏置单元与所述光子权重单元一一对应,各所述光子偏置单元各编码一个偏置,每个所述光子偏置单元均包括两个谐振器,与对应的所述光子权重单元中的两列纵向波导的延伸一一对应连接,其中一个谐振器用于实现所述偏置的第一偏置编码,另一个谐振器用于实现所述偏置第二偏置编码,所述第一偏置编码与所述第二偏置编码的差值表示所述偏置。
5.根据权利要求4所述的光学神经网络芯片,其特征在于,所述光电探测器阵列包括多个平衡光电探测器,与所述光子权重单元一一对应连接,其中,所述平衡光电探测器包括的两个光电探测器分别用于探测所述光子权重单元的两列纵向波导的延伸上传输的光信号,所述两列纵向波导上传输的光信号的信号差表示所述求和计算的结果。
6.根据权利要求2所述的光学神经网络芯片,其特征在于,包括:
在所述光子权重单元中,所述两列谐振器均相同,各行谐振器分别对不同所述权重进行所述第一权重编码和所述第二权重编码,并调制所述输入信号中同一波长的所述光信号,以实现对所述光信号表示的多个输入数据分别与多个所述权重的乘积计算;
当实现所述多个输入数据与多个所述权重的乘积计算后,对表示所述乘积计算的光信号求和;
各所述光子权重单元调制的所述光信号的波长不同。
7.根据权利要求6所述的光学神经网络芯片,其特征在于,所述光子偏置模块包括:
多个光子偏置单元,所述光子偏置单元与所述光子权重单元一一对应,各所述光子偏置单元各编码一个偏置,每个所述光子偏置单元均包括两个谐振器,其中一个谐振器用于实现所述偏置的第一偏置编码,另一个谐振器用于实现所述偏置的第二偏置编码,所述第一偏置编码与所述第二偏置编码的差值表示所述偏置,所述两个谐振器与所述光子权重单元中的两列纵向波导的延伸一一对应连接。
8.根据权利要求7所述的光学神经网络芯片,其特征在于,所述光电探测器阵列包括多个平衡光电探测器,与所述光子偏置单元一一对应连接,其中,所述平衡光电探测器包括的两个光电探测器分别用于探测所述光子权重单元的两列纵向波导的延伸上传输的光信号,所述两列纵向波导上传输的光信号的信号差表示所述求和计算的结果。
9.根据权利要求1所述的光学神经网络芯片,其特征在于,所述芯片还包括光子输入模块,用于产生所述输入信号,并将所述输入信号输入所述光子权重模块中,所述光子输入模块包括:
光源阵列,用于产生多个不同波长的所述光信号;
调制器阵列,用于对所述光信号进行幅度调制;
复用器,用于将不同波长的所述光信号合为一束输入信号;
分束器,用于将所述输入信号分为多束,所述输入信号中包括了不同波长的所述光信号。
10.一种光学神经网络芯片的计算方法,应用于如权利要求1至9所述的光学神经网络芯片,其特征在于,包括:
S100,对不同波长的光信号进行调制编码,以表示多个输入数据,并将所述不同波长的光信号合束为输入信号后,分为多束输入光子权重模块;
S200,所述光子权重模块实现多个权重的编码,并基于所述多个权重的编码,调节输入信号中包括的多个不同波长的光信号的幅值,实现各波长的所述光信号表示的输入数据分别与所述多个权重的光学乘加计算;
S300,利用光子偏置模块实现多个偏置的编码;
S400,利用光电探测器阵列探测多个所述光学乘加计算与多个所述偏置的求和计算的结果;
S500,对所得到的结果进行非线性函数计算,所得输出作为下一层神经网络计算的输入。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011121100.1A CN112232487B (zh) | 2020-10-19 | 2020-10-19 | 光学神经网络芯片及其计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011121100.1A CN112232487B (zh) | 2020-10-19 | 2020-10-19 | 光学神经网络芯片及其计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112232487A true CN112232487A (zh) | 2021-01-15 |
CN112232487B CN112232487B (zh) | 2023-09-22 |
Family
ID=74119140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011121100.1A Active CN112232487B (zh) | 2020-10-19 | 2020-10-19 | 光学神经网络芯片及其计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112232487B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115508958A (zh) * | 2022-10-08 | 2022-12-23 | 深圳中科天鹰科技有限公司 | 一种基于光学神经网络的光子芯片 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678258A (zh) * | 2013-12-25 | 2014-03-26 | 中国科学院半导体研究所 | 一种提高硅基光学矩阵处理器数据分辨率的方法及处理器 |
WO2017210550A1 (en) * | 2016-06-02 | 2017-12-07 | Massachusetts Institute Of Technology | Apparatus and methods for optical neural network |
CN109376855A (zh) * | 2018-12-14 | 2019-02-22 | 中国科学院计算技术研究所 | 一种光神经元结构和包含该结构的神经网络处理系统 |
CN109784485A (zh) * | 2018-12-26 | 2019-05-21 | 中国科学院计算技术研究所 | 一种光学神经网络处理器及其计算方法 |
US20190244090A1 (en) * | 2018-02-06 | 2019-08-08 | Dirk Robert Englund | Serialized electro-optic neural network using optical weights encoding |
JP2020079980A (ja) * | 2018-11-12 | 2020-05-28 | 日本電信電話株式会社 | 光偏微分演算装置および光ニューラルネットワーク |
WO2020180351A1 (en) * | 2019-03-05 | 2020-09-10 | University Of Central Florida | Photonic tensor accelerators for artificial neural networks |
CN112384748A (zh) * | 2018-05-15 | 2021-02-19 | 轻物质公司 | 光子处理系统和方法 |
-
2020
- 2020-10-19 CN CN202011121100.1A patent/CN112232487B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678258A (zh) * | 2013-12-25 | 2014-03-26 | 中国科学院半导体研究所 | 一种提高硅基光学矩阵处理器数据分辨率的方法及处理器 |
WO2017210550A1 (en) * | 2016-06-02 | 2017-12-07 | Massachusetts Institute Of Technology | Apparatus and methods for optical neural network |
US20190244090A1 (en) * | 2018-02-06 | 2019-08-08 | Dirk Robert Englund | Serialized electro-optic neural network using optical weights encoding |
CN112384748A (zh) * | 2018-05-15 | 2021-02-19 | 轻物质公司 | 光子处理系统和方法 |
JP2020079980A (ja) * | 2018-11-12 | 2020-05-28 | 日本電信電話株式会社 | 光偏微分演算装置および光ニューラルネットワーク |
CN109376855A (zh) * | 2018-12-14 | 2019-02-22 | 中国科学院计算技术研究所 | 一种光神经元结构和包含该结构的神经网络处理系统 |
CN109784485A (zh) * | 2018-12-26 | 2019-05-21 | 中国科学院计算技术研究所 | 一种光学神经网络处理器及其计算方法 |
WO2020180351A1 (en) * | 2019-03-05 | 2020-09-10 | University Of Central Florida | Photonic tensor accelerators for artificial neural networks |
Non-Patent Citations (1)
Title |
---|
周庆芳;: "基于VHDL的BP神经网络的设计与实现", 新校园(上旬), no. 02 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115508958A (zh) * | 2022-10-08 | 2022-12-23 | 深圳中科天鹰科技有限公司 | 一种基于光学神经网络的光子芯片 |
CN115508958B (zh) * | 2022-10-08 | 2024-05-24 | 深圳中科天鹰科技有限公司 | 一种基于光学神经网络的光子芯片 |
Also Published As
Publication number | Publication date |
---|---|
CN112232487B (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109639359B (zh) | 基于微环谐振器的光子神经网络卷积层芯片 | |
CN112101540B (zh) | 光学神经网络芯片及其计算方法 | |
US11936434B2 (en) | Systems and methods for analog computing using a linear photonic processor | |
CN111683304B (zh) | 在光波导和/或光芯片上实现的全光衍射神经网络及系统 | |
WO2022016894A1 (zh) | 一种光子神经网络 | |
CN116348886A (zh) | 相干光子计算架构 | |
CN112232503B (zh) | 计算装置、计算方法以及计算系统 | |
US20220012582A1 (en) | Neuromorphic photonics with coherent linear neurons | |
CN115167610B (zh) | 二维光子卷积加速芯片及应用系统与方法 | |
CN113805641B (zh) | 一种光子神经网络 | |
CN115169542B (zh) | 一种面向卷积神经网络的二维光子卷积加速系统和装置 | |
Totovic et al. | WDM equipped universal linear optics for programmable neuromorphic photonic processors | |
CN115222035B (zh) | 一种光子神经网络卷积加速芯片 | |
TW202215118A (zh) | 光電處理設備、系統及方法 | |
CN117077750B (zh) | 一种并行光子卷积运算芯片及系统 | |
CN114325932B (zh) | 一种片上集成的全光神经网络光计算芯片 | |
CN112232487B (zh) | 光学神经网络芯片及其计算方法 | |
CN114565091A (zh) | 光学神经网络装置、芯片及神经网络计算的光学实现方法 | |
CN115989394A (zh) | 光子处理器中利用光子自由度的系统和方法 | |
CN116739063A (zh) | 一种基于多模干涉仪以及相干检测的神经网络加速器 | |
CN115496195A (zh) | 基于mzi阵列和fp-sa的光脉冲神经网络实现装置 | |
CN114970868A (zh) | 空间并行的相干伊辛机及包含其的求解器 | |
TWI832681B (zh) | 光子計算系統 | |
CN112783260A (zh) | 一种光计算设备、光运算方法以及计算系统 | |
Shi et al. | Emulation and modelling of semiconductor optical amplifier-based all-optical photonic integrated deep neural network with arbitrary depth |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |