CN109784486A - 一种光学神经网络处理器及其训练方法 - Google Patents

一种光学神经网络处理器及其训练方法 Download PDF

Info

Publication number
CN109784486A
CN109784486A CN201811598104.1A CN201811598104A CN109784486A CN 109784486 A CN109784486 A CN 109784486A CN 201811598104 A CN201811598104 A CN 201811598104A CN 109784486 A CN109784486 A CN 109784486A
Authority
CN
China
Prior art keywords
optical
value
neural network
numerical value
neuron
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
Application number
CN201811598104.1A
Other languages
English (en)
Other versions
CN109784486B (zh
Inventor
马恬煜
臧大伟
刘伯然
沈华
谭光明
张佩珩
孙凝晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201811598104.1A priority Critical patent/CN109784486B/zh
Publication of CN109784486A publication Critical patent/CN109784486A/zh
Application granted granted Critical
Publication of CN109784486B publication Critical patent/CN109784486B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)

Abstract

本发明提供一种光学神经网络处理器及其训练方法。所述处理器,包括:数值映射装置,用于实现一个数值与可由光神经元表示的正整数域内的数值之间的映射;包括光神经元的光学计算装置,用于根据由光神经元表示的正整数域内的输入值与权值执行神经网络模型的网络层的相应计算;光电转换器,用于将所述光学计算装置的计算结果的光信号转换为电信号;非线性激活装置,用于对相应的网络层的计算结果的电信号执行非线性激活。

Description

一种光学神经网络处理器及其训练方法
技术领域
本发明涉及对神经网络模型的训练,尤其涉及对采用光神经元器件的神经网络模型的训练。
背景技术
自从计算机诞生以来,人类就试图利用计算的方式构建出一种新的、能以人类智能相似的方式做出反应的智能机器。经过半个多世纪的起起伏伏,人工智能成为计算机科学的一个重要分支。基于大数据的深度学习算法作为人工智能领域的主流方法,越来越受到广泛的关注,在自然语言处理、无人机、信息安全等领域发挥了基础性的作用,为社会创造了巨大的经济价值。
人工神经网络由大量的神经元组成。所述神经元是能够模仿生物神经元功能的装置结构,神经元利用输入信号和输出信号来模拟生物突触的输入和输出。在神经元的各个输入突触上具有相应的权值,输入信号分别与对应突触的权值相乘、求和,所得到的结果被输入到位于神经元输出端的非线性激活函数中,经过激活函数的处理产生神经元的输出信号。在人工神经网络中,每个神经元对应于神经网络中的一个网络层,各个神经元通过层次化的连接方式来构成神经网络模型。例如,在一个神经网络模型中通常包含一个输入层、多个隐藏层和一个输出层。其中,与输入层对应的神经元在接收输入信号的刺激后执行相应的计算,在计算结果超过一定阈值时激活并将产生的信号输出到与其连接的下一个网络层以作为其输入,以此类推。信号在人工神经网络的各个网络层之间传递,以模拟在生物的神经元之间的信息传递。
在使用人工神经网络之前,为了使其能够产生与人类似的反应,会首先采用已知样本来训练与神经元的各个输入突触所对应的权值,使得基于该权重能够基于相应的输入产生令人满意的输出。在使用时,基于训练得到的权重对输入信号进行相应的计算,得到人工智能的输出。
现有的绝大多数神经网络器件都是基于CMOS工艺的电路,例如CPU、FPGA等。然而,随着摩尔定律的失效,上述基于电域的计算方式面临着功耗、频率、并行度等若干方面的挑战。目前有少数的研究提出可以基于光学工艺生产神经网络器件,例如在中国专利文献CN103178901A中提出基于光纤中受激拉曼散射效应的光神经元。相较于传统的电域技术,光在并行度、速度等方面有先天的优势。
尽管已有技术提供了光神经元的物理实现方式,然而目前尚不存在能够提供一种完整的光学神经网络处理器的技术。这是由于,传统的计算技术的原理是将电域器件与布尔逻辑理论结合,以半导体设计的方式得到相应的逻辑门电路,从而使得电域器件能够与计算理论相匹配。然而现有的光学器件很难与传统的基于布尔逻辑的计算理论向匹配。直接将光神经元应用到传统的处理器结构中,所获得的光学神经网络处理器的性能受限,使得采用这样的硬件进行训练和迭代时容易出现收敛速度慢或所输出的结果准确率不高的情况。因而,需要提供一种能够利用光的上述优势的神经网络装置,并提供与其结构匹配的训练方法和计算方法。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种光学神经网络处理器,包括:
数值映射装置,用于实现一个数值与可由光神经元表示的正整数域内的数值之间的映射;
包括光神经元的光学计算装置,用于根据由光神经元表示的正整数域内的输入值与权值执行神经网络模型的网络层的相应计算;
光电转换器,用于将所述光学计算装置的计算结果的光信号转换为电信号;
非线性激活装置,用于对相应的网络层的计算结果的电信号执行非线性激活。
优选地,根据所述光学神经网络处理器,其中,所述光学计算装置包括至少一个激光器和至少一个光学乘法器;
所述激光器用于产生光信号;
所述光学乘法器包括:
第一调制器,用于接收光信号并在第一电信号的控制下执行光路调制,获得承载所述第一电信号值的光信号;
第二调制器,用于接收所述承载所述第一电信号值的光信号,并在第二电信号的控制下执行光路调制,获得承载所述第一电信号值和所述第二电信号值的乘法结果的光信号。
优选地,根据所述光学神经网络处理器,其中,所述光学计算装置包括至少一个激光器和至少一个具有多个输入端的光线聚合器;
所述激光器用于产生光信号;
所述光线聚合器用于对来自其各个输入端的光信号进行聚合以获得承载累加结果的光信号。
优选地,根据所述光学神经网络处理器,其中,所述光学计算装置包括至少一个激光器和至少一个光神经元;
所述激光器用于产生光信号;
所述光神经元包括:
突触输入调制器,用于接收光信号并在与所述光神经元的输入特征值对应的电信号的控制下执行光路调制,获得承载所述输入特征值的光信号;
突触权值调制器,用于接收所述承载所述输入特征值的光信号并在与所述光神经元的权值对应的电信号的控制下执行光路调制,获得承载所述输入特征值和所述权值的乘法结果的光信号;
光线聚合器,用于对多个所述突触权值调制器输出的光信号进行聚合,获得承载多个所述乘法结果的累加结果的光信号。
优选地,根据所述光学神经网络处理器,其中,所述数值映射装置用于实现从一个float型或double型的数值到可由光神经元表示的无符号位的int型的数值的映射,以及从一个int型的数值到一个float型或double型的数值的映射。
优选地,根据所述光学神经网络处理器,其中还包括数值逆映射装置,用于在执行神经网络模型训练时,将与输出层的输出对应的电信号的数值映射为高精度的数值以用于反向传播。
优选地,根据所述光学神经网络处理器,其中还包括:
误差修正装置,用于根据所述光学计算装置中的光学元件而确定的针对神经网络模型训练的输出值的误差,对由所述数值映射装置映射得到的高精度的数值进行修正以用于反向传播。
优选地,根据所述光学神经网络处理器,其中,所述数值映射装置用于根据光神经元所要表示的数值的最大值Wmax,计算映射的转换倍数α=2n/Wmax,其中n为光神经元的位宽,并且将一个数值修改为其原值的α倍,并且将修改后的数值中的非整数转换为整数。
优选地,根据所述光学神经网络处理器,其中,所述数值映射装置用于根据光神经元所要表示的数值的最大值Wmax和最小值Wmin,将最大值Wmax和最小值Wmin之间的范围区间划分为2n-1个子区间,每个子区间与一个可由n bit所表示的整数相对应,其中n为光神经元的位宽,并且根据一个数值所处的子区间,采用相应的整数来表示所述数值。
优选地,根据所述光学神经网络处理器,其中所述光神经元所要表示的数值的最大值Wmax为通过对神经网络的权值和/或输入特征向量值和/或各个网络层的运算结果进行统计获得。
优选地,根据所述光学神经网络处理器,其中所述光神经元所要表示的数值的最小值Wmin为通过对神经网络的权值和/或输入特征向量值进行统计获得。
一种采用上述任意一项光学神经网络处理器进行神经网络模型训练的方法,包括:
1)将神经网络模型的输入层的权值和输入特征向量值映射到可由光神经元表示的正整数域内;
2)依次针对各个网络层,采用光学元器件对被映射到所述正整数域内的权值和被映射到所述正整数域内的输入值执行针对神经网络模型的当前网络层的相应计算,得到计算结果的光信号;其中在当前网络层需要执行非线性激活时,将所述计算结果的光信号转换为电信号并执行非线性激活;
3)在未满足训练目标的情况下,将与输出层的输出对应的电信号的高精度数值用于反向传播。
优选地,根据所述方法,其中步骤3)包括:
3-1)将与网络层的输出对应的电信号的数值映射为高精度数值;
3-2)根据训练过程中所使用的光学元件确定对所述输出带来的误差;
3-3)基于所述误差对所述高精度数值进行修正。
与现有技术相比,本发明的实施例的优点在于:
提供了一种光电结合的神经网络处理器结构,使得基于该处理器可以用于各种神经网络模型的训练和计算,神经网络模型的输入和权值可以是非正整数,也可以是超出可由光强度调制硬件和强度叠加硬件所能表示的任意数值。在一个实施例中,提供了采用分别对抑制和促进这两个光路进行计算的方式来抵消光神经元不能表示负数以及对负数进行计算的缺陷。并且,通过抵消光学元器件所引入的误差来加快训练和计算的收敛,从而得到较好的测试识别率。由此,克服光神经元中表示精度低、器件误差高和无法进行双极性运算的问题,并提高了神经网络识别的准确度。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1示出了现有技术中通常的神经元结构和神经网络的示意图;
图2示出了根据本发明一个实施例的光神经元的结构示意图;
图3示出了根据本发明另一个实施例的光神经元的结构示意图;
图4示出了根据本发明一个实施例的光学神经网络处理器的示意图;
图5示出了根据本发明一个实施例采用图4所提供的光学神经网络处理器训练神经网络模型的方法;
图6示出了根据本发明一个实施例对具有图3所提供的光神经元结构的如图4所提供的光学神经网络处理器进行神经网络计算的方法。
具体实施方式
图1示出了现有技术通常的神经元结构和神经网络结构的示意图,其中,图1(a)是神经元结构,其由突触计算、累加操作以及激活等三部分组成,每个突触有一个输入值xi和一个对应权值wi(示出为i=1、2、3),这两个值是有符号数(正数或负数),每次突触计算完成一次乘法操作xi*wi,然后在神经元内部实现一个累加操作,并将累加和经过激活函数f处理后输出到下一级神经元,神经元的计算模型可以表示为输出y=f(∑xi*wi+b),其中b为偏置值。神经网络由若干层的神经元组成,参见图1(b),示出了输入层、隐层和输出层,每层包括若干神经元,层与层之间、层内部按照需要组织神经元之间的连接关系。
<实施例1>
根据本发明的一个实施例中,提供了一种基于光技术的神经元结构(在本文中也称为光神经元),参见图2所示,该光神经元包括激光器模块210,突触输入调制模块220、突触权值调制模块230、光线聚合模块240和光强度探测模块250。
激光器模块210包括多个激光器,用于产生持续稳定的、单波长或多波长的光信号。
突触输入调制模块220包括多个突触输入调制器,光神经元的每一个神经突触对应一个突触输入调制器,突触输入调制模块220用于将激光器产生的光信号进行调制,例如,采用强度调制产生期望的光强分布,以承载与输入神经元值相对应的光信号。
突触权值调制模块230包括多个突触权值调制器,用于根据预定义的突触权值,将经突触输入调制模块220调制过的光信号进行再次调制,获得承载神经元输入信息和权值相乘结果的光信号。
光线聚合模块240用于将完成突触调制的多路光信号进行聚合,获得承载乘累加结果的光信号。例如,可利用光的反射或者折射原理将突触权值调制模块调制完成的光信号进行聚合,采用光强度的叠加完成累加操作。
光强度探测模块250用于接收光线聚合模块240的输出,执行光信号的强度检测并执行乘累加之后的激活操作。
综上,图2实施例中的光神经元与图1(a)的神经元结构对应,其模块间的互连关系为:激光器发出的光经过突触输入调制模块和突触权值调制模块分别调制后,多个突触的光线在光线聚合模块中聚合,经过强度探测模块探测后输出至下一级神经元。激光器对应现有神经元的驱动电信号,突触输入调制模块对应每一个突触的输入xi,突触权值调制模块对应神经元的每个突触的权值wi,光线聚合模块对应于神经元的累加和操作,光强度探测模块对应于神经元的激活函数操作。
<实施例2>
图3进一步示出了本发明一个优选实施例的光神经元结构,包括激光器模块310,突触输入调制模块320、突触权值调制模块330、光线聚合模块340和光强度探测模块350,与图2实施例不同的是,图3的实施例中,通过两路光信号实现神经元结构。
突触输入调制模块320由两个分立的光调制器组成,分别称为正输入调制器和负输入调制器。根据本发明的另一个实施例,突触输入调制模块320是集成的光调制器。相应地,突触权值调制模块330分为正权值调制器和负权值调制器,光线聚合模块340由正值光线聚合器和负值光线聚合器组成。此外,在该实施例中,光强度探测模块350由两个光电转换器和一个模数转换器(ADC)构成。
正输入调制器和负输入调制器均可采用市售的光调制器实现,分别用于完成输入神经元的正数和负数调制,每个光调制器连接一个电域输入控制引脚,通过改变输入电压或输入电流来控制光调制器完成调制功能。
例如,在一个示例中,输入神经元和电压值的对应关系参见下表1所示。
表1输入值和电压值的映射表
输入神经元 电压值
0 V0
1 V1
2 V2
255 V255
由表1可知,对于不同的输入神经元,控制光调制器的电域输入控制引脚接收对应的电压值,在该电压值的作用下,光调制器将激光器产生的光信号调制为承载输入神经元的光信号,其中,光调制器的电域输入控制引脚接收的电压值可通过外部单片机或者FPGA等控制。
类似地,突触权值调制模块330的正权值调制器和负权值调制器也可由光调制器实现,例如型号为CATV-15-10-0-A-Q的光调制器,其工作原理与正输入调制器和负输入调制器类似,在此不再详述。
光线聚合模块340也分成两个部分,即正值光线聚合器和负值光线聚合器,这两个部分是两个独立的器件,但是根据本发明的另一个实施例,也可以是一个器件的两个不同端口。正值光线聚合器和负值光线聚合器分别对来自于正权值调制器和负权值调制器的光信号进行聚合。光线聚合器采用基于MEMS(微机电系统)的反射镜阵列实现,根据本发明的其他实施例,也可以采用基于波长的无源阵列波导光栅(AWG)路由器实现。
光强度探测模块350包含两个光电转换器和一个模数转换器,其中,两个光电转换器分别与正值光线路聚合器和负值光线路聚合器相连,完成光信号到电信号的转换。两个光电转换器的输出端相连与模数转换器(ADC)的输入端相连,模数转换器接收两个光电转换器的输出,以获得两个光电转换器之间的电位差,将采集的电位差转换成数字信号,并可利用半导体材料的非线性效应完成激活操作,然后输出至下一级。半导体材料的非线性效应是指,例如二阶非线性光学材料磷酸二氢钾、磷酸二氘钾、磷酸二氢铵、碘酸锂、铌酸锂等,在一定的相干激光照射下产生的非线性的效应。
基于图3示意的光神经元结构,对于光神经元中的若干突触,每个突触都有一个激光器的输入,其输入的是稳定的、单波长或多波长的光信号,该光信号在分光器作用下,分成两路,分别用于对正数和负数的调制。对于正数或负数调制的两路光线分别串联了两个调制器:一个是输入调制器,其在电信号的控制下完成神经元的输入,例如输入的值为x1,在外部单片机或者FPGA系统的控制下,电信号根据预定义的对应关系(如上表1所示)改变输入调制器的输入电压或输入电流,调制器完成光路的调制;另一个调制器是权值调制器,其工作原理与输入调制器类似,用于完成突触权值的调制。
在图3的实施例中,每个突触中分别对正值和负值进行分别调制的目的在于克服光单极性的问题(即光强度只能是正值或0,而不会是负数)。例如,输入神经元的值xi为3,则正输入调制器的调制值为3,而负输入调制器的调制值为0;如果输入神经元的值xi为-3,则正输入调制器的调制值为0,而负输入调制器的调制值为3,正负输入调制器的差值为-3。
应理解的是,也可采用其他方式来克服光的单极性问题,例如,通过线性变换将神经元值和权值均转变为正值,再经由调制模块调制,相应地,例如光线聚合器之后,首先通过逆变换再输入到光电转换器。
根据本发明提供的光神经元,能够构成神经网络处理系统(如图1(b)所示),光神经网络由上述的若干光神经元组成,若干的光神经元组成一个光神经元层(例如,输入层、隐层和输出层等),多个光神经元层组成光神经网络,其中每个层次中的光神经元数量和层次的个数可根据需要灵活配置,例如,配置每层中,正负输入调制器的数量、正负权值调制器的数量等、以及包含的隐层数量等。
应理解的是,在实际的光神经网络处理系统中,还包括控制模块和存储模块等,其中控制模块用于控制神经网络处理系统中各功能单元以及各层之间数据处理过程,以协调神经网络处理过程,所述存储模块用于保存待处理的神经元信息、权值、计算结果等。
本发明提供的光神经网络利用光器件来执行神经网络模型的各种功能,并且适用于权值可变和权值固定两种运行模式,它们之间的区别在于突触权值调制模块是否要实时的改变。
例如,在权值可变模式中,可以使用小规模的光神经元硬件系统,采用硬件复用的方式实现较大规模的神经元计算,这需要突触权值调制模块不断的改变突触的权值,以达到硬件复用的目的。而在权值固定模式下,突触权值调制模块的权值输入是固定的,无法实现硬件共享的目的,但由于不需改变权值,运行速度将会得以提高。
<实施例3>
在一个实施例中,对于可变权值运行模式,配置较少的神经元数量,神经网络处理系统(结合图3所示)的工作流程包括以下步骤:
步骤S410,在系统运行之前,将神经网络的权值矩阵进行块分解,将一个大的矩阵分成若干的小块矩阵,从而适应系统中神经元的数量;
步骤S420,对每一个突触输入值xi按照正数和负数的形式进行分解,用于分别对每个突触的正输入调制器和负输入调制器进行控制;
步骤S430,对于每一组神经元操作,向突触权值调制模块输入权值信息,完成突触权值的调制;
步骤S440,对于每一组神经元操作,向突触输入调制模块输入神经元信息,完成突触输入的调制;
步骤S450,等待模数转换器输出稳定时读取输出数值,并进行缓存;
步骤S460,跳转至步骤S430,开始下一组神经元操作。
<实施例4>
在另一个实施例中,对于以固定权值运行模式,神经网络处理系统的工作流程包括以下步骤:
步骤S510,在系统运行开始时,向突触权值调制模块输入权值信息,完成突触权值的调制,并将该权值固定,后续不再进行改变;
步骤S520,系统在运行之前对每一个突触输入值xi按照正数和负数的形式进行分解,用于分别对每个突触的正输入调制器和负输入调制器进行控制;
步骤S530,对于神经元操作,向突触输入调制模块输入神经元信息,以完成突触输入的调制;
步骤S540,等待模数转换器输出稳定时读取输出数值,并传递到下一级;
步骤S550,跳转至步骤S530,开始下一组突触输入调制。
本发明的光神经网络处理系统可应用了各种电子设备,例如、移动电话、嵌入式电子设备等。
本发明的光神经网络处理系统和包含该系统的电子设备可用于文字处理、语音识别与处理、多国语言翻译、图像识别、生物特征识到、智能控制等领域,可用作智能计算处理器、机器人、移动设备、也可用于构建大规模神经网络计算超级计算机。
综上所述,本发明基于空间光学技术和集成光学技术,利用光的衍射、折射和反射等物理特性设计的分立光器件和集成光芯片来实现光神经元架构和光神经网络,能够实现集成度高、能耗低、处理性能和扩展性强的光神经网络。
在前述实施例中,光神经元中的突触输入调制模块220突触权值调制模块230、突触输入调制模块320、和突触权值调制模块330来对应于传统电域处理器中的乘法单元,光线聚合模块240、340对应于传统电域处理器中的加法单元,它们的输入均为光信号。发明人发现,受到光强度调制硬件和强度叠加硬件的限制,光神经元的位宽无法达到传统电域处理器中计算单元的位宽,目前可实现的最大位宽为8bit,即各个光学元器件所表示的数值范围是0~255。这样的光神经元也难以表示诸如float、double等类型的小数。这限制了光神经网络处理器的应用范围,也使得在使用这样的光神经网络处理器进行训练和迭代时容易出现收敛速度慢或所输出的结果准确率不高的情况。
对此,发明人提出一种包含光神经元的光学神经网络处理器结构,及其训练和计算方法。
<实施例5>
参考图4,根据本发明的一个实施例,光学神经网络处理器包括:定点量化装置610、光神经元620、光电转换器630、非线性激活装置640、浮点反量化装置650、反向传播装置660。其中,定点量化装置610、非线性激活装置640、浮点反量化装置650、反向传播装置660均由电域元器件实现。
所述定点量化装置610,以当前网络层的输入值X(对于输入层而言,其输入值为输入特征值)和权值W作为其输入,用于将各个float型或do uble型的数值映射到可由光神经元所表示的n bit的无符号的整数域内。这里的无符号指的是,在表示数值时不采用单独的一个bit作为其符号位,由此增加可由n bit可表示的整数的数值范围。
根据本发明的一个实施例,上述定点量化装置610可以采用如下方式来执行所述映射:统计所采用的神经网络模型的当前网络层的各个权值中的最大值WmaxW_max,计算映射的转换倍数α=2n/Wmaxα,其中n为光神经元的位宽;将用于神经网络的每个权值修改为其原值的α倍;将修改后的权值中的非整数转换为整数,例如采用四舍五入或其他取整的方法。例如,假设权值的最大值为30.0f(f表示float类型),n=8bit,则转换倍数α等于36,由此可以将一个等于10.0f的float型数据转换为可由光神经元表示的等于128的int型数据。对于权值为负数的情况,本实施例可以将该权值直接映射为0。上述方式是通过统计确定所需表示的数值的最大值,以确定如何将所需表示的任何一个数值映射到可由光神经元所表示的无符号的整数域内,此种方式适用于所需表示的数值中没有负数或存在少量负数的情况。
根据本发明的另一个实施例,上述定点量化装置610还可以采用如下方式来执行所述映射:统计所采用的神经网络模型的当前网络层的各个权值中的最大值Wmax和最小值Wmin;将最大值Wmax和最小值Wmin之间的范围区间均匀地划分为2n-1个子区间,两个相邻子区间之间的间隔为每个子区间与一个可由n bit所表示的整数相对应,其中n为光神经元的位宽;根据权值的数值所处的子区间,采用相应的整数来表示所述权值。例如,假设权值的最大值和最小值区间为[-10.0f,30.0f],n=8bit,将该区间划分为255个区间,对于一个等于10.0f的float型数据,可以将其表示为等于128的int型数据。此种方式通过确定所需表示的数值范围来提供合理的映射规则,其对所需表示的数字的正负极性没有要求。
可以理解,上述定点量化装置610还可以采用其他的方式来执行所述映射,只要可以将任何一个需要表示的数值映射到由光神经元所表示的整数域内即可。
上述映射过程会对float型数据的精度造成一些损失。然而,发明人发现,神经网络可以很好地应对较大的输入噪声,比如为了识别照片中的物体,网络必须忽略所有的噪声及光照变化,以及其它与之前训练样本之间的非本质差异,而只关注重要的相似之处。因此这些精度损失不足以对识别率产生影响。
所述光神经元620,与定点量化装置610相连接,用于接收来自定点量化装置610的经过映射的输入值X和权值W以执行与神经网络中当前网络层相对应的计算。这里的光神经元620可以采用如图2或图3所示出的结构以根据X和W执行卷积操作,在使用时,将由定点量化装置610输出的经过映射的输入值X作为输入调制器220、320的突触输入,以将由激光器产生的激光调制为与输入值X相关,将由定点量化装置610输出的经过映射的权值W作为权值调制器230、330权值输入,以将与输入值X相关的光信号调制为与X·W相关的光信号;随后由光纤聚合器240、340得到对各个输入值X和权值W的乘积的累加结果以获得卷积结果。
可以理解,本实施例中的光神经元620也可以采用其他现有的光神经元结构,例如在中国专利文献CN103178901A中所提出的基于光纤中受激拉曼散射效应的光神经元,只要将所使用的输入值和权值映射到可由光神经元表示的正整数域内并提供给该光神经元以由该光神经元执行相应的计算即可。
根据本发明的一个实施例,在光神经元620、以及与其他网络层相关的光学计算装置的输出端还包括一个溢出判断装置(未示出),用于判断计算获得的结果是否超出了光神经元可表示的范围。通过设置该装置可以防止计算结果溢出,这种计算结果溢出情况常出现在乘法计算中,例如将两个8bit的数值相乘所得到的结果可能需要由16bit来表示,也可能出现在加法计算中,例如两个8bit的数值相加的结果需要由9bit来表示。对于此种情况,可以将相应的结果输入到定点量化装置610中以作为其统计获得的最大值Wmax,并对所涉及的各个数值重新执行映射以及网络层的计算过程。
此外,除前文中提到的用于执行卷积运算的光神经元620以外,在本发明的光学神经网络处理器中,还可以在定点量化装置610和光电转换器630之间设置与其他类型的网络层(例如池化层、全连接层、归一化层、成本层)相关且由光学元器件实现的计算装置(图4示出),这些计算装置中可以包括:由激光器210、调制器220和调制器230构成的光学乘法器,由光线聚合器240构成的光学加法器,以及它们的组合。
所述光电转换器630,与光神经元620的输出相连,用于完成光强度到电信号的转化。这里设置该光电转换器630的原因在于,一般情况下需要对卷积层的计算结果执行非线性激活,非线性激活的原理利用的是半导体器件的特性,因而在进行非线性激活之前还需要设置光电转换器630。
所述非线性激活装置640,以光电转换器630输出作为其输入,用于对光神经元620的计算结果进行非线性激活。这里除卷积层以外,还有一些网络层的计算也需要执行非线性激活,例如池化层和全连接层,对于归一化层和成本层则不需要非线性激活。在执行针对神经网络模型的训练过程时,若是没有到达输出层,则还需要对下一网络层进行相应的计算。尽管图4中仅示出了一个光神经元620,然而可以理解,由于神经网络中的网络层是以前一网络层的输出作为其输入,因而在本发明的光学神经网络处理器中可以由各个网络层对相同的光神经元620以及相应的光学计算装置(未示出)的硬件进行复用。例如参考图4,对于没到达输出层的情况,将非线性激活装置640的输出值提供给光神经元620以进行下一网络层的相应计算,在到达输出层时将非线性激活装置640的输出值提供给浮点反量化装置650以用于训练过程中迭代过程的反向传播,直到满足停止迭代的条件时输出相应的权值。
可以理解,对于已获得权值而无需执行神经网络模型的训练的应用,也可以不在神经网络处理器中设置反向传播装置660、或反向传播装置660和浮点反量化转置650。
所述浮点反量化转置650,与非线性激活装置640的输出相连,以输出层的电信号作为其输入,用于执行与定点量化装置610的逆映射。例如,将int型数据转换为float型的数据。浮点反量化转置650被设置在反向传播装置660之前,使得反向传播装置660可以对高精度值进行计算,从而得到更准确的经过调整的权值以用于神经网络模型训练的下一次迭代。反向传播的操作是一个不断对权重添加细微修正的过程,采用高精度的浮点值来执行这种细微修正,可以减少在训练神经网络模型时为得到输出权值所必须经历的迭代次数,即加快训练过程的收敛。
根据本发明的一个实施例,在非线性激活装置640和反向传播装置660之间还可以设置一个误差修正装置(未示出),用于对光学元器件所带来的误差进行修正。这是由于,发明人在进行测试实验时发现,在使用光学元器件进行数据传输和计算时会引入一定的误差,例如在使用透镜、光栅等空间光学器件构建光神经网络结构时,虽然神经元的数量和规模可以很大,但是这些器件容易受到温度、震动等因素的影响,数据的传输和计算会产生一定的误差,由此导致识别精度不高。使得在某些情况下无论如何训练神经网络其迭代过程都无法收敛,而导致无法获得训练结果。因此,可以根据所使用的光学元器件的针对这一点,可以在执行完与网络层对应的计算后,为其输出值增加与光神经元器件特性匹配的随机误差。这里的误差值可以由光元器件的生产商提供,根据其规模和制造工艺的不同,生产商会对所制造的光器件进行实验,由实验结果给出误差值,例如对输出值加上20%的误差。优选地,在浮点反量化转置650和反向传播装置660之间设置误差修正装置。
所述反向传播装置660,用于基于浮点反量化装置650的输出进行计算,以提供在训练神经网络模型时下一次迭代中用于各个网络层的权值,该装置可以采用任意一种现有技术实现。
<实施例6>
图5示出了一种针对<实施例5>所提供的光学神经网络处理器的训练方法,所述方法包括:
步骤1.根据神经网络的训练需求设置迭代总次数N和训练所需达到的准确率阈值P,并将当前的迭代次数初始地设置为n=0。
步骤2.通过执行定点量化操作,将本次迭代中神经网络模型的输入层的权值和输入特征向量值映射到可由光神经元表示的正整数域内。所述顶点量化操作可以参考<实施例5>中对定点量化装置610的介绍。
步骤3.采用光学元器件对被映射到所述正整数域内的权值和被映射到所述正整数域内的输入值执行针对神经网络模型的当前网络层的相应计算,得到计算结果的光信号;并且,在当前网络层需要执行非线性激活时,将所述计算结果的光信号转换为电信号并执行非线性激活。
以采用具有如图5所示出的光神经元的神经网络处理器为例,可以由激光器210产生光信号,将被映射到所述正整数域内的输入值的电信号提供给突触输入调制器220,以由突触输入调制器220在该电信号的控制下执行光路调制,获得承载所述输入值的光信号。承载所述输入值的光信号被输入到突触权值调制器230中,同时将被映射到所述正整数域内的权值的电信号也提供给突触权值调制器230,以由突触权值调制器230在该电信号的控制下执行光路调制,获得承载所述输入值和所述权值的乘法结果的光信号。光线聚合器240对来自各路突触权值调制器230的光信号进行聚合,获得承载多个所述乘法结果的累加和的光信号。由此,可以获得相应的卷积层的计算结果的光信号。由于卷积层还需要进行非线性激活,因而通过光强度探测器250将来自于所述光线聚合器240的输出光信号转换为电信号并执行激活操作。
对于在计算过程中产生的计算结果需要由超过光神经元的最大位宽的位数来表示的情况,参考<实施例5>中的介绍将相应的结果输入到定点量化装置610中,以重新执行映射过程。
考虑诸如透镜、光栅等光学元器件对计算结果的影响,可以为当前网络层的输出值增加与光神经元器件特性匹配的随机误差。也可以在依次针对各个网络层进行计算后,针对输出层的结果进行修正。
步骤4.判断当前网络层是否为输出层,若是则继续步骤5,否则继续步骤2并执行对下一个网络层的计算。
步骤5.对于输出层的结果执行浮点反量化操作,以将输出层的结果映射为高精度数值,例如float型或double型的数据。该浮点反量化操作在执行反向传播之前实施,以使得可以通过反向传播得到更准确的结果,从而加快训练过程中每次迭代的收敛速度。这里的浮点反量化操作可以参考<实施例5>中对浮点反量化装置650的介绍。
为了确定本次迭代是否满足训练目标,还需要针对输出层计算与训练目标相关的值,例如在训练用于图像识别的神经网络时计算识别准确率:
以便判断是否达成了训练目标。
步骤6.判断是否达到迭代总次数,若是则结束,否则继续步骤7。
步骤7.判断本次迭代的准确率pn是否达到设定的阈值,若是则结束,否则继续步骤8。
步骤8.对输出层的结果的电信号执行反向传播操作。这里的反向传播操作可以由CPU或GPU来完成。由于反向传播使用的是float型的数据,因而在开始下一次迭代时需要执行定点量化操作,以将其转换为可由光神经元表示的int型的数据。
为了验证采用本发明的训练方法的效果,发明人基于传统的神经网络算法和上述方法,在模拟的光学神经网络处理器上进行了仿真对比实验,设定光神经元的位宽为8bit,设计了4层的深度神经网络结构,隐藏层每层16个神经元,使用MNIST手写数字识别数据集中的60000个训练样本进行训练,然后对10000个测试样本进行测试,实验结果如下:
传统算法 实施例算法
测试识别率 无法收敛 92.52%
可以看到,采用传统的神经网络训练方法、结合光学神经网络处理器,在进行识别时会存在无法收敛的情况,即无法获得计算结果。相比之下,采用本实施的方法训练得到的模型的识别准确率可以达到92.52%。
<实施例7>
本发明还提供了一种针对光学神经网络处理器的计算方法,所述光学神经网络处理器具有图4所提供的处理器结构,且其中光神经元620的部分与图3所提供的结构相对应。在这样的处理器中,分为针对正值和针对负值的两路的光学计算结构(即激光器-正值输入调制器-正值权值调制器-正值光线聚合器,以及激光器-负值输入调制器-负值权值调制器-负值光线聚合器),通过定点量化装置610来提供上述结构中的突触输入x1、x2、x3以及权值输入w1、w2、w3,ADC的输出与光电转换器630或非线性激活装置640的输入相连。这样的处理器的计算方式与传统神经网络处理器存在差异,下面将参照本发明的一个实施例,将所述方法进行具体介绍。
参考图6,根据本发明的一个实施例,提供了一种采用上述光学神经网络处理器进行神经网络模型对一个网络层进行计算的方法,包括:
步骤1.将通过训练所得到的或设置的用于神经网络的各个权值映射到可由光神经元表示的整数域内。对于当前网络层的输入向量X中也包含非整数的情况,也将X映射到该整数域内,其中,对于输入层而言X为输入特征向量,对于其他网络层而言,X为前一网络层的输出。在此步骤中进行映射的方法可以参考前述实施例中所介绍的方式,区别在于本实施例仅需计算得到输入值的整数表达形式即可。
步骤2.利用激光器产生光学信号,以提供给正输入调制器和负输入调制器320。
步骤3.通过相应的装置部件,计算促进权值矩阵Wp和抑制权值矩阵Wr,其中,Wp为将全部权值中的负值修改为0且保持其余值不变所得到的矩阵,Wr为将全部权值中的正值修改为0且将负值修改为其绝对值所得到的矩阵。对于X中包含负值的情况,计算促进输出向量矩阵Xp和抑制权值矩阵Xr,其中Xp为将输入特征向量中的负值修改为0且保持其余值不变所得到的向量,Xr为将输入特征向量中的正值修改为0且将负值修改为其绝对值所得到的向量。
步骤4.参考图3,将Xp作为其中正输入调制器的突触输入,正输入调制器在与Xp中数值对应的电信号的控制下执行光路调制,获得承载Xp的光信号;同时将Wp作为正权值调制器的权值输入,正权值调制器在其控制下执行光路调制,获得承载Xp·Wp的乘法结果的光信号Yp。类似地,将Xr作为负输入调制器的突触输入,将Wr作为负权值调制器的权值输入,可以获得承载承载Xr·Wr的乘法结果的光信号Yr。可以看到这两路乘法结果是彼此独立的。
步骤5.通过电光转换器将光学信号Yp和光学信号Yr转换为电信号。
步骤6.利用电域元件模数转换器计算电信号Y=Yp-Yr
对于当前网络层需要执行非线性激活时,电信号Y为用于半导体接收器执行非线性激活的输入值,以得到相应的电信号。对于当前网络层不需要非线性激活时,Y为当前网络层输出的电信号。在一些情况下,还可以对电信号Y执行与步骤1相对的逆映射过程,将其数值转换为float型的数值,以得到用于非线性激活的输入。
参考前述实施例,这里还可以根据在当前网络层计算中所使用的光学器件,对所得到的电信号Y增加与光神经元器件特性匹配的误差。
上述过程为针对神经网络的一个网络层的计算,在实际计算过程中可以根据神经网络的层级结构关系调整计算过程。
应当理解,本实施例所述计算方法还可以应用到其他具有类似结构的光学神经网络处理器上,只要该处理器可以提供抑制和促进这两个光路进行计算的功能即可。并且,在一些实施例中,可以通过软件的方式实现上述方法的至少部分操作。需要说明的是,上述实施例中介绍的各个步骤和部件并非都是必须的,本领域技术人员可以根据实际需要进行适当的取舍、替换、修改等。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管上文参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的实施例中的某些技术手段进行修改或者组合或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (13)

1.一种光学神经网络处理器,包括:
数值映射装置,用于实现一个数值与可由光神经元表示的正整数域内的数值之间的映射;
包括光神经元的光学计算装置,用于根据由光神经元表示的正整数域内的输入值与权值执行神经网络模型的网络层的相应计算;
光电转换器,用于将所述光学计算装置的计算结果的光信号转换为电信号;
非线性激活装置,用于对相应的网络层的计算结果的电信号执行非线性激活。
2.根据权利要求1所述的光学神经网络处理器,其中,所述光学计算装置包括至少一个激光器和至少一个光学乘法器;
所述激光器用于产生光信号;
所述光学乘法器包括:
第一调制器,用于接收光信号并在第一电信号的控制下执行光路调制,获得承载所述第一电信号值的光信号;
第二调制器,用于接收所述承载所述第一电信号值的光信号,并在第二电信号的控制下执行光路调制,获得承载所述第一电信号值和所述第二电信号值的乘法结果的光信号。
3.根据权利要求1所述的光学神经网络处理器,其中,所述光学计算装置包括至少一个激光器和至少一个具有多个输入端的光线聚合器;
所述激光器用于产生光信号;
所述光线聚合器用于对来自其各个输入端的光信号进行聚合以获得承载累加结果的光信号。
4.根据权利要求1所述的光学神经网络处理器,其中,所述光学计算装置包括至少一个激光器和至少一个光神经元;
所述激光器用于产生光信号;
所述光神经元包括:
突触输入调制器,用于接收光信号并在与所述光神经元的输入特征值对应的电信号的控制下执行光路调制,获得承载所述输入特征值的光信号;
突触权值调制器,用于接收所述承载所述输入特征值的光信号并在与所述光神经元的权值对应的电信号的控制下执行光路调制,获得承载所述输入特征值和所述权值的乘法结果的光信号;
光线聚合器,用于对多个所述突触权值调制器输出的光信号进行聚合,获得承载多个所述乘法结果的累加结果的光信号。
5.根据权利要求1~4中任意一项所述的光学神经网络处理器,其中,所述数值映射装置用于实现从一个float型或double型的数值到可由光神经元表示的无符号位的int型的数值的映射,以及从一个int型的数值到一个float型或double型的数值的映射。
6.根据权利要求1~4中任意一项所述的光学神经网络处理器,其中还包括数值逆映射装置,用于在执行神经网络模型训练时,将与输出层的输出对应的电信号的数值映射为高精度的数值以用于反向传播。
7.根据权利要求6所述的光学神经网络处理器,其中还包括:
误差修正装置,用于根据所述光学计算装置中的光学元件而确定的针对神经网络模型训练的输出值的误差,对由所述数值映射装置映射得到的高精度的数值进行修正以用于反向传播。
8.根据权利要求1~4中任意一项所述的光学神经网络处理器,其中,所述数值映射装置用于根据光神经元所要表示的数值的最大值Wmax,计算映射的转换倍数α=2n/Wmax,其中n为光神经元的位宽,并且将一个数值修改为其原值的α倍,并且将修改后的数值中的非整数转换为整数。
9.根据权利要求1~4中任意一项所述的光学神经网络处理器,其中,所述数值映射装置用于根据光神经元所要表示的数值的最大值Wmax和最小值Wmin,将最大值Wmax和最小值Wmin之间的范围区间划分为2n-1个子区间,每个子区间与一个可由n bit所表示的整数相对应,其中n为光神经元的位宽,并且根据一个数值所处的子区间,采用相应的整数来表示所述数值。
10.根据权利要求8或9所述的光学神经网络处理器,其中所述光神经元所要表示的数值的最大值Wmax为通过对神经网络的权值和/或输入特征向量值和/或各个网络层的运算结果进行统计获得。
11.根据权利要求9所述的光学神经网络处理器,其中所述光神经元所要表示的数值的最小值Wmin为通过对神经网络的权值和/或输入特征向量值进行统计获得。
12.一种采用权利要求1~11中任意一项光学神经网络处理器进行神经网络模型训练的方法,包括:
1)将神经网络模型的输入层的权值和输入特征向量值映射到可由光神经元表示的正整数域内;
2)依次针对各个网络层,采用光学元器件对被映射到所述正整数域内的权值和被映射到所述正整数域内的输入值执行针对神经网络模型的当前网络层的相应计算,得到计算结果的光信号;其中在当前网络层需要执行非线性激活时,将所述计算结果的光信号转换为电信号并执行非线性激活;
3)在未满足训练目标的情况下,将与输出层的输出对应的电信号的高精度数值用于反向传播。
13.根据权利要求1所述的方法,其中步骤3)包括:
3-1)将与网络层的输出对应的电信号的数值映射为高精度数值;
3-2)根据训练过程中所使用的光学元件确定对所述输出带来的误差;
3-3)基于所述误差对所述高精度数值进行修正。
CN201811598104.1A 2018-12-26 2018-12-26 一种光学神经网络处理器及其训练方法 Active CN109784486B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811598104.1A CN109784486B (zh) 2018-12-26 2018-12-26 一种光学神经网络处理器及其训练方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811598104.1A CN109784486B (zh) 2018-12-26 2018-12-26 一种光学神经网络处理器及其训练方法

Publications (2)

Publication Number Publication Date
CN109784486A true CN109784486A (zh) 2019-05-21
CN109784486B CN109784486B (zh) 2021-04-23

Family

ID=66498369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811598104.1A Active CN109784486B (zh) 2018-12-26 2018-12-26 一种光学神经网络处理器及其训练方法

Country Status (1)

Country Link
CN (1) CN109784486B (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110334804A (zh) * 2019-06-20 2019-10-15 清华大学 基于空间部分相干光的全光深度衍射神经网络系统及方法
CN110505021A (zh) * 2019-08-26 2019-11-26 光子算数(北京)科技有限责任公司 一种光通信装置、光通信系统及光信号处理方法
CN110597756A (zh) * 2019-08-26 2019-12-20 光子算数(北京)科技有限责任公司 一种计算电路以及数据运算方法
CN110866601A (zh) * 2019-10-16 2020-03-06 复旦大学 一种基于光电神经网络的复合采集处理系统
CN111683304A (zh) * 2020-05-13 2020-09-18 中国科学院西安光学精密机械研究所 在光波导和/或光芯片上实现的全光衍射神经网络及系统
CN111860822A (zh) * 2020-07-20 2020-10-30 联合微电子中心有限责任公司 光学神经网络的全光非线性激活函数实现方法、装置
CN112140112A (zh) * 2020-09-30 2020-12-29 北京航空航天大学 一种基于光电计算的新型机器人控制系统
CN112699995A (zh) * 2020-12-24 2021-04-23 中国科学院半导体研究所 基于半导体光放大器的光学激活装置
CN113033797A (zh) * 2021-05-08 2021-06-25 电子科技大学 一种基于正负分离的实数域光学神经网络的模式识别方法
CN113656751A (zh) * 2021-08-10 2021-11-16 上海新氦类脑智能科技有限公司 无符号dac实现有符号运算的方法、装置、设备和介质
CN113705804A (zh) * 2020-05-21 2021-11-26 格芯(美国)集成电路科技有限公司 光学神经模拟装置
CN115358391A (zh) * 2022-09-05 2022-11-18 清华大学 神经网络的规模拓展方法、装置、电子设备及存储介质
WO2023039858A1 (zh) * 2021-09-17 2023-03-23 华为技术有限公司 光计算系统、光计算方法及控制装置
WO2023061456A1 (zh) * 2021-10-13 2023-04-20 清华大学 用于消息散列算法的消息扩展的光电集成电路
CN116957031A (zh) * 2023-07-24 2023-10-27 浙江大学 一种基于光学多神经元激活函数模块的光电计算机
CN117057407A (zh) * 2023-08-21 2023-11-14 浙江大学 一种面向有串扰的波分复用光学神经网络的训练方法
CN117891023A (zh) * 2024-03-15 2024-04-16 山东云海国创云计算装备产业创新中心有限公司 光子芯片、异构计算系统、精度调整方法及产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5004309A (en) * 1988-08-18 1991-04-02 Teledyne Brown Engineering Neural processor with holographic optical paths and nonlinear operating means
CN1052187A (zh) * 1990-09-28 1991-06-12 中国科学院上海技术物理研究所 光电混合角度判别方法及装置
US20040107172A1 (en) * 2001-09-25 2004-06-03 Ruibo Wang Optical pulse-coupled artificial neurons
CN103178901A (zh) * 2013-02-05 2013-06-26 西安邮电大学 基于光纤中受激拉曼散射效应的光神经元及其建立方法
CN105046325A (zh) * 2015-07-06 2015-11-11 电子科技大学 一种基于类mos发光器件模拟生物神经网络的电路
CN108599865A (zh) * 2018-04-13 2018-09-28 北京邮电大学 基于光子神经网络的信号调制格式识别方法、装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5004309A (en) * 1988-08-18 1991-04-02 Teledyne Brown Engineering Neural processor with holographic optical paths and nonlinear operating means
CN1052187A (zh) * 1990-09-28 1991-06-12 中国科学院上海技术物理研究所 光电混合角度判别方法及装置
US20040107172A1 (en) * 2001-09-25 2004-06-03 Ruibo Wang Optical pulse-coupled artificial neurons
CN103178901A (zh) * 2013-02-05 2013-06-26 西安邮电大学 基于光纤中受激拉曼散射效应的光神经元及其建立方法
CN105046325A (zh) * 2015-07-06 2015-11-11 电子科技大学 一种基于类mos发光器件模拟生物神经网络的电路
CN108599865A (zh) * 2018-04-13 2018-09-28 北京邮电大学 基于光子神经网络的信号调制格式识别方法、装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
ANDREW JENNINGS等: "Optical Neural Network with Quantum Well Devices", 《APPLIED OPTICS》 *
I.SAXENA等: "A Method for All-positive Optical Multilayer Perceptrons", 《INTERNATIONAL CONFERENCE ON ELECTRONICS CIRCUITS AND SYSTEMS》 *
常胜江等: "用于光学神经网络硬件系统误差纠正的虚拟神经网络", 《光学学报》 *
张廷炘等: "大规模光电混合神经网络中的可编程拓扑重构", 《光学学报》 *
王勇竞等: "人工神经网络的光学实现", 《光子学报》 *

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110334804A (zh) * 2019-06-20 2019-10-15 清华大学 基于空间部分相干光的全光深度衍射神经网络系统及方法
CN110505021A (zh) * 2019-08-26 2019-11-26 光子算数(北京)科技有限责任公司 一种光通信装置、光通信系统及光信号处理方法
CN110597756A (zh) * 2019-08-26 2019-12-20 光子算数(北京)科技有限责任公司 一种计算电路以及数据运算方法
CN110866601B (zh) * 2019-10-16 2023-09-08 复旦大学 一种基于光电神经网络的复合采集处理系统
CN110866601A (zh) * 2019-10-16 2020-03-06 复旦大学 一种基于光电神经网络的复合采集处理系统
CN111683304A (zh) * 2020-05-13 2020-09-18 中国科学院西安光学精密机械研究所 在光波导和/或光芯片上实现的全光衍射神经网络及系统
WO2021227767A1 (zh) * 2020-05-13 2021-11-18 中国科学院西安光学精密机械研究所 在光波导和/或光芯片上实现的全光衍射神经网络及系统
CN113705804A (zh) * 2020-05-21 2021-11-26 格芯(美国)集成电路科技有限公司 光学神经模拟装置
CN113705804B (zh) * 2020-05-21 2023-12-15 格芯(美国)集成电路科技有限公司 光学神经模拟装置
CN111860822B (zh) * 2020-07-20 2023-09-26 联合微电子中心有限责任公司 光学神经网络的全光非线性激活函数实现方法、装置
CN111860822A (zh) * 2020-07-20 2020-10-30 联合微电子中心有限责任公司 光学神经网络的全光非线性激活函数实现方法、装置
WO2022016918A1 (zh) * 2020-07-20 2022-01-27 联合微电子中心有限责任公司 光学神经网络的全光非线性激活函数实现方法、装置
CN112140112A (zh) * 2020-09-30 2020-12-29 北京航空航天大学 一种基于光电计算的新型机器人控制系统
CN112699995A (zh) * 2020-12-24 2021-04-23 中国科学院半导体研究所 基于半导体光放大器的光学激活装置
CN112699995B (zh) * 2020-12-24 2024-02-02 中国科学院半导体研究所 基于半导体光放大器的光学激活装置
CN113033797B (zh) * 2021-05-08 2022-04-12 电子科技大学 一种基于正负分离的实数域光学神经网络的模式识别方法
CN113033797A (zh) * 2021-05-08 2021-06-25 电子科技大学 一种基于正负分离的实数域光学神经网络的模式识别方法
CN113656751B (zh) * 2021-08-10 2024-02-27 上海新氦类脑智能科技有限公司 无符号dac实现有符号运算的方法、装置、设备和介质
CN113656751A (zh) * 2021-08-10 2021-11-16 上海新氦类脑智能科技有限公司 无符号dac实现有符号运算的方法、装置、设备和介质
WO2023039858A1 (zh) * 2021-09-17 2023-03-23 华为技术有限公司 光计算系统、光计算方法及控制装置
WO2023061456A1 (zh) * 2021-10-13 2023-04-20 清华大学 用于消息散列算法的消息扩展的光电集成电路
CN115358391A (zh) * 2022-09-05 2022-11-18 清华大学 神经网络的规模拓展方法、装置、电子设备及存储介质
CN115358391B (zh) * 2022-09-05 2024-06-14 清华大学 神经网络的规模拓展方法、装置、电子设备及存储介质
CN116957031A (zh) * 2023-07-24 2023-10-27 浙江大学 一种基于光学多神经元激活函数模块的光电计算机
CN116957031B (zh) * 2023-07-24 2024-05-24 浙江大学 一种基于光学多神经元激活函数模块的光电计算机
CN117057407A (zh) * 2023-08-21 2023-11-14 浙江大学 一种面向有串扰的波分复用光学神经网络的训练方法
CN117891023A (zh) * 2024-03-15 2024-04-16 山东云海国创云计算装备产业创新中心有限公司 光子芯片、异构计算系统、精度调整方法及产品
CN117891023B (zh) * 2024-03-15 2024-05-31 山东云海国创云计算装备产业创新中心有限公司 光子芯片、异构计算系统、精度调整方法及产品

Also Published As

Publication number Publication date
CN109784486B (zh) 2021-04-23

Similar Documents

Publication Publication Date Title
CN109784486A (zh) 一种光学神经网络处理器及其训练方法
CN109784485A (zh) 一种光学神经网络处理器及其计算方法
Petersen et al. Deep symbolic regression: Recovering mathematical expressions from data via risk-seeking policy gradients
De Marinis et al. Photonic neural networks: A survey
CN109376855B (zh) 一种光神经元结构和包含该结构的神经网络处理系统
WO2022134391A1 (zh) 融合神经元模型、神经网络结构及训练、推理方法、存储介质和设备
Zhang et al. Efficient training and design of photonic neural network through neuroevolution
CN109871871B (zh) 基于光学神经网络结构的图像识别方法、装置及电子设备
US20180018555A1 (en) System and method for building artificial neural network architectures
Wang et al. Liquid state machine based pattern recognition on FPGA with firing-activity dependent power gating and approximate computing
CN111753977B (zh) 光学神经网络卷积层芯片、卷积计算方法和电子设备
Gu et al. SqueezeLight: Towards scalable optical neural networks with multi-operand ring resonators
CN111582435B (zh) 基于残差网络的衍射深度神经网络系统
CN103620624A (zh) 用于导致稀疏连通性的局部竞争性学习规则的方法和装置
CN114970836B (zh) 蓄水池神经网络实现方法、系统、电子设备及存储介质
CN111582468B (zh) 光电混合智能数据生成计算系统及方法
CN110309916A (zh) 多级空频域调制非线性全光学深度学习系统及方法
Freire et al. Artificial neural networks for photonic applications—from algorithms to implementation: tutorial
De Marinis et al. A codesigned integrated photonic electronic neuron
Abderrahmane et al. Information coding and hardware architecture of spiking neural networks
Cem et al. Data-efficient modeling of optical matrix multipliers using transfer learning
Cui et al. Programmable artificial intelligence machine for wave sensing and communications
Picco et al. Real-Time Photonic Deep Reservoir Computing for Speech Recognition
Qu et al. Numerical realization of automatically reconfigurable optical waveform generator based on photonic reservoir computer
Sari et al. IRNN: Integer-only recurrent neural network

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