CN113935474B - 循环神经网络的实现方法、系统、电子设备及存储介质 - Google Patents
循环神经网络的实现方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113935474B CN113935474B CN202111527633.4A CN202111527633A CN113935474B CN 113935474 B CN113935474 B CN 113935474B CN 202111527633 A CN202111527633 A CN 202111527633A CN 113935474 B CN113935474 B CN 113935474B
- Authority
- CN
- China
- Prior art keywords
- neural network
- matrix
- mzi
- recurrent neural
- calculation
- 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.)
- Active
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 99
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000000306 recurrent effect Effects 0.000 title claims abstract description 58
- 230000003287 optical effect Effects 0.000 claims abstract description 86
- 238000004364 calculation method Methods 0.000 claims abstract description 76
- 230000004913 activation Effects 0.000 claims abstract description 59
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 32
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 claims abstract description 19
- 229910052710 silicon Inorganic materials 0.000 claims abstract description 19
- 239000010703 silicon Substances 0.000 claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 82
- 230000006870 function Effects 0.000 claims description 60
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 11
- 238000000354 decomposition reaction Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 8
- 238000002910 structure generation Methods 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 16
- 230000009471 action Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000010363 phase shift Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007747 plating Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/044—Recurrent networks, e.g. Hopfield 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/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)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
Abstract
本申请公开了一种循环神经网络的实现方法,应用于硅基光芯片,包括:接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;通过所述循环神经网络的输出层输出所述计算结果。本申请能够提高循环神经网络的计算效率。本申请还公开了一种循环神经网络的实现系统、一种存储介质及一种电子设备,具有以上有益效果。
Description
技术领域
本申请涉及人工神经网络技术领域,特别涉及循环神经网络的实现方法、系统、电子设备及存储介质。
背景技术
循环神经网络(Recurrent Neural Network,RNN)是一类以序列数据为输入,在序列的演进方向进行递归且所有节点按链式连接的递归神经网络。蓄水池计算(ReservoirComputing,RC)又称储备池计算,是一类训练循环神经网络(RNNs)的简单、高效的新型计算模型。目前循环神经网络均在电学芯片实现,但是基于电学芯片的循环神经网络的运算效率较低。
因此,如何提高循环神经网络的计算效率是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种循环神经网络的实现方法、系统、一种存储介质及一种电子设备,能够提高循环神经网络的计算效率。
为解决上述技术问题,本申请提供一种循环神经网络的实现方法,应用于硅基光芯片,该循环神经网络的实现方法包括:
接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;
利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;
通过所述循环神经网络的输出层输出所述计算结果。
可选的,在利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算之前,还包括:
获取所述循环神经网络的激活函数;
利用所述马赫曾德尔干涉仪MZI对所述激活函数进行光电转换得到所述激活函数拟合结构。
可选的,所述利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果,包括:
根据所述激活函数和所述光信号进行具有时间先后关系的循环神经网络计算,得到乘加运算矩阵;
对所述乘加运算矩阵进行奇异值分解,得到第一矩阵U、第二矩阵V和第三矩阵W;
利用所述马赫曾德尔干涉仪MZI生成所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构;
利用所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构生成所述计算结果。
可选的,所述循环神经网络为蓄水池网络;
相应的,还包括:
确定所述蓄水池网络中的每一节点的更新关联信息;其中,更新关联信息包括本节点状态更新对其他节点状态的影响,以及其他节点状态更新对本节点状态的影响;
根据所述更新关联信息更新所述蓄水池网络中的每一所述节点的状态。
可选的,在利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算的过程中,还包括:
利用目标公式更新所述蓄水池网络中的每一节点的状态;
可选的,还包括:
根据计时开关的当前时间选择对应的通路;其中,所述计时开关设置于所述蓄水池网络模型的波导通路选择器。
可选的,还包括:
本申请还提供了一种循环神经网络的实现系统,应用于硅基光芯片,该系统包括:
输入模块,用于接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;
计算模块,用于利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;
输出模块,用于通过所述循环神经网络的输出层输出所述计算结果。
本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述蓄水池网络的实现方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和硅基光芯片,所述存储器中存储有计算机程序,所述硅基光芯片调用所述存储器中的计算机程序时实现上述蓄水池网络的实现方法执行的步骤。
本申请提供了一种循环神经网络的实现方法,应用于硅基光芯片,包括:接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;通过所述循环神经网络的输出层输出所述计算结果。
本申请提供了一种基于硅基光芯片实现循环神经网络的方法,首先接收激光发射器发射的光信号,然后利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算得到计算结果。本申请完成了全光下的循环神经网络计算,具有高速高并行低功耗的优势,进而提高循环神经网络的计算效率。本申请同时还提供了一种循环神经网络的实现系统、一种存储介质和一种电子设备,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种循环神经网络的实现方法的流程图
图2为本申请实施例所提供的一种MZI的结构示意图;
图3为本申请实施例所提供的一种蓄水池结构的示意图;
图4为本申请实施例所提供的一种输入部分结构示意图;
图5为本申请实施例所提供的一种V的MZI实现结构示意图;
图6为本申请实施例所提供的一种W和U的MZI实现结构示意图;
图7为本申请实施例所提供的一种激活函数tanh的分布曲线示意图;
图8为本申请实施例所提供的一种光电转换实现三次方拟合结构示意图;
图9为本申请实施例所提供的一种x状态更新结构示意图;
图10为本申请实施例所提供的一种循环神经网络的实现系统的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种循环神经网络的实现方法的流程图。
具体步骤可以包括:
S101:接收激光发射器传输的光信号;
其中,本实施例可以应用于硅基光芯片,所述光信号由电光二极管对所述输入信号转化得到。具体的,在本步骤中可以构建所述循环神经网络的输入层,并利用所述输入层接收激光发射器传输的光信号。
S102:利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;
其中,马赫曾德尔干涉仪MZI(Mach–Zehnder interferometer)是一种干涉仪,可以用来观测从单独光源发射的光束分裂成两道准直光束之后,经过不同路径与介质所产生的相对相移变化。本实施例可以利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算。上述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算。
具体的,本实施例可以通过以下方式得到激活函数拟合结构:获取所述循环神经网络的激活函数;利用所述马赫曾德尔干涉仪MZI对所述激活函数进行光电转换得到所述激活函数拟合结构。
在本步骤中可以根据所述激活函数和所述光信号进行具有时间先后关系的循环神经网络计算,得到乘加运算矩阵;对所述乘加运算矩阵进行奇异值分解,得到第一矩阵U、第二矩阵V和第三矩阵W;利用所述马赫曾德尔干涉仪MZI生成所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构;利用所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构生成所述计算结果。V为对角阵,U和W为酉矩阵。
S103:通过所述循环神经网络的输出层输出所述计算结果;
具体的,本实施例可以构建所述循环神经网络的输出层,并利用所述输出层输出所述计算结果。
本实施例提供了一种基于硅基光芯片实现循环神经网络的方法,首先接收激光发射器发射的光信号,然后利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算得到计算结果。本实施例完成了全光下的循环神经网络计算,具有高速高并行低功耗的优势,进而提高循环神经网络的计算效率。
近十多年来,关于蓄水池计算模型的各种研究得到了广泛的关注,并且被成功应用到了非线性系统识别、信号控制、时间序列预测以及在光器件上的硬件化实现等领域。基于蓄水池计算方法的循环神经网络可以对时间序列数据进行高效建模,其核心思想在于把原始时序信号通过一个固定的输入层随机投影到一个高维的隐含动态空间中(该隐含层通常称为“蓄水池”),以获得原始信号的一个更为丰富的高维动态表达。蓄水池是整个系统的核心组件,包含大量带有随机稀疏连接的神经元。整个训练过程中,蓄水池保持不变,唯一需要训练的输出权重可以通过线性回归求解。从结构上来看,一方面,在网络输入到输出的方向上,蓄水池计算模型是一个浅层的循环神经网络,主要由一个“蓄水池”负责对输入信号的(非线性)变换、记忆存储;另一方面,从蓄水池结构的横向角度观察,蓄水池包含着大量的神经元(其神经元数目可达输入信号维度的上千倍),整体表现为“宽”的结构特征。相比于需要借助随时间反向传播(BPTT)来学习传统循环网络,蓄水池计算模型的训练过程更加简单、高效。近十多年来该领域在理论、应用上都取得了丰富的研究成果。
蓄水池计算作为一种新的神经网络计算模式,学习成本低,易于硬件实现,相比于传统的RNN、LSTM等网络,是在时序运算神经网络方向的一种最适合落地实现的技术方向。目前蓄水池网络均在电学芯片实现,但是基于电学芯片的蓄水池网络的运算效率较低。本实施例可以将图1对应实施例中所示的循环神经网络的实现方法应用于蓄水池网络模型,以提高蓄水池网络的运算效率。
若图1对应实施例中的循环神经网络为蓄水池网络,则可以通过以下方式更新蓄水池网络中的节点状态:确定所述蓄水池网络中的每一节点的更新关联信息;其中,更新关联信息包括本节点状态更新对其他节点状态的影响,以及其他节点状态更新对本节点状态的影响;根据所述更新关联信息更新所述蓄水池网络中的每一所述节点的状态。
具体的,本实施例可以利用目标公式更新所述蓄水池网络中的每一节点的状态;上述目标公式为,为节点在t+1时刻的状态,F为激活函数,为所述光信号的权重,i为光信号,为蓄水池网络的权重,为节点在t时刻的状态,为偏移信息。
作为一种可行的实施方式,本实施例可以根据计时开关的当前时间选择对应的通路;其中,所述计时开关设置于所述蓄水池网络模型的波导通路选择器。进一步的,本实施例可以按照预设公式计算第t个状态和第t+1个状态的时间差,并根据所述时间差更新所述输入信号;
下面通过在实际应用中的实施例说明上述实施例描述的流程。本实施例提出了一种利用MZI实现蓄水池网络的硅基全光芯片的方案,本实施例针对蓄水池输入,蓄水池层、激活函数和输出函数四块主要功能结构,分别提出利用MZI的实现方案,以达到全光下进行蓄水池网络运算的目的,具有高速、高并行等方面的优势。
人工神经网络的前向传播过程强烈依赖于乘加运算,其推理过程中的绝大部分运算本质上是训练后的权重和特征值之间的线性运算。使用光学芯片计算矩阵乘法与电学芯片在实现原理方面有很大的不同。在数字集成电路中,数据一般以晶体管的开关状态来编码为二进制串。利用二进制串表示的数字是离散的,例如整数或浮点值;在光子学中,数据是通过调制激光脉冲的振幅(或相位)来进行编码的,产生的是连续实数值,改变光场的强度或相位会改变所表示的实数。电路中可以使用导线来引导电子,光子学中可以利用硅基光波导结构传输激光。
在数学模型上,利用可编程移相器,马赫曾德尔干涉仪等结构,可以在光域使用奇异值分解的方式实现任意维度的矩阵乘法运算。在线性代数中,奇异值分解是一种重要的矩阵分解方式,同时也是机器学习中常用的算法之一,在提取特征、简化数据、推荐系统中应用广泛。数学上任意维度的实数矩阵都可以通过奇异值分解的方法分解为三个矩阵的积。设M是一个m*m的矩阵,U是一个m*m 的矩阵,称为幺正矩阵, 是一个 m*m 的对角矩阵,对角线上的值为非负实数,V 是一个n*n的矩阵,也是一个幺正矩阵,用 V*来表示 V 的复数共轭矩阵,W是m*n的对角阵,对矩阵 M 进行奇异值分解可以用公式(1)来表示。
请参见图2,图2为本申请实施例所提供的一种MZI的结构示意图,L1和L2是MZI的光输入端,所输出的光是L1’和L2’。S1、S2、S3和S4为MZI的端口。MZI可以将双端口的光功率按一定比例耦合到另一个双端口,分光比为 50:50;是移相器,具有可编程功能,通常可以使用几种方式来实现可编程的移相器,比如在一段波导材料上镀上金属薄膜,通过施加外部电压控制金属薄膜加热器导致波导温度变化来改变折射率,实现相移;此外还可以利用等离子体弥散效应(改变电子和空穴的浓度)和电光效应改变波导折射率来引入相移。
在光电转换中,可以识别的仅有光的实部,虚部表示的是传输过程中的能量损耗,因此上式可以进一步通过欧拉公式转换为公式(3):
公式(3)中Re表示实部。L1和L2在进入MZI后,可知光中所含能量会通过耦合器转移到输出的两个端口对应的光信号上,因此其振幅则为原本的,因此图3中的L1和L2与S1和S2的关系可以通过公式(4)表示:
基于MZI的衰减器工作方式,以及输入部分结构的输入输出关系,可以得到S3和S4的表示,如公式(6)所示:
结合以上运算,对公式进行结合,最终可以得到这样的运算下L1,L2和对应的L1’,L2’的计算关系:
本实施例可以使用MZI作为硅基光芯片的基础模块,可以实现乘加运算。下面介绍蓄水池网络,蓄水池网络有很多种模型,但不同的模型归根结底可以总结为四部分运算,分别是输入层、蓄水池层、激活函数层、输出层。下面分别进行介绍:
请参见图3,图3为本申请实施例所提供的一种蓄水池结构的示意图,如图3所示的蓄水池结构中输入层为正常的输入i1和i2,各个节点进行激活得到输出。
本实施例可以确定所述蓄水池网络中的每一节点的更新关联信息,并根据所述更新关联信息更新所述蓄水池网络中的每一所述节点的状态。例如蓄水池层中的x1、x2、x3和x4为四个节点,节点可以自我更新,且相互之间有链接或不链接的关系区别,如图2为例更新关联信息为:x1节点的状态更新受到自己和x3、x4的影响,x1会影响x2的更新,但是不会受到x2的影响。
蓄水池中的节点更新受到各个节点的影响有区别,如上图中以x1节点的更新为例,其的更新影响为:
公式(8)中的t表示时间状态,基于以上公式可知,一个节点的更新受到前一时间状态的节点状态影响,也受到当前时间状态的输入信息影响。这里的前后时间状态即是类似RNN所表示出的时序顺序信息。将其运算以数学公式表达,即是:
公式(9)的和分别是输入和蓄水池网络中的权重信息,i为输入的光信号,是偏移信息。这里的i是图4中输入的光信息i1或i2,表示在算法关系中不同的输入信号。本实施例在所组成的蓄水池网络中,根据不同的时间状态互相迭代,每个时间状态都有i的输入(这个i与时间相关),所运算得到的结果在此基础上迭代,完成运算。是激活函数信息,激活函数的选用因为涉及RNN运算,因此考虑到梯度消失问题,一般选用tanh。
最终所得到的输出为:
O为输出,Wout为输出权重,bout为输出偏移。
基于以上轮式,本实施例可以将其拆分为输入、蓄水池、激活函数和输出四部分运算,分别通过以下方案实现:
(1)输入部分。
输入通过PC进行控制,将需要输入的信号,通过电光二极管转化为光信号i1和i2,由激光发射器发射,进入硅基光芯片参与运算,以实现图2的输入部分其结构如下图4所示,图4为本申请实施例所提供的一种输入部分结构示意图。
(2)蓄水池部分。
蓄水池部分是蓄水池网络的核心运算部分,涉及本状态的乘加运算,前一状态的反馈运算,以及本状态输入的乘加运算。以图2结构为例,为了实现蓄水池部分运算,首先将其乘加运算展开,因为使用的是同一种激活函数,因此利用F代替激活函数运算,其乘加部分的运算矩阵如下所述:
对于公式(11),不考虑公式中的激活函数和矩阵乘中的时序先后关系,则上述乘法矩阵可以抽象为T:
则可知矩阵T:
T矩阵的UVW分别可以使用MZI实现,其中V可以通过图5所示的V的MZI实现结构实现。
U和W矩阵属于酉矩阵,因此可是使用Reck或是Gridnet等拓扑结构进行实现,请参见图6,图6为本申请实施例所提供的一种W和U的MZI实现结构示意图,x1~x5为输入,y1~y5为输出。图6给出了利用Reck实现U和W的一种结构,这里的结构可以通过不同的算法有多种实现方式,所实现过程如公式(13)所示。
(3)激活函数部分。
请参见图7,图7为本申请实施例所提供的一种激活函数tanh的分布曲线示意图。
考虑激活函数的运算范围,以[-3,3]为例,对其使用最小二乘法拟合:
公式(15)中的0.7217x很容易实现,较为复杂的是-0.043x3,因此提出以下图8所示结构,图8为本申请实施例所提供的一种光电转换实现三次方拟合结构示意图。
所以经过图8的链接关系和公式(16)的调整关系,可以得到图8中的输出的运算关系为:
结合上面图5和图6的MZI结构,最终可以实现tanh的拟合结构。
(4)输出部分。
以图3的蓄水池结构为例,其输出可以总结为:
基于上面描述可知,这里同样可以使用MZI类似图5和图6选择输入和输出,通过乘加最终实现运算。
以上四部分可以实现不考虑时序关系的蓄水池结构。
下面考虑实现过程的时序关系,考虑到以上结构已经是通过全光实现的了,以t和t+1时刻为例,考虑运算的区别有两部分影响,一部分是t+1时刻的输出传回本状态,作为输入,以x1为例此时只需要在MZI的运算上做一个连接。
请参见图9,图9为本申请实施例所提供的一种x状态更新结构。如图所示,设置波导为从输出可以传往输入端或最终输出端,传播的波导通路选择器上设置一个计时开关,根据时间选择不同的通路。图中的“。。。”表示从运算完成的MZI的输出到开始运算的MZI的输入口之间省略的复杂上面结构中的连接关系。
计时开关的时间选择基于以下公式决定:
本实施例提出了一种基于MZI的全光蓄水池网络实现方案,方案中将蓄水池的运算拆分为输入、蓄水池、激活、输出四部分,分别利用MZI进行了实现,然后考虑时序关系,考虑到波导特性,设计时序开关,进行不同时间状态的数据值更新,可以完成全光下的蓄水池运算,具有高速高并行低功耗的优势。
请参见图10,图10为本申请实施例所提供的一种循环神经网络的实现系统的结构示意图,应用于硅基光芯片,该系统包括:
输入模块1001,用于接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;
计算模块1002,用于利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;
输出模块1003,用于通过所述循环神经网络的输出层输出所述计算结果。
本实施例提供了一种基于硅基光芯片实现循环神经网络的方法,首先接收激光发射器发射的光信号,然后利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算得到计算结果。本实施例完成了全光下的循环神经网络计算,具有高速高并行低功耗的优势,进而提高循环神经网络的计算效率。
进一步的,还包括:
激活函数拟合结构生成模块,用于在利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算之前,获取所述循环神经网络的激活函数;还用于利用所述马赫曾德尔干涉仪MZI对所述激活函数进行光电转换得到所述激活函数拟合结构。
进一步的,计算模块1002用于根据所述激活函数和所述光信号进行具有时间先后关系的循环神经网络计算,得到乘加运算矩阵;还用于对所述乘加运算矩阵进行奇异值分解,得到第一矩阵U、第二矩阵V和第三矩阵W;还用于利用所述马赫曾德尔干涉仪MZI生成所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构;还用于利用所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构生成所述计算结果。
进一步的,所述循环神经网络为蓄水池网络;
相应的,还包括:
节点状态更新模块,用于确定所述蓄水池网络中的每一节点的更新关联信息;其中,更新关联信息包括本节点状态更新对其他节点状态的影响,以及其他节点状态更新对本节点状态的影响;还用于根据所述更新关联信息更新所述蓄水池网络中的每一所述节点的状态。
进一步的,节点状态更新模块,还用于利用目标公式更新所述蓄水池网络中的每一节点的状态;
进一步的,还包括:
通路选择模块,用于根据计时开关的当前时间选择对应的通路;其中,所述计时开关设置于所述蓄水池网络模型的波导通路选择器。
进一步的,还包括:
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory ,ROM)、随机存取存储器(Random Access Memory ,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (8)
1.一种循环神经网络的实现方法,其特征在于,应用于硅基光芯片,包括:
接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;
利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;
通过所述循环神经网络的输出层输出所述计算结果;
其中,在利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算之前,还包括:
获取所述循环神经网络的激活函数;
利用所述马赫曾德尔干涉仪MZI对所述激活函数进行光电转换得到所述激活函数拟合结构;
相应的,所述利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果,包括:
根据所述激活函数拟合结构和所述光信号进行具有时间先后关系的循环神经网络计算,得到乘加运算矩阵;
对所述乘加运算矩阵进行奇异值分解,得到第一矩阵U、第二矩阵V和第三矩阵W;所述第二矩阵V为对角阵,所述第一矩阵U和所述第三矩阵W为酉矩阵;
利用所述马赫曾德尔干涉仪MZI生成所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构;
利用所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W的MZI实现结构生成所述计算结果。
2.根据权利要求1所述循环神经网络的实现方法,其特征在于,所述循环神经网络为蓄水池网络;
相应的,还包括:
确定所述蓄水池网络中的每一节点的更新关联信息;其中,更新关联信息包括本节点状态更新对其他节点状态的影响,以及其他节点状态更新对本节点状态的影响;
根据所述更新关联信息更新所述蓄水池网络中的每一所述节点的状态。
4.根据权利要求2所述循环神经网络的实现方法,其特征在于,还包括:
根据计时开关的当前时间选择对应的通路;其中,所述计时开关设置于所述蓄水池网络模型的波导通路选择器。
6.一种循环神经网络的实现系统,其特征在于,应用于硅基光芯片,包括:
输入模块,用于接收激光发射器传输的光信号;其中,所述光信号由电光二极管对输入电信号转化得到;
计算模块,用于利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算,得到计算结果;其中,所述循环神经网络计算包括本状态的乘加运算、前一状态的反馈运算和本状态输入的乘加运算;
输出模块,用于通过所述循环神经网络的输出层输出所述计算结果;
激活函数拟合结构生成模块,用于在利用马赫曾德尔干涉仪MZI和激活函数拟合结构对所述光信号进行具有时间先后关系的循环神经网络计算之前,获取所述循环神经网络的激活函数;还用于利用所述马赫曾德尔干涉仪MZI对所述激活函数进行光电转换得到所述激活函数拟合结构;
相应的,所述计算模块用于根据所述激活函数拟合结构和所述光信号进行具有时间先后关系的循环神经网络计算,得到乘加运算矩阵;所述计算模块还用于对所述乘加运算矩阵进行奇异值分解,得到第一矩阵U、第二矩阵V和第三矩阵W;所述第二矩阵V为对角阵,所述第一矩阵U和所述第三矩阵W为酉矩阵;所述计算模块还用于利用所述马赫曾德尔干涉仪MZI生成所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W的MZI实现结构;所述计算模块还用于利用所述第一矩阵U的MZI实现结构、所述第二矩阵V的MZI实现结构和所述第三矩阵W 的MZI实现结构生成所述计算结果。
7.一种电子设备,其特征在于,包括存储器和硅基光芯片,所述存储器中存储有计算机程序,所述硅基光芯片调用所述存储器中的计算机程序时实现如权利要求1至5任一项所述循环神经网络的实现方法的步骤。
8.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至5任一项所述循环神经网络的实现方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111527633.4A CN113935474B (zh) | 2021-12-15 | 2021-12-15 | 循环神经网络的实现方法、系统、电子设备及存储介质 |
PCT/CN2022/100480 WO2023109065A1 (zh) | 2021-12-15 | 2022-06-22 | 循环神经网络的实现方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111527633.4A CN113935474B (zh) | 2021-12-15 | 2021-12-15 | 循环神经网络的实现方法、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113935474A CN113935474A (zh) | 2022-01-14 |
CN113935474B true CN113935474B (zh) | 2022-03-08 |
Family
ID=79288955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111527633.4A Active CN113935474B (zh) | 2021-12-15 | 2021-12-15 | 循环神经网络的实现方法、系统、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113935474B (zh) |
WO (1) | WO2023109065A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113935474B (zh) * | 2021-12-15 | 2022-03-08 | 苏州浪潮智能科技有限公司 | 循环神经网络的实现方法、系统、电子设备及存储介质 |
CN114970836B (zh) * | 2022-07-28 | 2022-10-28 | 浙江大学 | 蓄水池神经网络实现方法、系统、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111860822A (zh) * | 2020-07-20 | 2020-10-30 | 联合微电子中心有限责任公司 | 光学神经网络的全光非线性激活函数实现方法、装置 |
CN112232504A (zh) * | 2020-09-11 | 2021-01-15 | 联合微电子中心有限责任公司 | 一种光子神经网络 |
CN113627605A (zh) * | 2021-06-28 | 2021-11-09 | 浪潮电子信息产业股份有限公司 | 光子神经网络的光学干涉单元配置方法、装置及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8239440B2 (en) * | 2008-03-28 | 2012-08-07 | Oracle America, Inc. | Processor which implements fused and unfused multiply-add instructions in a pipelined manner |
CN113298246B (zh) * | 2021-05-27 | 2023-02-28 | 山东云海国创云计算装备产业创新中心有限公司 | 数据处理方法、装置及计算机可读存储介质 |
CN113657588B (zh) * | 2021-08-19 | 2023-08-18 | 山东云海国创云计算装备产业创新中心有限公司 | 一种实现光学神经网络的方法及系统 |
CN113935474B (zh) * | 2021-12-15 | 2022-03-08 | 苏州浪潮智能科技有限公司 | 循环神经网络的实现方法、系统、电子设备及存储介质 |
-
2021
- 2021-12-15 CN CN202111527633.4A patent/CN113935474B/zh active Active
-
2022
- 2022-06-22 WO PCT/CN2022/100480 patent/WO2023109065A1/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111860822A (zh) * | 2020-07-20 | 2020-10-30 | 联合微电子中心有限责任公司 | 光学神经网络的全光非线性激活函数实现方法、装置 |
CN112232504A (zh) * | 2020-09-11 | 2021-01-15 | 联合微电子中心有限责任公司 | 一种光子神经网络 |
CN113627605A (zh) * | 2021-06-28 | 2021-11-09 | 浪潮电子信息产业股份有限公司 | 光子神经网络的光学干涉单元配置方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
时频联合长时循环神经网络;庄连生等;《计算机研究与发展》;20191215(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113935474A (zh) | 2022-01-14 |
WO2023109065A1 (zh) | 2023-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
De Marinis et al. | Photonic neural networks: A survey | |
Larger et al. | High-speed photonic reservoir computing using a time-delay-based architecture: Million words per second classification | |
CN113935474B (zh) | 循环神经网络的实现方法、系统、电子设备及存储介质 | |
Nahmias et al. | Photonic multiply-accumulate operations for neural networks | |
Duport et al. | All-optical reservoir computing | |
Brunner et al. | Tutorial: Photonic neural networks in delay systems | |
Vandoorne et al. | Parallel reservoir computing using optical amplifiers | |
CN109784486B (zh) | 一种光学神经网络处理器及其训练方法 | |
JP7115691B2 (ja) | フォトニックリザーバコンピューティングシステムのトレーニング | |
CN109376855B (zh) | 一种光神经元结构和包含该结构的神经网络处理系统 | |
Toole et al. | Photonic implementation of spike-timing-dependent plasticity and learning algorithms of biological neural systems | |
El Srouji et al. | Photonic and optoelectronic neuromorphic computing | |
WO2023201970A1 (zh) | 一种计算芯片、系统及数据处理方法 | |
Antonik et al. | Towards pattern generation and chaotic series prediction with photonic reservoir computers | |
CN109784485A (zh) | 一种光学神经网络处理器及其计算方法 | |
CN114970836A (zh) | 蓄水池神经网络实现方法、系统、电子设备及存储介质 | |
Lin et al. | Deep time-delay reservoir computing with cascading injection-locked lasers | |
CN113325917A (zh) | 一种光计算装置、系统以及计算方法 | |
WO2019167759A1 (ja) | 光信号処理装置 | |
CN114325932B (zh) | 一种片上集成的全光神经网络光计算芯片 | |
Vatsavai et al. | Silicon photonic microring based chip-scale accelerator for delayed feedback reservoir computing | |
Song et al. | Experimental demonstration of photonic spike-timing-dependent plasticity based on a VCSOA | |
CN116029343A (zh) | 基于mrr和相变材料的光子脉冲神经网络实现方法 | |
JP6829700B2 (ja) | 光信号処理装置 | |
Tsurugaya et al. | Reservoir Computing Using On-Chip XGM-based Nonlinear Processing by Membrane SOAs on Si-MZI |
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 |