振荡神经网络的训练制造技术

技术编号:37355466 阅读:22 留言:0更新日期:2023-04-27 07:05
该网络包括至少一个网络层,在该至少一个网络层中,通过存储相应的网络权重的可编程耦合元件互连的多个电子振荡器在取决于输入信号的时间延迟处生成振荡信号,以将输入信号从该层的输入传播到输出。该网络适于提供基本上线性取决于网络最后层中的振荡信号相位的网络输出信号。该方法包括根据输出信号和训练样本的期望输出来计算网络误差,并通过误差的反向传播来计算相应的网络权重的更新,使得网络层的权重更新取决于该层的输入处的时间延迟的向量和该层的输出处的计算误差。的向量和该层的输出处的计算误差。的向量和该层的输出处的计算误差。

【技术实现步骤摘要】
【国外来华专利技术】振荡神经网络的训练

技术介绍

[0001]本专利技术总体上涉及振荡神经网络的训练。提供了用于训练振荡神经网络的方法,以及实现这种方法的神经网络系统。
[0002]振荡神经网络(ONN)是采用耦合振荡器网络的人工神经网络。振荡器对应于神经网络的神经元,并且振荡器对之间的耦合的强度模拟网络(突触)权重。通过处理网络中的训练样本并调整网络权重矩阵,使得网络“学习”或记忆要检测的特定相关性,可以训练这样的网络来执行相关性任务,例如图像分类和语音识别。已经为ONN提出了很少的硬件实现,并且这些网络通常取决于权重矩阵的数学预训练,例如经由Hebbian学习算法。

技术实现思路

[0003]本专利技术的一个方面提供了一种神经网络训练方法。该方法包括将定义训练样本的数据编码为网络输入信号中的时间延迟的向量,并将输入信号提供给振荡神经网络。该网络包括至少一个网络层,其中通过存储相应的网络权重的可编程耦合元件互连的多个电子振荡器在取决于输入信号的时间延迟处生成振荡信号,以将输入信号从该层的输入传播到输出。该网络适于提供基本上线性取决于网络最后层中振荡信号相位的网络输出信号。该方法包括根据输出信号和训练样本的期望输出来计算网络误差,并通过误差的反向传播来计算相应的网络权重的更新,使得网络层的权重更新取决于该层的输入处的时间延迟的向量和该层的输出处的计算误差。该方法还包括对耦合元件进行编程,以根据计算出的权重更新来更新存储的权重。
[0004]本专利技术的另一方面提供了一种神经网络系统,包括编码器、如上所述的振荡神经网络和系统控制器。编码器适于将定义训练样本的数据编码为网络输入信号中的时间延迟的向量。振荡神经网络接收并传播输入信号,并提供如上所述的网络输出信号。如上所述,系统控制器适于计算网络误差和权重更新,并对网络的耦合元件进行编程。
[0005]本专利技术的另一方面提供了一种计算机程序产品,包括包含程序指令的计算机可读存储介质,可由处理装置执行,以使处理装置实施上述神经网络训练方法。
[0006]下文将参照附图,通过说明性和非限制性示例,对本专利技术的实施例进行更详细的描述。
附图说明
[0007]图1是体现本专利技术的神经网络系统的示意图;
[0008]图2示出了示例性网络层中振荡器的耦合,以及该层的对应的权重矩阵;
[0009]图3指示了由图1系统执行的神经网络训练方法的步骤;
[0010]图4示出了系统的实施例中编码器的操作;
[0011]图5示出了优选实施例中网络层的更详细结构;
[0012]图6示出了系统的实施例中的单层网络的结构;
[0013]图7示出了图6实施例中非线性元件的结构;
[0014]图8示出了系统的实施例中的双层网络的结构;
[0015]图9指示了优选实施例中权重更新计算的步骤;
[0016]图10示出了本专利技术实施例中利用低对比度训练样本学习黑白图像(black

and

white image)的过程;
[0017]图11比较了使用体现本专利技术的训练方法和Hebbian学习算法的系统性能。
具体实施方式
[0018]本专利技术可为系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的(一个或多个)计算机可读存储介质,用于使处理器执行本专利技术的各方面。
[0019]计算机可读存储介质可为有形设备,可保留和存储供指令执行设备使用的指令。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述设备的任何合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD

ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备,诸如穿孔卡或其上记录有指令的凹槽中的凸起结构,以及前述的任何合适的组合。如此处所使用的,计算机可读存储介质不应被解释为本身是瞬时信号,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。
[0020]本文所述的计算机可读程序指令可经由网络,例如互联网、局域网、广域网和/或无线网络,从计算机可读存储介质下载至相应的计算/处理设备,或下载至外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
[0021]用于执行本专利技术操作的计算机可读程序指令可为汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微码、固件指令、状态设置数据,或以一种或多种编程语言的任意组合编写的源代码或目标代码,包括面向对象的编程语言,如Smalltalk、C++等,以及常规程序编程语言,如“C”编程语言或类似编程语言。计算机可读程序指令可以完全在用户计算机上执行,部分在用户计算机上执行,作为独立软件包,部分在用户计算机上执行,部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令,以个性化电子电路,从而执行本专利技术的各方面。
[0022]本文参考根据本专利技术实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图,描述了本专利技术的各方面。将会理解,流程图和/或框图的每个框以及流程图和/或框
图中的框的组合可以由计算机可读程序指令来实现。
[0023]可将这些计算机可读程序指令提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,以生产机器,从而通过计算机或其他可编程数据处理装置的处理器执行的指令,可创建用于实施流程图和/或框图框中规定的功能/动作的部件(mean)。这些计算机可读程序指令也可以存储在计算机可读存储介质中,该计算机可读存储介质可以指导计算机、可编程数据处理装置和/或其他设备以特定方式运行,使得其中存储有指令的计算机可读存储介质包括制造品,该制造品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
[0024]计算机可读程序指令也可加载到计算机、其他可编程数据处理装置或其他设备上,以使一系列操作步骤在计算机、其他可编程装置或其他设备上执行,从而产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于神经网络训练的计算机实现的方法,包括:由一个或多个计算机处理器将定义训练样本的数据编码为网络输入信号中的时间延迟的向量;由一个或多个计算机处理器将所述输入信号提供给振荡神经网络,所述振荡神经网络包括至少一个网络层,在所述至少一个网络层中,经由存储相应的网络权重的可编程耦合元件互连的多个电子振荡器在取决于所述输入信号的时间延迟处生成振荡信号,以将所述输入信号从所述层的输入传播到输出,所述振荡神经网络适于提供基本上线性取决于所述振荡神经网络的最后所述层中的振荡信号的相位的网络输出信号;由一个或多个计算机处理器取决于所述输出信号和所述训练样本的期望输出来计算网络误差;由一个或多个计算机处理器通过所述误差的反向传播来计算相应的网络权重的更新,使得网络层的权重更新取决于所述层的输入处的时间延迟的向量和所述层的输出处的计算误差;以及由一个或多个计算机处理器对所述耦合元件进行编程,以根据所述权重更新来更新存储的权重。2.根据权利要求1所述的计算机实现的方法,其中所述网络输出信号取决于最后层中的振荡信号和参考信号之间的相位差。3.根据权利要求1所述的计算机实现的方法,其中所述网络误差包括取决于所述输出信号和所述训练样本的所述期望输出的成本函数的导数。4.根据权利要求3所述的计算机实现的方法,其中所述成本函数取决于所述训练样本的所述期望输出和所述输出信号的预定非线性函数之间的差。5.根据权利要求4所述的计算机实现的方法,其中所述非线性函数包括ReLU函数,并且其中所述网络输出信号被提供给包括一组二极管的激活阶段,用于将所述ReLU函数应用于所述网络输出信号。6.根据权利要求1所述的计算机实现的方法,其中所述振荡神经网络包括多个层。7.根据权利要求6所述的计算机实现的方法,其中每层的所述输出连接到激活阶段,用于将预定非线性函数应用于所述层的输出信号。8.根据权利要求7所述的计算机实现的方法,其中所述非线性函数包括ReLU函数,并且其中所述激活阶段包括一组二极管。9.根据权利要求1所述的计算机实现的方法,其中:每个振荡器包括场效应晶体管;并且编码在所述输入信号中的每个时间延迟确定施加到第一网络层中的所述晶体管的栅极的信号的定时,以启动所述晶体管生成振荡信号。10.一种神经网络系统,包括:编码器,适于将定义训练样本的数据编码为网络输入信号中的时间延迟的向量;振荡神经网络,用于接收所述输入信号,所述网络包括至少一个网络层,在所述至少一个网络层中,经由存储相应的网络权重的可编程耦合元件互连的多个电子振荡器在取决于所述输入信号的时间延迟处生成振荡信号,以将所述输入信号从所述层的输入传播到输出,所述振荡神经网络适于提供基本上线性取决于所述振荡神经网络...

【专利技术属性】
技术研发人员:SF卡尔格E科尔蒂
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1