本文所讨论的实施方式涉及储备池计算机、储备池设计方法以及用于存储储备池设计程序的非暂态计算机可读存储介质。
背景技术:
最近,已知很难通过反向传播来更新层间权重,尤其是在多层递归神经网络(rnn)中,并且已经研究了各种改进方法。因此,注意力已经集中在被称为储备池计算的rnn算法上,该rnn算法用于仅更新输出层的权重。
此处,rnn被称为适于处理时间序列数据的机器学习。由于rnn具有在网络内部包括环路的结构,因此rnn可以将过去数据与当前数据之间的相关性作为权重。期望将rnn应用于视频处理、自然语言处理等中的动态判断。
储备池计算是特殊类型的rnn,其具有通过随机且固定的耦接而不是像深度学习中那样的多层耦接的被称为“储备池”的结构。在学习之前确定储备池中的节点之间的耦接结构(网络)。例如,在将储备池安装在诸如现场可编程门阵列(fpga)的电路中的情况下,在设计时均匀且随机地确定耦接结构。另外,在储备池的节点之间的耦接固定的情况下,进行具有储备池的rnn的学习,并且仅更新输出层的权重。在学习完成时,固定输出权重并获得输出数据。
相关技术的示例包括日本公开特许公报第2018-180701号和国际公布小册子第wo2016/194248号。
技术实现要素:
[技术问题]
然而,存在以下问题:相关技术的储备池计算可能难以有效地获得有用的储备池。
例如,在相关技术的储备池计算中,即使在储备池的节点之间的耦接结构中没有偏置并且耦接结构是均匀随机的情况下,也可以解决该问题。另一方面,在这样的情况下,准确性可能很差,可能需要大量的学习步骤,并且可能需要大量的节点来使该问题得以改善。
此外,取决于要解决的问题,最好使用具有偏置结构的网络作为储备池。节点之间的耦接网络中需要多少偏置取决于问题。
在一方面,目的是有效地获得有用的储备池。
[问题的解决方案]
根据实施方式的一方面,提供了一种由计算机执行的储备池设计方法,该计算机被配置成控制包括储备池和输出层的神经网络,该储备池包括多个节点并且具有在多个节点之间的随机确定的耦接结构,输出层具有针对多个节点中的每个节点设置的权重。在示例中,该方法包括:改变在储备池中包括的多个节点之间的耦接结构;计算针对至神经网络的输入的输出;针对通过该改变而改变的耦接结构中的每个耦接结构,基于输出来更新输出层的权重;根据预定标准对输出进行评估;以及基于通过评估获得的评估结果,从通过该改变而改变的耦接结构中选择预定耦接结构。
[本发明的有益效果]
在一方面,可以有效地获得有用的储备池。
附图说明
图1是用于说明储备池计算的图;
图2示出了储备池计算机的配置示例;
图3是示出根据实施方式1的储备池设计处理的流程的流程图;
图4是示出根据实施方式1的耦接结构改变处理的流程的流程图;
图5是示出根据实施方式2的耦接结构改变处理的流程的流程图;
图6是用于说明遗传算法的图;
图7是示出根据实施方式3的第一代耦接结构改变处理的流程的流程图;
图8是示出根据实施方式3的第k代耦接结构改变处理的流程的流程图;
图9示出了实验结果;以及
图10是用于说明硬件配置示例的图。
具体实施方式
下面将参照附图详细描述根据本发明的储备池计算机、储备池设计方法以及储备池设计程序的实施方式。该实施方式不限制本发明。另外,各个实施方式可以在不矛盾的情况下彼此适当地组合。
[实施方式1]
[储备池计算]
首先,将参照图1描述储备池计算。图1是用于说明储备池计算的图。如图1所示,储备池计算中的神经网络具有输入层11a、储备池11b和输出层11c。
在图1的示例中,具有图案的每个圆圈为储备池11b的节点。如上所描述的,在相关技术的方法中,预先随机确定并固定储备池的节点之间的权重,并且然后执行输出层的权重的学习。
[功能配置]
将参照图2描述根据实施方式的储备池计算机的配置。图2示出了储储备池计算机的配置示例。如图2所示,储备池计算机1具有储备池计算(rc)电路10和设计部20。
rc电路10具有计算单元11、更新单元12和供应单元13。计算单元11计算针对至神经网络的输入的输出,该神经网络包括储备池和输出层,储备池包括多个节点并且具有在多个节点之间的随机确定的耦接结构,输出层具有针对多个节点中的每个节点设置的权重。至少计算单元11的储备池部分可以是现场可编程门阵列(fpga)。
更新单元12更新输出层的权重。此外,在初始状态下随机确定储备池的耦接结构,并且然后由稍后描述的改变单元21对该耦接结构进行改变。针对由改变单元21改变的耦接结构中的每个耦接结构,更新单元12基于通过计算单元11计算的输出来更新输出层的权重。此时,更新单元12更新输出层的权重,使得教师数据(可以称为“训练数据”)与输出之间的误差变小。教师数据由提供单元13提供给更新单元12。
设计部20具有改变单元21、评估单元22和选择单元23。改变单元21改变储备池的节点之间的耦接结构。例如,改变单元21通过重写用作储备池的fpga来改变耦接结构。例如,改变单元21将耦接结构改变预定次数。
此处,通过使用邻接矩阵来在逻辑上表示储备池的耦接结构,该邻接矩阵具有与可以包括在储备池的节点相同的行数和列数。此时,由于邻接矩阵的每个分量表示在储备池中包括的多个节点之间的权重,因此改变单元21可以通过改变每个分量来确定权重。此外,由于储备池的节点不必完全耦接,因此邻接矩阵的分量可以为0。
例如,改变单元21可以在等于或大于0且等于或小于1的范围内随机地确定邻接矩阵的每个分量,并且重写用作储备池的fpga以与邻接矩阵匹配。此时,可以根据储备池的用途等预先将邻接矩阵的特征值、值为0的分量的比率等设置为约束条件。此外,随着0分量的比率增加,储备池变得稀疏,并且随着实数分量的比率增加,储备池变得稠密。
评估单元22根据预定标准对通过计算单元11计算的输出进行评估。例如,评估单元22计算通过计算单元11计算的输出相对于预先准备的教师数据的误差作为评估结果。
选择单元23基于通过评估单元22获得的评估结果,从通过改变单元21改变的耦接结构中选择预定耦接结构。例如,选择单元23从通过改变单元21改变的耦接结构中选择使输出误差最小化的耦接结构。此外,具有通过选择单元23选择的耦接结构的fpga可以被视为用作经优化的储备池的单个装置。例如,具有通过选择单元23选择的耦接结构的fpga可以是传送的目标等。
[处理流程]
将参照图3描述储备池设计处理的流程。图3是示出根据实施方式1的储备池设计处理的流程的流程图。首先,如图3所示,储备池计算机1的设计部20确定初始耦接结构(步骤s11)。n表示耦接结构的改变次数。此处,假设n=1。此外,设计部20可以通过与改变耦接结构相同的方法来确定初始耦接结构。
接下来,rc电路10学习(可以称为“执行训练”)输出层的输出权重(步骤s12)。具体地,更新单元12更新输出权重使得误差变小。然后,计算单元11利用学习已完成的输出层计算输出作为初始结果(步骤s13)。此后,储备池计算机1进行至耦接结构改变处理。
将参照图4描述耦接结构改变处理的流程。图4是示出根据实施方式1的耦接结构改变处理的流程的流程图。如图4所示,设计部20改变耦接结构(步骤s21)。例如,设计部20可以在预定约束条件下随机地改变耦接结构。
设计部20使n增加1(步骤s22)。然后,rc电路10学习(执行训练)输出层的输出权重(步骤s23)。此外,计算单元11利用学习已完成的输出层计算输出作为第n个结果(步骤s24)。
此处,n是预定的重复次数上限,例如为100。当不满足n>n时(步骤s25:否),设计部20进一步改变耦接结构(步骤s26)。然后,设计部20将n再增加1(步骤s22)。因此,储备池计算机1重复执行步骤s26、s22、s23和s24的处理直至n超过n。
当满足n>n时,设计部20对耦接结构进行评估并选择耦接结构(步骤s27)。例如,设计部20针对步骤s24中每个耦接结构,对最终输出与教师数据(即,训练数据)之间的误差进行评估,并且选择与具有最小误差的输出相对应的耦接结构。
[优点]
如上所述,计算单元11计算针对至神经网络的输入的输出,该神经网络包括储备池和输出层,储备池包括多个节点并且具有在多个节点之间的随机确定的耦接结构,输出层具有针对多个节点中的每个节点设置的权重。改变单元21改变在储备池中包括的多个节点之间的耦接结构。针对通过改变单元21改变的耦接结构中的每个耦接结构,更新单元12基于通过计算单元11计算的输出来更新输出层的权重。评估单元22根据预定标准对通过计算单元11计算的输出进行评估。选择单元23基于通过评估单元22获得的评估结果,从通过改变单元21改变的耦接结构中选择预定耦接结构。如上所描述的,储备池计算机1可以通过使用元启发式方法来优化储备池。因此,根据实施方式1可以有效地获得有用的储备池。
另外,储备池可以是现场可编程门阵列(fpga)。在这种情况下,改变单元21通过重写用作储备池的fpga来改变耦接结构。因此,可以取出并使用用作经优化的储备池的fpga。
改变单元21将耦接结构改变预定次数。评估单元22计算通过计算单元11计算的输出相对于预先准备的教师数据的误差作为评估结果。此外,选择单元23从通过改变单元21改变的耦接结构中选择具有最小误差的耦接结构。通过如上所描述的预先确定改变的次数,可以使用有限的时间和计算资源来优化储备池。
本发明解决了储备池计算的问题。如上所描述的,储备池计算是特殊类型的rnn。此处,将描述使用rnn的背景。
为了突破摩尔定律的限制,整个it行业都在寻找并非相关技术的冯·诺伊曼(vonneumann)型的新计算机架构。在从将花费数年时间来开发的机器例如量子计算到相对容易启动的机器例如fpga、gpu以及gpu的有效使用的范围内,通常提议非诺依曼型机器。所有这些非诺依曼型机器通过避免冯·诺依曼瓶颈有效地解决了特定领域中需要计算资源的问题。
机器学习可以被认为是与非诺依曼型机器结合的问题。特别是在当今的多层深度学习中,许多公司都在进行研发,因为需要许多计算资源。另外,随着深度学习的成功,研究机构和公司每天都在开发和改进新的机器学习模型。在这样的背景下,rnn被用作机器学习,特别适于处理时间序列数据。
[实施方式2]
在实施方式1中,如图4所示,执行耦接结构改变处理直至n>n的条件被满足。另一方面,在获得了使输出误差减小到一定程度的耦接结构的时间点,实施方式2的储备池设计系统终止耦接结构改变处理。
在实施方式2中,例如,针对通过改变单元21改变的耦接结构中的每个耦接结构,每当输出层的权重更新完成时,评估单元22计算通过计算单元11计算的输出相对于预先准备的教师数据的误差作为评估结果。此外,在误差等于或小于阈值时,选择单元23选择与该误差相对应的耦接结构。
将参照图5描述耦接结构改变处理的流程。图5是示出根据实施方式2的耦接结构改变处理的流程的流程图。如图5所示,设计部20改变耦接结构(步骤s31)。设计部20使n增加1(步骤s32)。然后,rc电路10学习输出层的输出权重(步骤s33)。计算单元11利用学习(训练)已完成的输出层计算输出作为第n个结果(步骤s34)。
[处理流程]
此处,设计部20评估输出与教师数据之间的误差是否小于阈值(步骤s35)。在误差不小于阈值时或当n小于n'时(步骤s35:否或n<n'(例如,n'为10)),设计部20进一步改变耦接结构(步骤s36)。然后,设计部20将n再增加1(步骤s32)。因此,储备池计算机1重复执行步骤s36、s32、s33和s34的处理。
在误差小于阈值并且n等于或大于n'时(步骤s35:是且n≥n'),设计部20选择该耦接结构(步骤s37)。例如,设计部20针对步骤s24中的每个耦接结构评估最终输出与教师数据之间的误差,并且选择与具有最小误差的输出相对应的耦接结构。
[优点]
针对通过改变单元21改变的耦接结构中的每个耦接结构,每当通过更新单元12进行的对输出层的权重的更新完成时,评估单元22计算通过计算单元11计算的输出相对于预先准备的教师数据的误差作为评估结果。此外,当误差等于或小于阈值时,选择单元23选择与该误差相对应的耦接结构。如上所述,由于能够在获得误差等于或小于阈值的储备池时完成处理,因此可以缩短优化储备池所需的时间。
[实施方式3]
在实施方式3中,储备池设计系统通过使用遗传算法来执行耦接结构改变处理。图6是用于说明遗传算法的图。如图6所示,首先,设计部20准备第一代的多个耦接结构。然后,设计部20对每个耦接结构进行评估,并通过使用具有较高评估结果的耦接结构来生成组合的配对和突变。当达到确定的代时,设计部20从该代的耦接结构中选择具有最小误差的耦接结构。
在实施方式3中,例如,改变单元21通过根据遗传算法对耦接结构进行组合和选择来生成每一代的耦接结构,使得通过将预先准备的多个耦接结构设置为第一代来改善通过评估单元22获得的评估结果。此外,选择单元23基于通过评估单元22获得的评估结果,从通过改变单元21生成的预定代的耦接结构中选择耦接结构。
例如,储备池计算机1在以下过程中通过遗传算法优化储备池。首先,储备池计算机1通过随机耦接生成多个储备池以将它们设置为第一代。然后,储备池计算机1学习第一代中的每个储备池、根据结果得到目标函数并对每个储备池的邻接矩阵进行评估。此处,目标函数可以是使误差最小化的函数或者是使学习效率最大化的函数。在本实施方式中,储备池计算机1具有固定数量的学习步骤,并且得到使误差最小化的目标函数。
接下来,储备池计算机1将评估高的邻接矩阵部分地组合以生成第二代的储备池。此外,储备池计算机1对第二代的储备池进行评估(对邻接矩阵进行评估),并根据结果选择评估高的储备池。
此后,储备池计算机1重复上述生成、组合和选择步骤以随机地将噪声作为突变给予邻接矩阵。例如,储备池计算机1通过将邻接矩阵的实数分量变成0或将0分量变成实数来给出噪声。
[处理流程]
将参照图7描述第一代的耦接结构改变处理的流程。图7是示出根据实施方式3的第一代的耦接结构改变处理的流程的流程图。首先,如图7所示,储备池计算机1的设计部20确定初始的耦接结构(步骤s41)。设计部20使n增加1(步骤s42)。接下来,rc电路10学习输出层的输出权重(步骤s43)。然后,计算单元11利用学习已完成的输出层计算输出作为初始结果(步骤s44)。
此处,当不满足n>l时(步骤s45:否),设计部20进一步随机改变耦接结构(步骤s46)。然后,设计部20将n再增加1(步骤s42)。因此,储备池计算机1重复执行步骤s46、s43和s44的处理直至n超过l。l是每一代的耦接结构的数量的预定上限。另外,将n的初始值设置为0。当满足n>l时(步骤s45:是),储备池计算机1进行至第二代的耦接结构改变处理。
将参照图8描述第k代的耦接结构改变处理的流程。图8是示出根据实施方式3的第k代的耦接结构改变处理的流程的流程图。k是2或大于2的整数。首先,如图8所示,储备池计算机1的设计部20根据遗传算法改变耦接结构(步骤s51)。此处,设计部20通过组合和配对第k-1代的耦接结构来进行改变。
设计部20将n增加1(步骤s52)。接下来,rc电路10学习输出层的输出权重(步骤s53)。然后,计算单元11利用学习已完成的输出层计算输出作为初始结果(步骤s54)。
此处,当不满足n>l时(步骤s55:否),设计部20根据遗传算法改变耦接结构(步骤s56)。此处,设计部20除了对第k-1代的耦接结构进行配对组合外,还通过产生突变来进行改变。
然后,设计部20将n再增加1(步骤s52)。因此,储备池计算机1重复执行步骤s56、s53和s54的处理直至n超过l。当满足n>l时(步骤s55:是),设计部20在最新一代的耦接结构之中选择较高等级的耦接结构(步骤s57)。此外,储备池计算机1进行第k 1代的耦接结构改变处理。
另外,随着代的进行l可能变小。因此,获得的耦接结构的数量随着代的进行而减少,并且最终可以从少量的耦接结构中选择最佳的耦接结构。
[优点]
改变单元21通过根据遗传算法对耦接结构进行组合和选择来生成每一代的耦接结构,从而通过将预先准备的多个耦接结构设置为第一代来改善通过评估单元22获得的评估结果。此外,选择单元23基于通过评估单元22获得的评估结果,从通过改变单元21生成的预定代的耦接结构中选择耦接结构。通过使用如上所描述的遗传算法,与随机改变耦接结构的情况相比,可以获得更好的储备池。
图9示出了实验结果。在图9的示例中,储备池计算机1生成10个储备池作为第一代(l=10)。用于评估第一代储备池的目标函数(误差)的最小值为0.1773,平均值为0.1862。作为通过遗传算法重复50代的结果,储备池计算机1能够生成获得0.1673的误差值的储备池。
[系统]
除非另有指定,否则可以以任何方式改变在所附说明书和附图中指示的处理过程、控制过程、具体名称以及包括各种数据和参数的信息。在实施方式中描述的具体示例、分布、数值等仅是示例,并且可以以任何方式改变。
此外,附图中所示的各个装置的组成元件是功能上的概念性元件,并且不希望如附图中所示对其进行物理配置。即,各个装置的分布和集成的具体形式不限于附图中所示的那些形式。换句话说,取决于各种负载、使用状况等,装置中的全部或部分可以被配置成在功能上或物理上以任何单元分布或集成。此外,由各个装置执行的处理功能的全部或任何部分可以由中央处理单元(cpu)以及要由cpu分析和执行的程序来实现,或者可以通过有线逻辑实现为硬件。
用于解决组合优化问题的元启发式方法以及遗传算法可以用于优化储备池。例如,可以通过退火方法等来优化储备池。
[硬件]
图10是用于描述硬件配置示例的图。如图10所示,储备池计算机1包括通信接口10a、硬盘驱动器(hdd)10b、存储器10c和处理器10d。另外,在图10中示出的各个单元通过总线等彼此耦接。
通信接口10a是网络接口卡等,并且与其他服务器进行通信。hdd10b存储用于操作图2中示出的功能的程序或数据库(db)。
处理器10d是硬件电路,该硬件电路从hdd10b等读取用于执行与图2中示出的每个处理单元相同的处理的程序,并将该程序加载至存储器10c以对执行图2等中所描述的每个功能的处理进行操作。即,该处理执行与储备池计算机1中包括的每个处理单元相同的功能。具体地,处理器10d从hdd10b等中读取具有与计算单元11、更新单元12、改变单元21、评估单元22和选择单元23相同的功能的程序。然后,处理器10d执行用于执行与计算单元11、更新单元12、改变单元21、评估单元22、选择单元23等相同的处理的处理。
如上所描述的,作为读取和执行程序的结果,储备池计算机1操作为执行学习方的信息处理装置。此外,储备池计算机1还可以通过由介质读取装置从记录介质中读取程序并执行所读取的程序来实现与上述实施方式相同的功能。另外,在其他实施方式中描述的程序不限于由储备池计算机1执行的程序。例如,本发明也可以类似地应用于其他计算机或服务器执行程序的情况以及其他计算机和服务器彼此协作地执行程序的情况。
该程序可以经由网络例如因特网分发。另外,该程序可以记录在计算机可读记录介质例如硬盘、软盘(fd)、致密盘只读存储器(cd-rom)、磁光盘(mo)或者数字多功能盘(dvd)上,并且可以在从记录介质读取之后由计算机执行。
[引用列表]
[专利文献]
日本公开特许公报第2018-180701号。
国际公布小册子第wo2016/194248号。
[附图标记列表]
1储备池计算机
10rc电路
11计算单元
12更新单元
13供应单元
20设计部
21改变单元
22评估单元
23选择单元
1.一种储备池计算机,包括:
处理器电路,其被配置成:
执行计算处理,所述计算处理被配置成计算针对至神经网络的输入的输出,所述神经网络包括储备池和输出层,所述储备池包括多个节点并且具有在所述多个节点之间的随机确定的耦接结构,所述输出层具有针对所述多个节点中的每个节点设置的权重;
执行改变处理,所述改变处理被配置成改变在所述储备池中包括的所述多个节点之间的所述耦接结构;
执行更新处理,所述更新处理被配置成针对通过所述改变处理改变的耦接结构中的每个耦接结构,基于通过所述计算处理计算的所述输出来更新所述输出层的所述权重;
执行评估处理,所述评估处理被配置成根据预定准则对通过所述计算处理计算的所述输出进行评估;以及
执行选择处理,所述选择处理被配置成基于通过所述评估处理获得的评估结果,从通过所述改变处理改变的耦接结构中选择预定耦接结构。
2.根据权利要求1所述的储备池计算机,其中,
所述改变处理被配置成将所述耦接结构改变预定次数,
所述评估处理被配置成计算通过所述计算处理计算的所述输出的误差作为所述评估结果,所述输出的所述误差是所述输出与预先准备的训练数据之间的差,以及
所述选择处理被配置成从通过所述改变处理改变的耦接结构中选择具有最小误差的耦接结构。
3.根据权利要求1所述的储备池计算机,其中,
所述评估处理被配置成针对通过所述改变处理改变的耦接结构中的每个耦接结构,每当通过所述更新处理进行的所述输出层的所述权重的更新完成时,计算所述输出的误差作为评估结果,所述输出的所述误差是所述输出与预先准备的训练数据之间的差,
所述选择处理被配置成在所述误差等于或小于阈值时选择与所述误差相对应的耦接结构。
4.根据权利要求1所述的储备池计算机,其中,
所述改变处理被配置成通过根据遗传算法对耦接结构进行组合和选择来生成每一代的耦接结构,使得通过将预先准备的多个耦接结构设置为第一代来改善通过所述评估处理获得的评估结果,以及
所述选择处理被配置成基于通过所述评估处理获得的所述评估结果,从通过所述改变处理生成的预定代的耦接结构中选择耦接结构。
5.根据权利要求1所述的储备池计算机,其中,
所述储备池是现场可编程门阵列fpga,
所述改变处理被配置成通过重写用作所述储备池的所述fpga来改变所述耦接结构。
6.一种由计算机执行的储备池设计方法,所述计算机被配置成控制包括储备池和输出层的神经网络,所述储备池包括多个节点并且具有在所述多个节点之间的随机确定的耦接结构,所述输出层具有针对所述多个节点中的每个节点设置的权重,所述方法包括:
改变在所述储备池中包括的所述多个节点之间的所述耦接结构;
计算针对至所述神经网络的输入的输出;
针对通过所述改变而改变的耦接结构中的每个耦接结构,基于所述输出来更新所述输出层的所述权重;
根据预定标准对所述输出进行评估;以及
基于通过所述评估获得的评估结果,从通过所述改变而改变的耦接结构中选择预定耦接结构。
7.根据权利要求6所述的储备池设计方法,其中,
所述改变处理被配置成将所述耦接结构改变预定次数,
所述评估处理被配置成计算通过所述计算处理计算的所述输出的误差作为所述评估结果,所述输出的所述误差是所述输出与预先准备的训练数据之间的差,以及
所述选择处理被配置成从通过所述改变处理改变的耦接结构中选择具有最小误差的耦接结构。
8.根据权利要求6所述的储备池设计方法,其中,
所述评估处理被配置成针对通过所述改变处理改变的耦接结构中的每个耦接结构,每当通过所述更新处理进行的所述输出层的所述权重的更新完成时,计算所述输出的误差作为评估结果,所述输出的所述误差是所述输出与预先准备的训练数据之间的差,
所述选择处理被配置成在所述误差等于或小于阈值时选择与所述误差相对应的耦接结构。
9.根据权利要求6所述的储备池设计方法,其中,
所述改变处理被配置成通过根据遗传算法对耦接结构进行组合和选择来生成每一代的耦接结构,使得通过将预先准备的多个耦接结构设置为第一代来改善通过所述评估处理获得的评估结果,以及
所述选择处理被配置成基于通过所述评估处理获得的所述评估结果,从通过所述改变处理生成的预定代的耦接结构中选择耦接结构。
10.根据权利要求6所述的储备池设计方法,其中,
所述储备池是现场可编程门阵列fpga,
所述改变处理被配置成通过重写用作所述储备池的所述fpga来改变所述耦接结构。
11.一种非暂态计算机可读存储介质,用于存储使计算机的处理器执行处理的储备池设计程序,所述计算机被配置成控制包括储备池和输出层的神经网络,所述储备池包括多个节点并且具有在所述多个节点之间的随机确定的耦接结构,所述输出层具有针对所述多个节点中的每个节点设置的权重,所述处理包括:
改变在所述储备池中包括的所述多个节点之间的所述耦接结构;
基于针对至所述神经网络的输入的输出,针对通过所述改变而改变的耦接结构中的每个耦接结构来更新所述输出层的所述权重;
根据预定标准对所述输出进行评估;以及
基于通过所述评估获得的评估结果,从通过所述改变而改变的耦接结构中选择预定耦接结构。
12.根据权利要求11所述的非暂态计算机可读存储介质,其中,
所述改变处理被配置成将所述耦接结构改变预定次数,
所述评估处理被配置成计算通过所述计算处理计算的所述输出的误差作为所述评估结果,所述输出的所述误差是所述输出与预先准备的训练数据之间的差,以及
所述选择处理被配置成从通过所述改变处理改变的耦接结构中选择具有最小误差的耦接结构。
13.根据权利要求11所述的非暂态计算机可读存储介质,其中,
所述评估处理被配置成针对通过所述改变处理改变的耦接结构中的每个耦接结构,每当通过所述更新处理进行的所述输出层的所述权重的更新完成时,计算所述输出的误差作为评估结果,所述输出的所述误差是所述输出与预先准备的训练数据之间的差,
所述选择处理被配置成在所述误差等于或小于阈值时选择与所述误差相对应的耦接结构。
14.根据权利要求11所述的非暂态计算机可读存储介质,其中,
所述改变处理被配置成通过根据遗传算法对耦接结构进行组合和选择来生成每一代的耦接结构,使得通过将预先准备的多个耦接结构设置为第一代来改善通过所述评估处理获得的评估结果,以及
所述选择处理被配置成基于通过所述评估处理获得的所述评估结果,从通过所述改变处理生成的预定代的耦接结构中选择耦接结构。
15.根据权利要求11所述的非暂态计算机可读存储介质,其中,
所述储备池是现场可编程门阵列fpga,
所述改变处理被配置成通过重写用作所述储备池的所述fpga来改变所述耦接结构。
技术总结