一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

光学全加器及其神经网络设计方法、设备及介质

2022-11-19 16:29:44 来源:中国专利 TAG:


1.本技术涉及神经网络技术领域,特别涉及一种光学全加器及其神经网络设计方法、设备及介质。


背景技术:

2.全加器是算术逻辑运算单元的基本模块,而算术逻辑单元是以cpu(central processing unit,中央处理器)、gpu(graphics processing unit,图形处理器)等通用处理器为代表的高端芯片的核心基本单元,对整个计算系统的性能和功耗有着至关重要的作用。过去几十年,集成电路工艺技术的进步是提高计算芯片性能和能效的主要措施之一。然而,随着摩尔定律和登纳德缩放比例定律放缓甚至走向终结,这一方法正在逐渐失效,新一代高能效计算芯片框架的开发已迫在眉睫。光具有物理空间最快的传播速度以及多维多尺度的优势,采用光子替代传统电子进行信息处理的光计算有望构建新一代高性能计算机。与电子芯片相比,光计算具有高速、并行、低功耗等颠覆性优势。尤其随着人工智能算法的深度发展,光在介质中受限传播的物理过程在数学上的表达与深度神经网络算法具有高度的相似性,采用光电神经网络实现以全加器为代表的算术逻辑运算有望突破传统电子芯片的能效瓶颈。
3.相关技术中光学神经网络的设计一般采用神经元在空间上均匀排布的思路,即输出层上的神经元直接连接或间接连接的隐藏层神经元个数是基本一致的,但由于全加器具有从低位逐级向高位进位的特征,即最低位的输入也可能影响最高位的输出,而高位输入对低位的输出并无影响。因此这种均一设计的神经元排布方法通常会得到精度分布不均的输出结果。低位的输出结果精度高而高位的输出精度往往较低,需要长时间训练才能达到理想的精度,导致效率低,尤其是当网络规模大时高位输出的精度受限。


技术实现要素:

4.本技术提供一种光学全加器及其神经网络设计方法、设备及介质,以解决相关技术采用神经元在空间上均匀排布的方法会导致输出结果的精度分布不均,且需要长时间训练才能达到理想的精度,效率低等问题。
5.本技术第一方面实施例提供一种光学全加器,包括:目标神经网络,用于对输入数据进行逻辑运算,得到运算结果,其中,所述目标神经网络包括输入层、隐藏层和输出层,所述输入层包含多个输入端口,用于接收输入数据,所述输出层包含多个输出端口,用于输出运算结果,所述隐藏层用于对输入的数据进行逻辑运算,所述隐藏层包括多层,每层隐藏层为一条衍射线,每条衍射线上具有多个衍射槽,优先级高的输出端口对应的隐藏层中衍射槽之间的间距小于优先级低的输出端口对应的隐藏层中衍射槽之间的间距。
6.可选地,在本技术的一个实施例中,每一个或多个衍射槽对应所述目标神经网络中的一个神经元。
7.可选地,在本技术的一个实施例中,所述每个衍射隐藏层中衍射槽的长度与所述
每个衍射隐藏层中神经元的权重参数匹配。
8.可选地,在本技术的一个实施例中,所述目标神经网络包括衍射神经网络、干涉神经网络和散射神经网络中的一种或多种光学神经网络。
9.本技术第二方面实施例提供一种光学全加器的神经网络设计方法,所述光学全加器中目标神经网络包括隐藏层,且所述隐藏层包括多层,包括以下步骤:获取所述隐藏层的每层中不同位置神经元的期望计算特征和输出端口优先级;根据所述期望计算特征和所述输出端口的优先级匹配所述隐藏层中衍射槽之间的设计间距,其中,优先级高的输出端口对应的衍射槽之间的设计间距小于优先级低的输出端口对应的衍射槽之间的设计间距;根据所述隐藏层的每层中衍射槽之间的设计间距生成所述目标神经网络的设计方案,基于所述设计方案实现所述目标神经网络的设计。
10.可选地,在本技术的一个实施例中,每一个或多个衍射槽对应所述目标神经网络中的一个神经元。
11.可选地,在本技术的一个实施例中,所述根据所述隐藏层的每层中衍射槽之间的设计间距生成所述目标神经网络的设计方案,还包括:获取所述隐藏层的每层中不同位置神经元的权重参数;根据所述隐藏层的每层中不同位置神经元的权重参数匹配所述隐藏层的每层中衍射槽的设计长度;根据所述隐藏层的每层中衍射槽的设计长度和衍射槽之间的设计间距生成所述目标神经网络的设计方案。
12.可选地,在本技术的一个实施例中,所述目标神经网络包括衍射神经网络、干涉神经网络和散射神经网络中的一种或多种光学神经网络。
13.本技术第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的光学全加器的神经网络设计方法。
14.本技术第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述实施例所述的光学全加器的神经网络设计方法。
15.由此,本技术至少具有如下有益效果:
16.本技术实施例可以通过神经网络端到端的直接映射实现运算,通过对应输出层计算结果的位数从高到低,所连接或间接连接的隐藏层神经元个数也按照对应的从高到低进行排布,从而提高高位输出的计算准确度和计算精度,减少训练时间。由此,解决了相关技术采用神经元在空间上均匀排布的方法会导致输出结果的精度分布不均,且需要长时间训练才能达到理想的精度,效率低等问题。
17.本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
18.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
19.图1为根据本技术实施例提供的一种光学全加器的方框示意图;
20.图2为根据本技术实施例的基于衍射神经网络的光电全加器设计示意图;
21.图3为根据本技术实施例提供的一种光学全加器的神经网络设计方法的流程图;
22.图4为根据本技术实施例的电子设备的结构示意图。
23.附图标记说明:多个输入端口-100、多个输出端口-200、目标神经网络的处理器-300、存储器-401、处理器-402、通信接口-403。
具体实施方式
24.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
25.下面参考附图描述本技术实施例的光学全加器及其神经网络设计方法、设备及介质。针对上述背景技术中提到的问题,本技术提供了一种光学全加器,通过神经网络端到端的直接映射实现运算,通过对应输出层计算结果的位数从高到低,所连接或间接连接的隐藏层神经元个数也按照对应的从高到低进行排布,从而提高高位输出的计算准确度和计算精度,减少训练时间。由此,解决了相关技术采用神经元在空间上均匀排布的方法会导致输出结果的精度分布不均,且需要长时间训练才能达到理想的精度,效率低等问题。
26.具体而言,图1为本技术实施例所提供的一种光学全加器的方框示意图。
27.如图1所示,该光学全加器包括:目标神经网络100,其中,目标神经网络包括输入层101、隐藏层102和输出层103。
28.其中,目标神经网络100,用于对输入的数据进行逻辑运算,得到运算结果,其中,目标神经网络包括输入层101、隐藏层102和输出层103,输入层101包含多个输入端口,用于接收多个输入端口输入的数据,输出层103包含多个输出端口,用于输出运算结果,隐藏层102用于对输入的数据进行逻辑运算,隐藏层包括多层,隐藏层的每层为一条衍射线,每条衍射线上具有多个衍射槽,优先级高的输出端口对应的隐藏层中衍射槽之间的间距小于优先级低的输出端口对应的隐藏层中衍射槽之间的间距。
29.如图2所示,以衍射神经网络为例的2比特全加器,全加器输入层有5个端口,包括被加项b2b1和a2a1,以及进位输入项c
in
,输出层有3个端口,包括求和项s2s1和进位输出项c
out
。输入端口的从高位到低位的排序依次是b2,a2,b1,a1,c
in
,而输出端口的从高位到低位的排序依次为c
out
,s2,s1。
30.在本技术实施例中,目标神经网络包括但不限于衍射神经网络、干涉神经网络和散射神经网络。面向全加器计算功能的神经网络,由于存在从低位向高位进位的计算逻辑,最低位的输入也会影响最高位的输出,而高位的输入不会对低位的输出有影响。因此如果在同样训练强度下,高位输出的计算需要更多的计算资源,而低位输出的计算资源相比需要的计算资源更少。本技术实施例可以通过神经网络端到端的直接映射实现运算,通过对应输出层计算结果的位数从高到低,所连接或间接连接的隐藏层神经元个数也按照对应的从高到低进行排布,即神经元的非均匀排布,从而降低训练复杂度,实现计算资源的差异性分配提高计算精度和准确度。
31.在本技术的一个实施例中,每一个或多个衍射槽对应目标神经网络中的一个神经元,每个衍射隐藏层中衍射槽的长度与每个衍射隐藏层中神经元的权重参数匹配。
32.在上述实施例的基础上,以衍射神经网络为例的2比特全加器由三个衍射隐藏层组成,每个隐藏层有多个衍射槽组成,每个衍射槽是网络中的一个神经元,神经元的权重参
数由衍射槽的长度来定义。本技术实施例的重点在于隐藏层神经元密度,即单个输出层神经元连接的隐藏层神经元个数,按照输出层神经元对应的端口排序从高到低进行排布。高位的神经元密度更高,在图2中神经网络的示例中的物理实现为衍射槽之间的间距更小,进行的权重计算更多,从而实现更加精确的计算。
33.根据本技术实施例提出的光学全加器,通过神经网络端到端的直接映射实现运算,通过对应输出层计算结果的位数从高到低,所连接或间接连接的隐藏层神经元个数也按照对应的从高到低进行排布,从而提高高位输出的计算准确度和计算精度,减少训练时间。由此,解决了相关技术采用神经元在空间上均匀排布的方法会导致输出结果的精度分布不均,且需要长时间训练才能达到理想的精度,效率低等问题。
34.其次参照附图描述根据本技术实施例提出的一种光学全加器的神经网络设计方法,光学全加器包括与每个隐藏层对应连接输出端口。
35.图3是本技术实施例的一种光学全加器的神经网络设计方法的流程图。
36.如图3所示,该光学全加器的神经网络设计方法,包括以下步骤:
37.在步骤s301中,获取隐藏层的每层中不同位置神经元的期望计算特征和输出端口优先级。
38.可以理解的是,由于全加器具有从低位逐级向高位进位的特征,即最低位的输入也可能影响最高位的输出,而高位输入对低位的输出并无影响,因此,输出层高位的信号经过的隐藏层的神经元密度高,权重参数更多,计算更充分,而低位输出信号对应的神经元密度低,也可以满足计算精度需求。因此,本技术的实施例可以获取隐藏层的每层中不同位置神经元的期望计算特征和输出端口优先级,根据计算特征差异化排布神经元的设计方法可以同时实现高位和低位输出的高精度拟合,降低训练复杂度,从而减少训练时间,提高网络训练的效率,进而实现高能效的全加运算,将有效提高系统的性能,降低功耗,实现能量效率的指数级增长。
39.在步骤s302中,根据期望计算特征和输出端口的优先级匹配隐藏层中衍射槽之间的设计间距,其中,优先级高的输出端口对应的衍射槽之间的设计间距小于优先级低的输出端口对应的衍射槽之间的设计间距;根据隐藏层的每层中衍射槽之间的设计间距生成目标神经网络的设计方案,基于设计方案实现目标神经网络的设计。
40.其中,目标神经网络包括但不限于衍射神经网络、干涉神经网络和散射神经网络,每一个或多个衍射槽对应目标神经网络中的一个神经元。
41.具体而言,本技术实施例的重点在于隐藏层神经元密度,即单个输出层神经元直接或间接连接的隐藏层神经元个数,按照输出层神经元对应的端口排序从高到低进行排布。高位的神经元密度更高,在图2所示的神经网络的示例中的物理实现为衍射槽之间的间距更小,进行的权重计算更多,从而实现更加精确的计算。
42.在本技术的一个实施例中,根据隐藏层的每层中衍射槽之间的设计间距生成目标神经网络的设计方案,还包括:获取隐藏层的每层中不同位置神经元的权重参数;根据隐藏层的每层中不同位置神经元的权重参数匹配隐藏层的每层中衍射槽的设计长度;根据隐藏层的每层中衍射槽的设计长度和衍射槽之间的设计间距生成目标神经网络的设计方案。
43.可以理解的是,本技术实施例可以根据每个衍射隐藏层中神经元的权重参数匹配每个衍射隐藏层中衍射槽的设计长度,从而完成目标神经网络的设计方案。如图2所示,c
out
的位次最高,因此连接的隐藏层神经元数目最多,从神经元的排布来说单位面积密度也最高,输出层高位的信号经过的隐藏层的神经元密度高,权重参数更多,而s2,s1逐级减少。这只是本技术实施例的其中一种排布方式的具体示例,具体每一条衍射线即隐藏层的神经元排布有所不同。例如,也可以三条衍射线都设计为第二层这样,同样也满足最高位输出连接神经元密度更高的要求。
44.需要说明的是,本技术实施例光学全加器的神经网络的设计方法可以适用于不同的神经网络实现方式,包括但不限于衍射神经网络、干涉神经网络、散射神经网络。对于其他光学神经网络,神经元非均匀排布的具体物理实现可能会有所不同,但是都可以根据计算特征对隐藏层神经元排布密度进行差异化,从而实现全部输出端口的高精度计算,同时能在满足精度要求的同时,大幅降低神经网络的训练复杂度,从而减少训练时间,提高训练效率,尤其是针对大规模神经网络训练,性能提升更为明显。
45.需要说明的是,前述对光学全加器实施例的解释说明也适用于该实施例的光学全加器的神经网络设计方法,此处不再赘述。
46.根据本技术实施例提出的光学全加器的神经网络设计方法,通过神经网络端到端映射实现全加器的运算功能,根据计算特征对神经元进行特异性非均一排布可以实现全部输出端口的高精度计算,同时能在满足精度要求的同时,大幅降低神经网络的训练复杂度,从而减少训练时间,提高训练效率,由此,解决了相关技术采用神经元在空间上均匀排布的方法会导致输出结果的精度分布不均,且需要长时间训练才能达到理想的精度,效率低等问题。
47.图4为本技术实施例提供的电子设备的结构示意图。该电子设备可以包括:
48.存储器401、处理器402及存储在存储器401上并可在处理器402上运行的计算机程序。
49.处理器402执行程序时实现上述实施例中提供的光学全加器的神经网络设计方法。
50.进一步地,电子设备还包括:
51.通信接口403,用于存储器401和处理器402之间的通信。
52.存储器401,用于存放可在处理器402上运行的计算机程序。
53.存储器401可能包含高速ram(random access memory,随机存取存储器)存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。
54.如果存储器401、处理器402和通信接口403独立实现,则通信接口403、存储器401和处理器402可以通过总线相互连接并完成相互间的通信。总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component,外部设备互连)总线或eisa(extended industry standard architecture,扩展工业标准体系结构)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
55.可选的,在具体实现上,如果存储器401、处理器402及通信接口403,集成在一块芯片上实现,则存储器401、处理器402及通信接口403可以通过内部接口完成相互间的通信。
56.处理器402可能是一个cpu(central processing unit,中央处理器),或者是asic(application specific integrated circuit,特定集成电路),或者是被配置成实施本申
请实施例的一个或多个集成电路。
57.本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的光学全加器的神经网络设计方法。
58.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或n个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
59.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“n个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
60.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更n个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
61.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,n个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列,现场可编程门阵列等。
62.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
63.尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献