用于解码具有连续突触可塑性的脉冲储层的系统和方法与流程

文档序号:14400842阅读:177来源:国知局
相关申请的交叉引用这是2015年3月18日在美国提交的标题为“amethodfordecodingspikingreservoirwithcontinuoussynapticplasticity”的美国第62/134957号临时申请的非临时专利申请,以引证的方式将该申请的全文并入于此。
背景技术
::(1)
技术领域
:本发明涉及一种用于解码由脉冲(spike)神经元组成的脉冲储层(reservoir)的系统,更具体地,涉及一种用于即使在脉冲储层具有连续突触可塑性时也解码脉冲储层的系统。(2)相关技术的描述很可能因为前馈回路中的计算更容易分析,所以由大脑启示的大多数计算模型聚焦于前馈回路中的计算(如所并入的参考文献的列表中的第1号和第2号参考文献所述)。然而,已知大脑中的回路通过存在若干空间尺度上的反馈连接而循环(参见第5号参考文献)。近来,采用一种以下的新思想:可以在大脑回路中观察到神经系统的丰富动力学,而不是将动力学限于具有特定特性(诸如纯前馈架构)。这些努力产生液体状态机(第3号参考文献中描述)和回声状态网络(第4号参考文献中描述)。然而,这些仅可以应用于激发率模型。由此,持续需要可以辨别来自具有连续可塑性的脉冲储层网络的脉冲输出神经元且可以允许在测试图案之间的无人监督辨别的系统。技术实现要素:本发明涉及一种用于解码由脉冲神经元组成的脉冲储层的系统,更具体地,涉及一种用于即使在脉冲储层具有连续突触可塑性时也解码脉冲储层的系统。该系统包括:一个或更多个处理器和存储器,该存储器具有指令,使得在执行指令时,一个或更多个处理器执行多个操作。该系统使用一组训练图案来训练具有由脉冲神经元组成的脉冲储层的神经网络。针对一组测试图案p估计测试图案持续时间d。每个测试图案被呈现给脉冲储层d/p秒持续时间。经由一组读出神经元生成来自脉冲储层的输出脉冲。测量输出脉冲,产生多个测量结果,并且使用多个测量结果来计算激发率代码,每个激发率代码对应于一组测试图案p中的测试图案。激发率代码用于通过计算辨别一组测试图案p中的测试图案的辨别力指标(di)来解码神经网络的性能。在另一个方面中,神经网络展示连续可塑性。在另一个方面中,该系统执行以下操作:针对每个测试图案p计算神经网络中的汇聚(sink)神经元i的激发率作为持续时间d期间的输出脉冲的总数;从神经网络中的针对测试图案p的所有汇聚神经元的激发率估计最大激发率以及使用和计算针对每个测试图案p的激发率代码。在另一个方面中,di是可分性度量ε与唯一性度量γ的乘积,其中,可分性度量被定义为用于一组测试图案p的激发率代码的分离程度的度量,并且其中,唯一性度量被定义为相对于唯一激发率代码的最大可能数量由神经网络产生的唯一激发率代码的数量。在另一个方面中,可分性度量根据以下公式来计算:其中,dintra被定义为从针对同一测试图案由神经网络生成的所有可能唯一对激发率代码计算的激发率代码之间的平均成对距离,并且dinter被定义为从针对一组测试图案p由神经网络生成的所有可能唯一对激发率代码计算的激发率代码之间的平均成对距离。在另一个方面中,唯一性度量根据以下公式来计算:其中,#s表示针对一组测试图案p的唯一激发率代码的总数。在另一个方面中,一组测试图案p是来自在交通工具周围获得的图像的输入图案,其中,一组测试图案p用于在自主驾驶时辅助交通工具。在另一个方面中,向神经网络提供输入信号,神经网络具有由已训练的脉冲神经元组成的脉冲储层。脉冲神经元通过以下操作来训练:向脉冲储层呈现一组测试图案中的每个测试图案;经由一组读出神经元生成来自脉冲储层的输出脉冲;测量输出脉冲,产生多个测量结果,并且使用多个测量结果来计算激发率代码,每个激发率代码对应于一组测试图案p中的测试图案。通过计算辨别一组测试图案p中的测试图案的辨别力指标(di)使用激发率代码来确定神经网络的性能。从神经网络获得响应于输入信号产生的读出代码,并且基于读出代码识别输入信号的分量。在另一个方面中,本发明还包括一种用于使得处理器执行这里所述的操作的方法。最后,在又一个方面中,本发明还包括一种计算机程序产品,该计算机程序产品包括存储在非暂时性计算机可读介质上的计算机可读指令,这些指令可由具有处理器的计算机执行,以便使得处理器执行这里所述的操作。附图说明本发明的目的、特征以及优点将从本发明的各种方面的以下具体描述连同对以下附图的参照清楚,附图中:图1是描绘了根据本公开的一些实施方式的用于解码脉冲储层的系统的组件的框图;图2是根据本公开的一些实施方式的计算机程序产品的例示;图3是例示了根据本公开的一些实施方式的用于解码脉冲储层的处理的流程图;图4a是根据本公开的一些实施方式的示例输入和对应激发率分布的例示;图4b是根据本公开的一些实施方式的用于两个不同输入图案的激发率代码的例示;图5a是根据本公开的一些实施方式的用于第一示例的辨别性指标(di)计算的例示;图5b是根据本公开的一些实施方式的用于第二示例的di计算的例示;图6a是根据本公开的一些实施方式的用于网络的训练图案的例示;图6b是根据本公开的一些实施方式的在各种测试阶段期间来自网络的读出代码的例示;图6c是根据本公开的一些实施方式的可分性度量和唯一性度量的例示;以及图6d是根据本公开的一些实施方式的用于测试图案的di的例示。具体实施方式本发明涉及一种用于解码由脉冲神经元组成的脉冲储层的系统,更具体地,涉及一种用于即使在脉冲储层具有连续突触可塑性时也解码脉冲储层的系统。以下描述被提出以使得本领域普通技术人员能够进行并使用本发明,并且将本发明并入在特定应用的语境中。各种修改以及在不同应用中的各种用途对本领域技术人员将容易理解,并且这里所定义的一般原理可以应用于宽范围的方面。由此,本发明不旨在限于这里提出的方面,而是符合与这里所公开的原理和新型特征一致的最宽范围。在以下详细描述中,为了提供本发明的更彻底理解,阐述了大量具体细节。然而,对本领域技术人员显而易见的是,本发明可以在不必限于这些具体细节的情况下实践。在其它情况下,为了避免使本发明模糊,以框图形式而不是详细地示出公知结构和装置。读者的注意力被引导到与本说明书同时提交的所有文件和文档上,文件和文档与本说明书一起对公众审查开放,并且在此以引证的方式将所有这种文件和文档的内容并入。在本说明书中公开的所有特征(包括任意所附权利要求、摘要以及附图)可由用于相同、等效或类似目的的另选特征来替换,除非另外明确陈述。由此,除非另外明确陈述,所公开的每个特征仅是通用的一系列等效或类似特征的一个示例。此外,未明确陈述用于执行指定功能的“装置”或用于执行具体功能的“步骤”的权利要求中的任何元素不被解释为如在35u.s.c第112节第6段中指定的“装置”或“步骤”条款。具体地,这里权利要求中“的步骤”或“的动作”的使用不旨在调用35u.s.c第112节第6段中的规定。在详细描述本发明之前,首先提供所引用参考文献的列表。接着,提供本发明的各种主要方面的描述。最后,提供本发明的具体细节,以给出具体方面的理解。(1)所并入参考文献的列表贯穿本申请引用以下参考文献。为了清晰和方便起见,参考文献在这里被列出为用于读者的中央资源。在此以引证的方式将以下参考文献并入,仿佛这里完全阐述一样。本申请中通过参考对应的参考文献号来引用参考文献。1.krizhevsky,a.,sutskever,i.,&hinton,g.e.(2012).imagenetclassificationwithdeepconvolutionalneuralnetworks.inadvancesinneuralinformationprocessingsystems,1097-1105.2.hinton,g.e.,salakhutdinov,r.r.(2006).reducingthedimensionalityofdatawithneuralnetworks.science,313,5786:504–507.3.maass,w.,natscchlager,t.,&markram,h.(2002).real-timecomputingwithoutstablestates:anewframeworkforneuralcomputationbasedonperturbation,neuralcomputation,14,11:2531-2560.4.jaeger,h.andhaas,h.(2004).harnessingnonlinearity:predictingchaoticsystemsandsavingenergyinwirelesscommunications.science,304:78-90.5.langton,c.g.(1990).computationattheedgeofchaos,physicad,42:12-37.6.srinivasa,n.andcho,y.k.(2014).unsuperviseddiscriminationofpatternsinspikingneuralnetworkswithexcitatoryandinhibitorysynapticplasticity.frontiersincomputationalneuroscience,8,159:1-23.7.churchland,m.m,,yub.m.,cunningham,j.p.,sugrue,l.p.,cohenm.r.,etal.(2010).stimulusonsetquenchesneuralvariability:awidespreadcorticalphenomenon.natureneuroscience,13,369–78.8.eden,u.t.andkramer,m.a.(2010).drawinginferencesfromfanofactorcalculations,journalofneurosciencemethods,190,149-152.9.ratnam,r.andnelson,m.e.(2000).nonrenewalstatisticsofelectrosensoryafferentspiketrains:implicationsforthedetectionofweaksensorysignals.journalofneuroscience,20,6672-6683.10.chacron,m.j.,longtin,a.,andmalerl.(2001).negativeinterspikeintervalcorrelationsincreasetheneuronalcapacityforencodingtime-varyingstimuli.journalofneuroscience,21,5328-5343.11.mclachlan,g.j.(2004).discriminantanalysisandstatisticalpatternrecognition.wileyinterscience.12.kanerva,p.(1988).sparsedistributedmemory.mitpresscambridge,ma.(2)主要方面本发明具有三个“主要”方面。第一方面是用于解码脉冲储层的系统。该系统通常为运行软件的计算机系统的形式或“硬编码”指令集的形式。该系统可以并入提供不同功能的广泛多种装置。第二主要方面是通常为使用数据处理系统(计算机)运行的软件形式的方法。第三主要方面为计算机程序产品。计算机程序产品通常表示存储在非暂时性计算机可读介质(诸如光存储装置(例如,光盘(cd)或数字通用光盘(dvd))或磁存储装置(诸如软盘或磁带))上的计算机可读指令。计算机可读介质的其它非限制性示例包括硬盘、只读存储器(rom)以及闪存。下面将更详细地描述这些方面。图1中提供了描绘本发明的系统(即,计算机系统100)的示例的框图。计算机系统100被配置为执行与程序或算法关联的计算、处理、运行和/或功能。在一个方面中,这里讨论的特定处理和步骤被实现为一系列指令(例如,软件程序),该系列指令驻留在计算机可读存储单元内,并且由计算机系统100的一个或更多个处理器来执行。在被执行时,指令使得计算机系统100执行诸如这里所述的具体动作并展示具体行为。计算机系统100可以包括被配置为传达信息的地址/数据总线102。另外,诸如处理器104的一个或更多个数据处理单元与地址/数据总线102耦接。处理器104被配置为处理信息和指令。在一个方面中,处理器104是微处理器。另选地,处理器104可以为不同类型的处理器(诸如并行处理器、专用集成电路(asic)、可编程逻辑阵列(pla)、复杂可编程逻辑装置(cpld)或现场可编程门阵列(fpga))。计算机系统100被配置为使用一个或更多个数据存储单元。计算机系统100可以包括与地址/数据总线102耦接的易失性存储单元106(例如,随机存取存储器(“ram”)、静态ram、动态ram等),其中,易失性存储单元106被配置为存储用于处理器104的信息和指令。计算机系统100还可以包括与地址/数据总线102耦接的非易失性存储单元108(例如,只读存储器(“rom”)、可编程rom(“prom”)、可擦可编程rom(“eprom”)、电可擦可编程rom(“eeprom”)、闪存等),其中,非易失性存储单元108被配置为存储用于处理器104的静态信息和指令。另选地,计算机系统100可以执行从在线数据存储单元(诸如“云”计算中)检索的指令。在一个方面中,计算机系统100还可以包括与地址/数据总线102耦接的一个或更多个接口(诸如接口110)。一个或更多个接口被配置为使得计算机系统100能够与其它电子装置和计算机系统连接。由一个或更多个接口实现的通信接口可以包括有线通信技术(例如,串行电缆、调制解调器、网络适配器等)和/或无线通信技术(例如,无线调制解调器、无线网络适配器等)。在一个方面中,计算机系统100可以包括与地址/数据总线102耦接的输入装置112,其中,输入装置112被配置为向处理器100传达信息和命令选择。根据一个方面,输入装置112为可以包括字母数字和/或功能键的字母数字输入装置(诸如键盘)。另选地,输入装置112可以为除了字母数字输入装置之外的输入装置。例如,输入装置112可以包括一个或更多个传感器(诸如用于视频或静态图像的相机、麦克风或神经元传感器)。其它示例输入装置112可以包括加速度计、gps传感器或陀螺仪。在一个方面中,计算机系统100可以包括与地址/数据总线102耦接的光标控制装置114,其中,光标控制装置114被配置为向处理器100传达用户输入信息和/或命令选择。在一个方面中,光标控制装置114使用诸如鼠标、追踪球、追踪垫、光学追踪装置或触摸屏的装置来实现。尽管有上述情况,但在一个方面中,光标控制装置114还经由来自输入装置112的输入(诸如响应于特定键和与输入装置112关联的键序列命令的使用)来引导和/或启动。在另选方面中,光标控制装置114被配置为由语音命令来引导或指导。在一个方面中,计算机系统100还可以包括与地址/数据总线102耦接的一个或更多个可选计算机可用数据存储装置(诸如存储装置116)。存储装置116被配置为存储信息和/或计算机可执行指令。在一个方面中,存储装置116是诸如磁或光盘驱动器(例如,硬盘驱动器(“hdd”)、软盘、光盘只读存储器(“cd-rom”)、数字通用光盘(“dvd”))的存储装置。依照一个方面,显示装置118与地址/数据总线102耦接,其中,显示装置118被配置为显示视频和/或图形。在一个方面中,显示装置118可以包括阴极射线管(“crt”)、液晶显示器(“lcd”)、场发射显示器(“fed”)、等离子体显示器或适于显示用户可识别的视频和/或图形图像以及字母数字字符的任意其它显示装置。这里提出的计算机系统100是根据一个方面的示例计算环境。然而,计算机系统100的非限制性示例不严格限于计算机系统。例如,一个方面提供了计算机系统100表示可以根据这里描述的各种方面使用的一种数据处理分析。而且,还可以实现其它计算系统。实际上,本技术的精神和范围不限于任何单个数据处理环境。由此,在一个方面中,本技术的各种方面的一个或更多个操作使用由计算机执行的计算机可执行指令(诸如程序模块)来控制或实现。在一种实现中,这种程序模块包括被配置为执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件和/或数据结构。另外,一个方面提供了本技术的一个或更多个方面通过使用一个或更多个分布式计算环境(诸如任务由借助通信网络连接的远程处理装置来执行的环境或诸如各种程序模块位于包括存储储存装置的本地和远程计算机存储介质中的环境)来实现。图2中描绘了具体实施本发明的计算机程序产品(即,存储装置)的例示图。计算机程序产品被描绘为软盘200或光盘202(诸如cd或dvd)。然而,如之前提及的,计算机程序产品通常表示存储在任意可兼容非暂时性计算机可读介质上的计算机可读指令。如关于本发明使用的术语“指令”通常指示在计算机上执行的一组运算,并且可以表示整个程序段或独立、单独的软件模块。“指令”的非限制性示例包括计算机程序代码(源码或目标码)和“硬编码”电子器件(即,被编码到计算机芯片中的计算机运算)。“指令”存储在任意非暂时性计算机可读介质上(诸如在计算机的存储器中或在软盘、cd-rom以及闪存盘上)。无论在哪一种情况下,指令被编码在非暂时性计算机可读介质上。(3)本发明的具体细节描述了解码由具有脉冲定时依赖可塑性的脉冲神经元组成的储层的系统和方法。该系统在实现该方法时,使得能够使用分布式代码进行从连续输出的无人监督解码。与常用的基于胜者优先线性读出的解码器不同,本发明包括甚至在储层具有连续突触可塑性时也启用从储层的无人监督学习的信息理论启示的分布式读出代码。在本发明中,储层含有加扰信息(即,人无法理解的信息)。根据本公开的实施方式的解码器将加扰信息转换成人可理解的形式。分布式代码还使得根据本公开的一些实施方式的方法与其它解码器相比更可扩展,同时其无人监督性质允许在循环中不需要人的情况下自主辨别。本发明的一些实施方式解决来自之前方法的两个缺陷中的一个或更多个。第一个缺陷是根据本公开的一些实施方式的解码器可以辨别来自具有连续可塑性的脉冲储层网络的脉冲输出神经元。另外,解码器可以允许测试图案之间的无人监督辨别,由此扩大可能的现实世界自主应用在不通过人标记数据的情况下的范围。图3中示出了本循环网络的基础网络架构的操作,图3示出了根据本公开的一些实施方式的解码过程。储层网络中的神经元之间的突触连接遵守脉冲定时依赖可塑性(stdp)。stdp在训练数据呈现期间基于突触前脉冲和突触后脉冲的定时修改网络连接(参见第6号参考文献)。如图3所示,过程开始300使用具有p个测试图案的给定测试组测试循环(recurrent)神经网络。在第一操作302中,为了训练目的呈现训练图案。使用训练图案,在第二操作304中训练循环网络。在第三操作306中,使用下面进一步详细描述的过程针对给定测试组估计测试图案持续时间d。在第四操作308中,在将来自测试组的每个测试输入首先编码成连续脉冲序列之后,向储层呈现每个测试输入。每个图案在d秒的总持续时间内一次一个地被馈送到储层,使得每个测试图案被呈现d/p秒持续时间。经由读出神经元从储层生成所得到的输出脉冲。在第五操作310中,测量用于读出神经元的输出脉冲。如下面进一步详细描述的,来自这些读出神经元的脉冲被转换成新激发率代码,使得在第六操作312中提取针对读出图案的激发率代码。在第七操作314中,确定是否还存在任何更多测试图案。如果是,那么向储层呈现任意另外图案(第四操作308)。如果否,那么在第八操作316中,使用来自所有测试图案的激发率代码,以即使网络展示连续可塑性,也使用新辨别力指标解码网络性能,该辨别力指标提供如何相互辨别输入测试图案的度量。(3.1)输入图像编码和噪声注入图4a描绘了示例输入和对应的激发率分布,并且图4b例示了用于两个不同输入图案的激发率代码。如图所示,为一维(1d)向量形式的每个输入图案400由如下的编码过程转换成脉冲计数402(或序列)。使用泊松(poisson)过程对网络404的输入层中的神经元建模,并且每个神经元从向量的一个分量接收输入,使得测试输入分量的最大值被分配有平均激发率f=90赫兹(hz)。与最大激发率成比例地线性缩放剩余输入。具体地,网络404的顶部椭圆是输入层,中间椭圆表示储层,并且底部椭圆表示输出层。左下角椭圆表示读出解码器。基于泊松统计生成脉冲编码过程。假定用于给定输入向量分量的采样率dt和平均激发率fhz,每l/dt个样本生成f个脉冲。由此,在用于fhz下的给定输入向量分量激发的每个时间步幅(step)处形成脉冲的概率为f*dt。基于每个源层神经元处形成脉冲的概率,针对每个输入向量分量生成脉冲序列(即,脉冲的序列)。在本公开的实施方式中,对于所有仿真,dt=1ms。(3.2)训练和测试期间的输入图案呈现训练过程由在从具有平均值的指数分布抽出的持续时间内以随机顺序呈现训练组中的每个输入图案(元素302)构成。在本公开的实施方式中,平均值被选择为30毫秒(ms)。以常规间隔(例如,每隔10秒)测试网络404以用于辨别力,在常规间隔内,关闭网络404中的突触可塑性。如下面描述的,在测试过程期间每d秒以固定顺序呈现每个输入图案400(元素308),然后基于所生成的激发率代码计算辨别力指标(元素316)。下面还描述了估计d的过程。(3.3)用于读出神经元的激发率代码在一些实施方式中,对于一些操作阶段,仅在测试阶段期间评估用于读出神经元的激发率代码406,在测试阶段期间,针对p个图案的d*p秒的总持续时间,来自训练组的每个输入图案400被呈现给网络404d秒的持续时间(元素308)。每个输入向量分量模拟源层中的一个神经元。源神经元如上所述且如图4a和图4b所示的被建模为泊松脉冲源。对于每个测试图案p,可以计算网络404的第3层中的汇聚神经元i的激发率(元素312),作为在d秒持续时间期间发出的脉冲的总数(元素402)。然后针对该测试图案p从所有汇聚神经元的激发率估计最大激发率针对图案p的长度m的激发率向量sp由分量组成。对于每个汇聚层,神经元i可以被计算为:向量sp被称为激发率代码406,并且在该实施方式中,因为每个汇聚神经元对于给定输入图案p可能具有三个可能状态,所以尝试三进制激发率代码(即,c=3)406。可以使用其它编码级(诸如二进制(c=2)或四进制(c=4)代码406)。(3.4)估计用于测试的d激发率代码406s和辨别力指标的估计取决于每个测试图案呈现的持续时间d(元素316)。为了估计适当持续时间d,通过评定脉冲计数402的差异性与持续时间d之间的关系从由读出神经元生成的脉冲计算法诺(fano)因子(在第7号和第8号参考文献中描述)。法诺因子(ff)被定义为在时间窗中观察到的脉冲计数402的样本方差与样本均值的比率,并且估计器的质量强烈依赖于窗口的长度。ff测量噪信比,因此在试验时特征化神经差异性。例如,对于泊松过程,方差等于任意长度的时间窗的平均脉冲计数。如果ff在d的某一值处具有最小值,则因为激发率代码406在该值处将是鲁棒的,所以这可以为d的最佳值(例如,参见第9号和第10号参考文献)。在根据本公开的一些实施方式的系统中,如下针对各种持续时间d计算ff。首先针对m个读出神经元中的每一个分别收集被呈现所选d的持续时间的每个测试图案的脉冲(元素310)。针对t(在一个实施方式中t=100)个试验重复这一点,以收集一组m*t个脉冲计数402值。然后从这些值计算脉冲计数402中的平均值和方差。所计算的方差与平均值的比率给出针对所选d和所选测试图案的ff。对于所有剩余p-1个测试图案重复该过程,并且所得到的平均ff用作针对给定持续时间d的ff。(3.5)辨别力指标计算在学习过程期间,当呈现输入图案400时,可以如上所述的在用于向源层呈现的每个图案p的汇聚层处计算激发率代码sp。三进制激发率代码406随着网络404被呈现有更多输入而变化。这暗示三进制激发率代码406无法直接用于可靠地分离一个图案与另一个。然而,在一些图案呈现之后,网络404辨别图案的能力变得稳定可靠。为了验证这一点,如下计算辨别力指标(di)(元素316)。每隔一定时间(例如,在一个实施方式中为每隔10s一次),停止网络404,以调查网络404的状态。在该过程期间,冻结突触权重,并且在每个持续时间d内呈现每个图案j次。对于给定图案p,针对p的j次呈现中的每一个计算激发率代码sp。对于给定图案p选择原型激发率代码,作为在所生成的j个代码中重复最多的代码。如果没有重复,则随机选择j个代码中的一个作为原型。针对每个图案重复该过程,以识别用于每个输入图案的原型激发率代码。使用原型激发率代码,计算图案间距离(dinter)。dinter被定义为从针对给定测试组由网络生成的原型读出代码的所有可能唯一对计算的原型读出代码之间的平均成对距离。为了计算dinter,根据以下公式计算用于两个输入图案p和q且用于每个汇聚神经元i的一对s激发率代码之间的距离然后通过跨所有测试图案p使用用于每个汇聚神经元i的每一对输入图案p和q的将距离dinter,i计算为:用于读出代码的dinter,i的最大值可以如下来估计。假定汇聚层处的三进制读出代码(或激发率代码)(即,c=3)且假定p为奇数,在读出与用于p个输入图案中的三分之一的“0”、用于输入的另一个三分之一的“1”以及用于剩余三分之一的“2”是等概率的时,获得每个汇聚层神经元i处的读出代码之间的最大成对距离。分子(方程式3)的理论最大值可以被计算为p*p/3,由此,dmaxinter可以被计算为2p/(3*(p-1))。如果p为偶数,则dmaxinter可以被类似地计算为2(p+1)/3*p。类似地,对于二进制代码(例如,c=2),dmaxinter在p为奇数时可以被计算为(p+1)/(2*p),并且在p为偶数时可以被计算为2p/(3*(p-1))。由此,对于c为偶数的一般情况,dmaxinter,i可以如下来计算:类似地,对于c为奇数的一般情况,dmaxinter,i可以被表达为:用于图案间距离dinter的表达式就dinter,i而言可以被写为:通过将来自方程式4或方程式5的dmaxinter,i(这分别取决于c为偶数还是奇数)代入方程式6中,可以计算dinter的理论最大值。例如,如果c是偶数,则dinter在p为奇数时将为pm(c-1)/(c(p-1)),并且在p为偶数时将为(p+1)m(c-1)/cp。由此,如果m=8、c=2且p=15,则dinter的理论最大值将为4.28。还应注意,dinter的理论最大值随着m线性增长。用于dinter的理论最大值将充当在学习期间用于给定一组参数的上界。这是因为在网络中存在阻碍由网络进行读出代码的等概率分布的噪声。图案内距离(dintra)也通过在每d秒内呈现同一图案j次来计算。dintra被定义为从针对同一输入图案由网络生成的读出代码的所有可能唯一对计算的读出代码之间的平均成对距离(与方程式3相同)。该距离提供在用于同一输入图案的读出神经元的响应中的平均变化的度量。该变化可能由于输入中的噪声而引起。辨别力指标(di)然后被定义为两个度量的乘积。第一个度量被称为测量用于给定测试组的读出代码的分离程度的可分性ε。该度量可以如下来计算:该度量类似于计算费舍尔(fischer)度量(参见第11号参考文献)。相对于dinter的小dintra暗示网络可以良好地分离输入。可分性独立于m。第二度量被称为唯一性γ,唯一性γ被定义为相对于唯一读出代码的最大可能数量由网络产生的唯一读出代码的数量。一些输入图案产生相同代码。然后,该代码被计为一个唯一代码。比如,如果存在十个图案且七个图案产生七个不同代码,那么三个图案产生一个相同代码,则存在八个唯一代码。这可以被表达为:其中,#s表示用于大小p的给定测试组的唯一读出代码(或激发率代码)的总数。如第12号参考文献中所述,因为高维度读出代码生成更多唯一代码,所以唯一性依赖于m。然后如下计算辨别力指标(di):di=ε*γ.(9)di的高值对应于使低dintra与高dinter或高可分性以及高唯一性结合的读出代码。di的最大值为1.0,并且其最小值通常为零,除非dintra>dinter。因为唯一性依赖于m,所以di依赖于m。(3.5.1)用于di计算的示例为了简单起见,对于下面的两个示例假定编码级c=3且假定在网络的汇聚层中存在两个读出单元允许二维(2d)的读出代码的可视化。然而,该分析容易地延伸到其它编码级。图5a和图5b中示出了用于两个不同示例的di计算的细节。在图5a中,用于第一示例的读出代码使用m=2和c=2。每个节点500(在图5a和图5b中由圆圈来表示)表示四个可能状态中的一个。对于图5a所例示的示例,存在总计2个输入图案502和504(p=2)。在图5b中,用于第二示例的读出代码使用m=2但c=3。每个节点500表示9个可能状态中的一个。对于该示例,存在总计4个输入图案506、508、510以及512(p=4)。示例1:假定存在两个测试输入图案502和504(p=2)且它们中的每一个被呈现10次,这产生如下针对每个测试图案的10个读出代码:s1={(0,1);(0,1);(0,1);(0,1);(1,0);(1,1);(1,1);(0,1);(0,1);(0,1)}和s2={(1,0);(1,0);(0,0);(0,0);(1,0);(1,0);(0,0);(1,0);(0,0);(1,0)}。因为存在两个输入图案502和504且c=2,所以通常存在四个可能的读出代码。然而,基于s1和s2,两个读出代码对于p=1聚集(cluster)在(0,1)周围(元素502)且对于p=2聚集在(1,0)周围(元素504)。di的各种值可以如下来计算。使用方程式3和读出代码s1,dintra,1=6*4(10*9/2)=24m/45(元素514)且dintra,2=8*2/(10*9/2)=16m/45(元素516);由此,平均值dintra=20m/45。因为读出代码对于两个测试图案聚集在(0,1)和(1,0)周围,所以dinter=2m(元素518)。使用这些dinter和dintra,可分性可以被计算为ε=1-10/45=35/45。因为对于两个测试图案存在两个唯一代码,所以唯一性γ=1。由此,用于该示例的辨别力指标将为di=35/45=0.78。示例2:假定存在四个测试图案506、508、510以及512(p=4)且它们中的每一个被呈现10次,产生如下针对每个测试图案的10个读出代码:s1={(2,1);(2,1);(2,1);(2,1);(2,1);(1,1);(1,1);(2,1);(2,1);(2,1);(2,1)}、s2={(2,1);(2,1);(2,0);(2,0);(2,1);(2,0);(2,1);(2,1);(2,1);(2,1)}、s3={(1,0);(1,0);(0,0);(0,0);(1,0);(1,0);(0,0);(1,0);(0,0);(1,0)}、s4={(1,0);(1,0);(1,1);(1,0);(1,0);(1,1);(1,0);(1,0);(1,1);(1,0)}。该场景通常可以使用四个可能的读出代码来可视化。基于四个读出代码,它们对于p=1、2聚集在(2,1)周围(元素506和508)且对于p=3、4聚集在(1,0)周围(元素510和512)。di的各种值可以如下来计算。使用方程式3和读出代码s1,dintra,1=16m/45(元素520)、dintra,2=21m/45(元素522)、dintra,3=24m/45(元素524)以及dintra,4=21m/45(元素526)。由此,平均值dintra可以被计算为41m/90。因为读出代码对于四个测试图案聚集在(0,1)和(1,0)周围,所以dinter=2*2*m/(4*3/2)=2m/3(元素528)。使用这些dinter和dintra,可分性可以被计算为ε=1-41/60=19/60。因为对于四个测试图案仅存在两个唯一代码,所以唯一性γ=1/2。由此,用于该示例的di将为di=(19/60)*(1/2)=0.16。因为四个图案与两个测试图案情况相比不那么可分离且读出代码与示例1相比也不足够唯一,所以该示例与示例1相比更低。这些示例例示了如何计算di的基础,并且可以容易地延伸到处理具有更大m且用不同编码级编码的网络。(3.6)实验研究图6a示出了实验研究中的用于网络的训练图案。初始训练组用p=15个旗帜图案来构建。图案以随机顺序呈现从具有30ms的平均值的指数分布选择的持续时间。图6b例示了各种测试阶段(即,0s、300s、900s、1800s、2700s以及3600s)期间来自网络的读出代码。每个图案如上所述在源神经元处生成泊松脉冲序列。由输入层中的每个图案生成的这些脉冲被传输到中间层的e个储层神经元。随着呈现训练图案,源层神经元与第2层中的储层的每个e神经元之间的突触共同形成接收域(参见第6号参考文献)。这通过经由stdp调节这些突触的强度来实现(对于细节,参见第6号参考文献)。为了使用图案辨别能力,向网络呈现训练组总共3600s。在每训练10s之后监测读出神经元的激发率,以测试网络辨别输入图案的能力。以这些时间间隔,关闭可塑性,并且以随机顺序呈现每个输入图案5s,并且基于读出神经元的活动计算di度量(方程式9)。如图6b所示,在训练过程期间定期以常规间隔针对每个输入图案描绘来自读出代码的三进制代码。因为网络尚未被暴露到所有图案,所以读出代码对于所有图案初始看起来一样。随着网络被暴露到更多训练数据,读出代码开始示出更多变化。然而,当比较输入图案在两个不同时间处的读出代码时,它们看起来贯穿训练时段的持续时间恒定变化。这暗示基于静态模板的辨别算法在这里将不合适。图6c是示出了可分性和唯一性度量在某一初始持续时间之后较高的图,其中,可分性度量600由虚线来表示,并且唯一性度量602由实线来表示。在第一训练小时期间追踪可分性和唯一性。网络展示良好的可分性(方程式7)和唯一性(方程式8)。图6d是例示了辨别力指标对于测试图案较高的图。由此,di(方程式9)快速上升至~0.8,这暗示非常良好的辨别力。这里所述的本发明能够使用解码神经形态芯片中的脉冲活动的更可扩展方法,由此能够使用具有连续输入和输出的复杂被监督和无人监督学习应用。该方法可以集成到神经形态芯片中,使得可以针对需要满足尺寸、重量、面积以及功率(swap)约束的大量汽车和航空航天产品(包括汽车、飞机以及无人机(uav))鲁棒地解码芯片输出。例如,当集成到解码芯片中或用作解码过程的一部分时,系统的一些实施方式可以从已经被呈现有输入信号(例如,要分析的输入图像、声音或雷达信号)的神经网络获取读出代码。然后,读出代码可以与对应于已知结果的已验证读出代码匹配,以识别输入信号的多个方面。这样,对于一些实施方式,使用上述方法的部分训练和/或使用di验证的神经网络可以应用于各种应用和系统中(例如,图像识别、声音识别、雷达目标识别)。根据本公开的实施方式的系统提供解码器,该解码器比用于现有技术机器学习算法中的解码器(诸如仅适用于激发率模型的卷积神经网络(参见第1号和第2号参考文献)、液体状态机(参见第3号参考文献)以及回声状态机(参见第4号参考文献))更适用于脉冲神经网络。与这些现有模型不同,如上所述,这里所述的解码器方法启用无人监督学习,由此增大脉冲网络可以用于包括具有swap约束的自主应用的神经形态芯片的应用的范围。神经形态芯片是处理存储器中的数据的快速图案匹配引擎。这里所述的系统和方法用在线学习识别输入图案与输入图像。该技术根据训练输入图案具有许多可应用区域。如果输入图案例如是交通工具、行人、骑摩托车的人或骑脚踏车者,则这可以应用于自主驾驶,以用图像感测装置(诸如相机、ladar以及lidar)识别交通工具周围的目标。另外,如果输入图案是机场中的飞机和/或目标,则本发明可应用于飞行器。因为神经形态芯片使用非常少的电力,所以该技术特别有利于具有有限电源的应用(诸如uav)。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1