神经看门狗的制作方法

文档序号:10475882阅读:229来源:国知局
神经看门狗的制作方法
【专利摘要】监视神经网络的方法包括监视该神经网络的活动。该方法还包括基于该活动来检测状况。该方法进一步包括基于检测到的状况来执行异常事件。
【专利说明】神经看口狗
【背景技术】 [0001 ] 领域
[0002] 本公开的某些方面一般设及神经系统工程,并且尤其设及神经网络中检错并从错 误中恢复的系统和方法。
【背景技术】
[0003]
[0004] 可包括一群互连的人工神经元(即,神经元模型)的人工神经网络是一种计算设备 或者表示将由计算设备执行的方法。人工神经网络可具有生物学神经网络中的对应的结构 和/或功能。在一些情形中,人工神经网络可为其中传统计算技术是麻烦的、不切实际的、或 不胜任的某些应用提供创新且有用的计算技术。由于人工神经网络能从观察中推断出功 能,因此运样的网络在因任务或数据的复杂度使得通过常规技术来设计该功能较为麻烦的 应用中是特别有用的。尽管如此,神经网络可能会故障或者经历未预期的行为。由此,提供 在神经网络中检错和从错误中恢复的神经元形态接收机是合乎需求的。
[0005] 概述
[0006] 在本公开的一方面,公开了一种监视神经网络的方法。该方法包括监视该神经网 络的活动。该方法还包括基于该活动来检测状况。该方法进一步包括基于检测到的状况来 执行异常事件。
[0007] 本公开的另一方面设及包括用于监视神经网络的活动的装置的装备。该装备还包 括用于基于该活动来检测状况的装置。该装备进一步包括用于基于检测到的状况来执行异 常事件的装置。
[0008] 在本公开的另一方面,公开了一种具有非瞬态计算机可读介质的用于监视神经网 络的计算机程序产品。该计算机可读介质上记录有非瞬态程序代码,运些程序代码在由 (诸)处理器执行时使该(诸)处理器执行监视神经网络的活动的操作。该程序代码还使(诸) 处理器基于该活动来检测状况。该程序代码还使(诸)处理器基于检测到的状况来执行异常 事件。
[0009] 本公开的另一方面设及一种具有存储器W及禪合到该存储器的至少一个处理器 的用于监视神经网络的装置。(诸)处理器配置成监视神经网络的活动。(诸)处理器还配置 成基于该活动来检测状况。(诸)处理器还被进一步配置成基于检测到的状况来执行异常事 件。
[0010] 附图简述
[0011] 在结合附图理解下面阐述的详细描述时,本公开的特征、本质和优点将变得更加 明显,在附图中,相同附图标记始终作相应标识。
[0012] 图1解说了根据本公开的某些方面的示例神经元网络。
[0013] 图2解说了根据本公开的某些方面的计算网络(神经系统或神经网络)的处理单元 (神经元)的示例。
[0014] 图3解说了根据本公开的某些方面的尖峰定时依赖可塑性(STOP)曲线的示例。
[0015] 图4解说了根据本公开的某些方面的用于定义神经元模型的行为的正态相和负态 相的示例。
[0016] 图5是解说根据本公开一方面的神经监视器的框图。
[0017] 图6解说了根据本公开的某些方面的使用通用处理器来设计神经网络的示例实 现。
[0018] 图7解说了根据本公开的某些方面的设计其中存储器可W与个体分布式处理单元 对接的神经网络的示例实现。
[0019] 图8解说了根据本公开的某些方面的基于分布式存储器和分布式处理单元来设计 神经网络的示例实现。
[0020] 图9解说了根据本公开的某些方面的神经网络的示例实现。
[0021] 图10是解说根据本公开的一方面的用于监视神经活动的方法的框图。
[0022] 图11是解说示例性设备中的不同模块/装置/组件之间的数据流的概念性数据流 图。
[0023] 详细描述
[0024] W下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文 中所描述的概念的仅有的配置。本详细描述包括具体细节W便提供对各种概念的透彻理 解。然而,对于本领域技术人员将显而易见的是,没有运些具体细节也可实践运些概念。在 一些实例中,W框图形式示出众所周知的结构和组件W避免煙没此类概念。
[0025] 基于本教导,本领域技术人员应领会,本公开的范围旨在覆盖本公开的任何方面, 不论其是与本公开的任何其他方面相独立地还是组合地实现的。例如,可W使用所阐述的 任何数目的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖使用作为所阐述的 本公开的各个方面的补充或者与之不同的其他结构、功能性、或者结构及功能性来实践的 此类装置或方法。应当理解,所披露的本公开的任何方面可由权利要求的一个或多个元素 来头施。
[0026] 措辞"示例性"在本文中用于表示"用作示例、实例或解说"。本文中描述为"示例 性"的任何方面不必被解释为优于或胜过其他方面。
[0027] 尽管本文描述了特定方面,但运些方面的众多变体和置换落在本公开的范围之 内。虽然提到了优选方面的一些益处和优点,但本公开的范围并非旨在被限定于特定益处、 用途或目标。相反,本公开的各方面旨在能宽泛地应用于不同的技术、系统配置、网络和协 议,其中一些作为示例在附图W及W下对优选方面的描述中解说。详细描述和附图仅仅解 说本公开而非限定本公开,本公开的范围由所附权利要求及其等效技术方案来定义。
[00%]示例神经系统、训练及操作
[0029] 图1解说了根据本公开的某些方面的具有多级神经元的示例人工神经系统100。神 经系统100可具有神经元级102,该神经元级102通过突触连接网络104(即,前馈连接)来连 接到另一神经元级106。为简单起见,图1中仅解说了两级神经元,尽管神经系统中可存在更 少或更多级神经元。应注意,一些神经元可通过侧向连接来连接至同层中的其他神经元。此 夕h-些神经元可通过反馈连接来后向连接至先前层中的神经元。
[0030] 如图1所解说的,级102中的每一个神经元可W接收可由前级的神经元(未在图1中 示出)生成的输入信号108。信号108可表示级102的神经元的输入电流。该电流可在神经元 膜上累积W对膜电位进行充电。当膜电位达到其阔值时,该神经元可激发并生成输出尖峰, 该输出尖峰将被传递到下一级神经元(例如,级106)。此类行为可在硬件和/或软件(包括模 拟和数字实现,诸如W下所述那些实现)中进行仿真或模拟。
[0031] 在生物学神经元中,在神经元激发时生成的输出尖峰被称为动作电位。该电信号 是相对迅速、瞬态的神经脉冲,其具有约为lOOmV的振幅和约为1ms的历时。在具有一系列连 通的神经元(例如,尖峰从图1中的一级神经元传递至另一级神经元)的神经系统的特定实 施例中,每个动作电位都具有基本上相同的振幅和历时,并且因此该信号中的信息可仅由 尖峰的频率和数目、或尖峰的时间来表示,而不由振幅来表示。动作电位所携带的信息可由 尖峰、发放了尖峰的神经元、W及该尖峰相对于一个或数个其他尖峰的时间来确定。尖峰的 重要性可由向各神经元之间的连接所应用的权重来确定,如W下所解释的。
[0032] 尖峰从一级神经元向另一级神经元的传递可通过突触连接(或简称"突触")网络 104来达成,如图1中所解说的。关于突触104,级102的神经元可被视为突触前神经元,而级 106的神经元可被视为突触后神经元。突触104可接收来自级102的神经元的输出信号(即, 尖峰),并根据可调节突触权重来按比例缩放那些信号,其中P是级102 、· · ? > 的神经元与级106的神经元之间的突触连接的总数,并且i是神经元级的指示符。在图1的示 例中,i表示神经元级102并且i+1表示神经元级106。此外,经按比例缩放的信号可被组合W 作为级106中每个神经元的输入信号。级106中的每个神经元可基于对应的组合输入信号来 生成输出尖峰110。可使用另一突触连接网络(图1中未示出)将运些输出尖峰110传递到另 一级神经元。
[0033] 生物学突触可被分类为电的或化学的。电突触主要用于发送兴奋性信号,而化学 突触可调停突触后神经元中的兴奋性或抑制性(超极化)动作,并且还可用于放大神经元信 号。兴奋性信号使膜电位去极化(即,相对于静息电位增大膜电位)。如果在某个时间段内接 收到足够的兴奋性信号W使膜电位去极化到高于阔值,则在突触后神经元中发生动作电 位。相反,抑制性信号一般使膜电位超极化(即,降低膜电位)。抑制性信号如果足够强则可 抵消掉兴奋性信号之和并阻止膜电位到达阔值。除了抵消掉突触兴奋W外,突触抑制还可 对自发活跃神经元施加强力的控制。自发活跃神经元是指在没有进一步输入的情况下(例 如,由于其动态或反馈而)发放尖峰的神经元。通过压制运些神经元中的动作电位的自发生 成,突触抑制可对神经元中的激发模式进行定形,运一般被称为雕刻。取决于期望的行为, 各种突触104可充当兴奋性或抑制性突触的任何组合。
[0034] 神经系统100可由通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场 可编程口阵列(FPGA)或其他可编程逻辑器件(PLD)、分立的口或晶体管逻辑、分立的硬件组 件、由处理器执行的软件模块、或其任何组合来仿真。神经系统100可用在大范围的应用中, 诸如图像和模式识别、机器学习、电机控制、及类似应用等。神经系统100中的每一神经元可 被实现为神经元电路。被充电至发起输出尖峰的阔值的神经元膜可被实现为例如对流经其 的电流进行积分的电容器。
[0035] 在一方面,电容器作为神经元电路的电流积分器件可被除去,并且可使用较小的 忆阻器元件来替代它。运种办法可应用于神经元电路中,W及其中大容量电容器被用作电 流积分器的各种其他应用中。另外,每个突触104可基于忆阻器元件来实现,其中突触权重 变化可与忆阻器电阻的变化有关。使用纳米特征尺寸的忆阻器,可显著地减小神经元电路 和突触的面积,运可使得实现大规模神经系统硬件实现更为切实可行。
[0036] 对神经系统100进行仿真的神经处理器的功能性可取决于突触连接的权重,运些 权重可控制神经元之间的连接的强度。突触权重可存储在非易失性存储器中W在掉电之后 保留该处理器的功能性。在一方面,突触权重存储器可实现在与主神经处理器忍片分开的 外部忍片上。突触权重存储器可与神经处理器忍片分开地封装成可更换的存储卡。运可向 神经处理器提供多种多样的功能性,其中特定功能性可基于当前附连至神经处理器的存储 卡中所存储的突触权重。
[0037] 图2解说了根据本公开的某些方面的计算网络(例如,神经系统或神经网络)的处 理单元(例如,神经元或神经元电路)202的示例性示图200。例如,神经元202可对应于来自 图1的级102和106的任何神经元。神经元202可接收多个输入信号204i-204n(Xi-Xn),运些输 入信号可W是该神经系统外部的信号、或是由同一神经系统的其他神经元所生成的信号、 或运两者。输入信号可W是实数值或复数值的电流或电压。输入信号可包括具有定点或浮 点表示的数值。可通过突触连接将运些输入信号递送到神经元202,突触连接根据可调节突 触权重206i-206n(Wi-Wn)对运些信号进行按比例缩放,其中N可W是神经元202的输入连接总 数。
[0038] 神经元202可组合运些经按比例缩放的输入信号,并且使用组合的经按比例缩放 的输入来生成输出信号208(即,信号Y)。输出信号208可W是实数值或复数值的电流或电 压。输出信号可W是具有定点或浮点表示的数值。随后该输出信号208可作为输入信号传递 至同一神经系统的其他神经元、或作为输入信号传递至同一神经元202、或作为该神经系统 的输出来传递。
[0039] 处理单元(神经元)202可由电路来仿真,并且其输入和输出连接可由具有突触电 路的电连接来仿真。处理单元202及其输入和输出连接也可由软件代码来仿真。处理单元 202还可由电路来仿真,而其输入和输出连接可由软件代码来仿真。在一方面,计算网络中 的处理单元202可W是模拟电路。在另一方面,处理单元202可W是数字电路。在又一方面, 处理单元202可W是具有模拟和数字组件两者的混合信号电路。计算网络可包括任何前述 形式的处理单元。使用运样的处理单元的计算网络(神经系统或神经网络)可用在大范围的 应用中,诸如图像和模式识别、机器学习、电机控制、及类似应用等。
[0040] 在神经网络的训练过程期间,突触权重(例如,来自图1的权重>4'''''+气 ^^,叫 和/或来自图2的权重206i-206n)可用随机值来初始化并根据学习规则而被增大或减小。本 领域技术人员将领会,学习规则的示例包括但不限于尖峰定时依赖可塑性(STDP)学习规 贝lJ、Het)b规则、Oja规则、Bienenstock-Coppe;r-Mun;ro(BCM)规则等。在一些方面,运些权重可 稳定或收敛至两个值(即,权重的双峰分布)之一。该效应可被用于减少每个突触权重的位 数、提高从/向存储突触权重的存储器读取和写入的速度、W及降低突触存储器的功率和/ 或处理器消耗。
[0041 ] 突触类型
[0042]在神经网络的硬件和软件模型中,突触相关功能的处理可基于突触类型。突触类 型可包括非可塑突触(对权重和延迟没有改变)、可塑突触(权重可改变)、结构化延迟可塑 突触(权重和延迟可改变)、全可塑突触(权重、延迟和连通性可改变)、w及基于此的变型 (例如,延迟可改变,但在权重或连通性方面没有改变)。多种类型的优点在于处理可W被细 分。例如,非可塑突触可W不执行可塑性功能(或等待此类功能完成)。类似地,延迟和权重 可塑性可被细分成可一起或分开地、顺序地或并行地运作的操作。不同类型的突触对于适 用的每一种不同的可塑性类型可具有不同的查找表或公式W及参数。因此,运些方法将针 对该突触的类型来访问相关的表、公式或参数。对变化的突触类型的使用会向人工神经网 络添加灵活性和可配置性。
[0043] 存在尖峰定时依赖结构化可塑性独立于突触可塑性而执行的暗示。结构化可塑性 即使在权重幅值没有改变的情况下(例如,如果权重已达最小或最大值、或者其由于某种其 他原因而不改变)也可执行,因为结构化可塑性(即,延迟改变的量)可W是前-后尖峰时间 差的直接函数。替换地,结构化可塑性可被设为权重变化量的函数或者可基于与权重或权 重变化的界限有关的条件来设置。例如,突触延迟可仅在权重变化发生时或者在权重到达0 的情况下才改变,但在运些权重为最大值时则不改变。然而,具有独立函数W使得运些过程 能被并行化从而减少存储器访问的次数和交叠可能是有利的。
[0044] 突触可塑性的确定
[0045] 神经元可塑性(或简称"可塑性")是大脑中的神经元和神经网络响应于新的信息、 感官刺激、发展、损坏、或机能障碍而改变其突触连接和行为的能力。可塑性对于生物学中 的学习和记忆、W及对于计算神经元科学和神经网络是重要的。已经研究了各种形式的可 塑性,诸如突触可塑性(例如,根据化化ian理论)、尖峰定时依赖可塑性(STDP)、非突触可塑 性、活跃性依赖可塑性、结构化可塑性和自稳态可塑性。
[0046] STDP是调节神经元之间的突触连接的强度的学习过程。连接强度是基于特定神经 元的输出与收到输入尖峰(即,动作电位)的相对定时来调节的。在STDP过程下,如果至某个 神经元的输入尖峰平均而言倾向于紧挨在该神经元的输出尖峰之前发生,则可发生长期增 强化TP)。于是使得该特定输入在一定程度上更强。另一方面,如果输入尖峰平均而言倾向 于紧接在输出尖峰之后发生,则可发生长期抑压化TD)。于是使得该特定输入在一定程度上 更弱,并由此得名"尖峰定时依赖可塑性"。因此,使得可能是突触后神经元兴奋原因的输入 甚至更有可能在将来作出贡献,而使得不是突触后尖峰的原因的输入较不可能在将来作出 贡献。该过程继续,直至初始连接集合的子集保留,而所有其他连接的影响减小至无关紧要 的水平。
[0047] 由于神经元一般在其许多输入都在一短时段内发生(即,输入被累积到足W引起 输出)时产生输出尖峰,因此通常保留下来的输入子集包括倾向于在时间上相关的那些输 入。另外,由于在输出尖峰之前发生的输入被加强,因此提供对相关性的最早充分累积性指 示的那些输入将最终变成至该神经元的最后输入。
[0048] STDP学习规则可因变于突触前神经元的尖峰时间tpre与突触后神经元的尖峰时间 tpDst之间的时间差(即,t = tpDst-tpre)来有效地适配将该突触前神经元连接到该突触后神经 元的突触的突触权重。STDP的典型公式是若该时间差为正(突触前神经元在突触后神经元 之前激发)则增大突触权重(即,增强该突触),W及若该时间差为负(突触后神经元在突触 前神经元之前激发)则减小突触权重(即,抑压该突触)。
[0049]在STOP过程中,突触权重随时间推移的改变可通常使用指数式衰退来达成,如由 下式给出的:
[(K)加] (1)
[00川其中k+和k-Tsign(At)分别是针对正和负时间差的时间常数,a+和a-是对应的比例缩 放幅值,W及k+是可应用于正时间差和/或负时间差的偏移。
[0052] 图3解说了根据STDP,突触权重因变于突触前(pre)和突触后(post)尖峰的相对定 时而改变的示例性曲线图300。如果突触前神经元在突触后神经元之前激发,则可使对应的 突触权重增大,如曲线图300的部分302中所解说的。该权重增大可被称为该突触的LTP。从 曲线图部分302可观察到,LTP的量可因变于突触前和突触后尖峰时间之差而大致呈指数地 下降。相反的激发次序可减小突触权重,如曲线图300的部分304中所解说的,从而导致该突 触的LTD。
[0053] 如图3中的曲线图300中所解说的,可向STDP曲线图的LTP(因果性)部分302应用负 偏移μηχ轴的交越点306(y = 0)可被配置成与最大时间滞后重合W考虑到来自层i-1的各因 果性输入的相关性。在基于帖的输入(即,按尖峰或脉冲的特定历时的帖的形式的输入)的 情形中,可计算偏移值μΚ反映帖边界。该帖中的第一输入尖峰(脉冲)可被视为随时间衰 退,要么如直接由突触后电位所建模地、要么W对神经状态的影响的形式而随时间衰退。如 果该帖中的第二输入尖峰(脉冲)被视为与特定时间帖相关或有关,则该帖之前和之后的有 关时间可通过使STDP曲线的一个或多个部分偏移W使得运些有关时间中的值可W不同(例 如,对于大于一个帖为负,而对于小于一个帖为正)来在该时间帖边界处被分开并在可塑性 意义上被不同地对待。例如,负偏移μ可被设为偏移LTPW使得曲线实际上在大于帖时间的 pre-post时间处变得低于零并且它由此为LTD而非LTP的一部分。
[0化4] 神经元模型及操作
[0055] 存在一些用于设计有用的尖峰发放神经元模型的一般原理。良好的神经元模型在 W下两个计算态相(regime)方面可具有丰富的潜在行为:重合性检测和功能性计算。此外, 良好的神经元模型应当具有允许时间编码的两个要素。例如,输入的抵达时间影响输出时 间并且重合性检测能具有窄时间窗。另外,为了在计算上是有吸引力的,良好的神经元模型 在连续时间上可具有闭合形式解,并且具有稳定的行为,包括在靠近吸引子和鞍点之处。换 言之,有用的神经元模型是可实践且可被用于建模丰富的、现实的且生物学一致的行为并 且可被用于对神经电路进行工程设计和反向工程两者的神经元模型。
[0056] 神经元模型可取决于事件,诸如输入抵达、输出尖峰或其他事件,无论运些事件是 内部的还是外部的。为了达成丰富的行为库,能展现复杂行为的状态机可能是期望的。如果 事件本身的发生在撇开输入贡献(若有)的情况下能影响状态机并约束该事件之后的动态, 则该系统的将来状态并非仅是状态和输入的函数,而是状态、事件和输入的函数。
[0057] 在一方面,神经元η可被建模为尖峰带漏泄积分激发神经元,其膜电压vn(t)由W 下动态来支配:
[0化引 (2)
[0059] 其中α和β是参数,Wm,nWm, η是将突触前神经元m连接至突触后神经元η的突触的突触 权重,W及ym(t)是神经元m的尖峰输出,其可根据Δ U,η被延迟达树突或轴突延迟才抵达神 经元η的胞体。
[0060] 应注意,从建立了对突触后神经元的充分输入的时间直至突触后神经元实际上激 发的时间之间存在延迟。在动态尖峰发放神经元模型(诸如Izhikevich简单模型)中,如果 在去极化阔值vt与峰值尖峰电压Vpeak之间有差量,则可引发时间延迟。例如,在该简单模型 中,神经元胞体动态可由关于电压和恢复的微分方程对来支配,即:
[0063] 其中V是膜电位,U是膜恢复变量,k是描述膜电位V的时间尺度的参数,a是描述恢 复变量U的时间尺度的参数,b是描述恢复变量U对膜电位V的阔下波动的敏感度的参数,Vr 是膜静息电位,I是突触电流,W及C是膜的电容。根据该模型,神经元被定义为在V>Vpeak时 发放尖峰。
[0064] Hunzinger Cold模型
[0065] 化nzinger Cold神经元模型是能再现丰富多样的各种神经行为的最小双态相尖 峰发放线性动态模型。该模型的一维或二维线性动态可具有两个态相,其中时间常数及 禪合)可取决于态相。在阔下态相中,时间常数(按照惯例为负)表示漏泄通道动态,其一般 作用于W生物学一致的线性方式使细胞返回到静息。阔上态相中的时间常数(按照惯例为 正)反映抗漏泄通道动态,其一般驱动细胞发放尖峰,而同时在尖峰生成中引发等待时间。
[0066] 如图4中所解说的,该模型400的动态可被划分成两个(或更多个)态相。运些态相 可被称为负态相402(也可互换地称为带漏泄积分激发化IF)态相(其与LI巧巾经元模型不 同))W及正态相404(也可互换地称为抗漏泄积分激发(ALIF)态相,勿与ALI巧巾经元模型混 淆)。在负态相402中,状态在将来事件的时间趋向于静息(V-)。在该负态相中,该模型一般 展现出时间输入检测性质及其他阔下行为。在正态相404中,状态趋向于尖峰发放事件 (Vs)。在该正态相中,该模型展现出计算性质,诸如取决于后续输入事件而引发发放尖峰的 等待时间。在事件方面对动态进行公式化W及将动态分成运两个态相是该模型的基础特 性。
[0067] 线性双态相二维动态(对于状态V和U)可按照惯例定义为:
[0070] 其中qp和r是用于禪合的线性变换变量。
[0071] 符号P在本文中用于标示动态态相,在讨论或表达具体态相的关系时,按照惯例对 于负态相和正态相分别用符号或V'来替换符号P。
[0072] 模型状态由膜电位(电压)v和恢复电流U来定义。在基本形式中,态相在本质上是 由模型状态来决定的。该精确和通用的定义存在一些细微却重要的方面,但目前考虑该模 型在电压V高于阔值(V+)的情况下处于正态相404中,否则处于负态相402中。
[0073] 态相相关时间常数包括负态相时间常数τ-和正态相时间常数τ+。恢复电流时间常 数Tu通常是与态相无关的。出于方便起见,负态相时间常数τ-通常被指定为反映衰退的负 量,从而用于电压演变的相同表达式可用于正态相,在正态相中指数和τ+将一般为正,正如 Tu那样。
[0074] 运两个状态元素的动态可在发生事件之际通过使状态偏离其零倾线(nul Ι? ο 1 ine) 的变换来禪合 ,其中 变换变量为:
[0075] qp = -Tp0u-Vp (7)
[0076] Γ = δ(ν+ε) (8)
[0077] 其中δ、ε、β和ν-、ν+是参数。Vp的两个值是运两个态相的参考电压的基数。参数V-是 负态相的基电压,并且膜电位在负态相中一般将朝向V-衰退。参数V+是正态相的基电压,并 且膜电位在正态相中一般将趋向于背离V+。
[0078] V和U的零倾线分别由变换变量qp和r的负数给出。参数δ是控制U零倾线的斜率的 比例缩放因子。参数ε通常被设为等于-V-。参数β是控制运两个态相中的V零倾线的斜率的 电阻值。τρ时间常数参数不仅控制指数式衰退,还单独地控制每个态相中的零倾线斜率。
[0079] 该模型可被定义为在电压V达到值VS时发放尖峰。随后,状态可在发生复位事件 (其可W与尖峰事件完全相同)之际被复位:
[0080] …(巧
[0081] u = u+ Δ U (10)
[00剧其中1和A U是参数。复位电压1通常被设为f-。
[0083]依照瞬时禪合的原理,闭合形式解不仅对于状态是可能的(且具有单个指数项), 而且对于到达特定状态所指定的时间也是可能的。闭合形式状态解为:
[0086] 因此,模型状态可仅在发生事件之际被更新,诸如在输入(突触前尖峰)或输出(突 触后尖峰)之际被更新。还可在任何特定时间(无论是否有输入或输出)执行操作。
[0087] 而且,依照瞬时禪合原理,可W预计突触后尖峰的时间,因此到达特定状态的时间 可提前被确定而无需迭代技术或数值方法(例如,欧拉数值方法)。给定了先前电压状态V0, 直至到达电压状态Vf之前的时间延迟由下式给出:
[008引 (13)
[0089]如果尖峰被定义为发生在电压状态V到达VS的时间,则从电压处于给定状态V的时 间起测量的直至发生尖峰前的时间量或即相对延迟的闭合形式解为:
[0090]
[0091] 其中通常被设为参数v+,但其他变型可W是可能的。
[0092] 模型动态的W上定义取决于该模型是在正态相还是负态相中。如所提及的,禪合 和态相P可基于事件来计算。出于状态传播的目的,态相和禪合(变换)变量可基于在上一 (先前)事件的时间的状态来定义。出于随后预计尖峰输出时间的目的,态相和禪合变量可 基于在下一(当前)事件的时间的状态来定义。
[0093] 存在对该Cold模型、W及在时间上执行模拟、仿真、或建模的若干可能实现。运包 括例如事件-更新、步阶-事件更新、W及步阶-更新模式。事件更新是其中基于事件或"事件 更新"(在特定时刻)来更新状态的更新。步点更新是W间隔(例如,1ms)来更新模型的情况 下的更新。运不一定要求迭代方法或数值方法。通过仅在事件发生于步阶处或步阶间的情 况下才更新模型或即通过"步阶-事件"更新,基于事件的实现W有限的时间分辨率在基于 步阶的模拟器中实现也是可能的。
[0094] 神经网络监视系统
[00M]在一些情形中,神经网络中可能发生异常状况。该异常状况可W是由例如网络活 动、学习功能、可塑性功能和/或环境影响所引起的非预期的不稳定或不平衡。典型系统可 W提供受控调试环境W调试因异常状况导致的系统故障。虽然调试环境可能对于确定异常 状况的起因是有用的,但是调试环境不会缓解(例如,防止)可能源自异常状况的系统故障。 由此,提供在非受控环境(诸如经部署的神经网络)中检测此类状况和/或从此类状况恢复 的系统是合乎需要的。应当注意,在本申请中,异常状况是指可能潜在地导致系统故障的事 件。异常状况可W被称为状况。
[0096] 典型的神经监视器对指定活动有反应。例如,当系统溫度高于指定值时,神经监视 器可W切断CPU的功率。本公开的一方面设及基于神经活动来检测一个或多个神经元素和/ 或过程中的不稳定或不平衡状况的神经监视器。即,神经监视器可W监视神经网络的活动 模式W确定该活动是否是期望的(例如,在基线活动的范围内)。更具体地,活动模式可指示 系统故障和/或组件故障的潜在可能性。神经监视器可W被称为概率性神经监视器。
[0097] 在一个配置中,响应于检测到异常状况,神经监视器重置和/或重配置主神经网 络。替换地,神经监视器可W重置和/或重配置主神经网络的一个或多个子集。此外,神经监 视器可W重置主神经网络和/或主神经网络的一个或多个子集。神经监视器可W重置或重 配置主神经网络和/或主神经网络的一个或多个子集的软件和/或硬件。
[0098] 在一个配置中,神经监视器是从主网络的一个或多个元件接收监督输入的神经网 络。进一步,神经监视器可包括分析神经网络的单个神经元的个体神经监视器。个体神经监 视器可W被共同用于监视神经网络的活动模式。
[0099] 图5解说了根据本公开一方面的包括神经监视器512的神经处理系统502的示图 500。如图5中所示,神经监视器512包括神经模型执行引擎504、活动监视器506和活动调节 器508。此外,重置块510可W禪合到神经处理系统502。在一个配置中,重置块510可W是神 经模型执行引擎504或神经监视器512的组件。在另一个配置中,活动监视器506、活动调节 器508和/或重置块510中的一者或多者是另一神经网络的组件。
[0100] 根据本公开的一方面,神经模型执行引擎504是执行神经网络(例如,神经模型)的 处理块。活动监视器506监视神经模型的执行W检测指定响应的状况。即,活动监视器506可 W监视神经模型执行引擎504的活动并且可触发活动调节器508来调节(例如,控制)神经模 型执行引擎504W缓解所检测到的状况。替换地或附加地,神经模型执行引擎504可W触发 重置块510来重置神经模型执行引擎504。
[0101] 如W上所讨论的,活动监视器506可W监视神经模型执行引擎504的活动。在一个 配置中,活动监视器506确定该活动是否遵循显著可预测的模式。活动可包括尖峰发放速 率、尖峰发放行为/模式和/或处理资源。可W针对每个神经元、针对每种类型的神经元和/ 或针对每个区域监视尖峰发放速率。进一步,尖峰行为/模式可W是瞬时的(例如,绝对的) 或者尖峰发放的速率。即,尖峰发放行为/模式可W是指神经网络中权重的分布。此外,处理 资源活动可包括神经存储器带宽、处理存储器带宽、和/或经缓冲操作的数量。
[0102] 在本配置中,活动调节器508控制(例如,校正)神经模型执行引擎504的执行W缓 解异常状况。在一个配置中,活动调节器重配置神经模型处理引擎504W缓解异常状况。即, 活动调节器508可W改变神经模型执行引擎504中的神经元的连接性。替换地或附加地,活 动调节器508可W改变活跃神经元的数目和/或改变概率性神经元。在另一配置中,活动调 节器508禁用神经模型执行引擎504的神经元块W缓解异常状况。在另一配置中,活动调节 器508向神经模型执行引擎504应用校正因子W缓解异常状况。在又一方面,活动调节器508 丢弃神经元尖峰。在又进一步方面,活动调节器508读出网络参数、值、连接性和/或异常事 件之前的最后时间的历史。在本公开的还有另一方面,活动调节器508可W调节影响神经模 型的执行的神经调制器(例如,全局数据)的增益。替换地或附加地,活动调节器508还可W 调节运些增益W影响系统参数(诸如尖峰生成或内部神经元状态)的改变速率。
[0103] 此外,活动监视器506和活动调节器508可W控制神经模型执行引擎504W延迟重 置。即,神经模型执行引擎504的重置可能是不合需要的。因此,活动监视器506和活动调节 器508可W协同工作W重配置神经模型执行引擎504来延迟神经模型执行引擎504的重置。
[0104] 此外,响应于来自活动监视器506的触发,重置块510可W重置神经模型执行引擎 504的一些或所有组件。在重置之前,重置块510还可W触发节省状态W记录和/或存储神经 模型执行引擎504的数据并且将所记录的数据存储到存储器单元。数据可包括网络参数、 值、连接性和/或异常状况之前的时间帖的数据。存储器单元可W是神经模型执行引擎504 或外部存储器的组件。
[0105] 图6解说了根据本公开的某些方面的使用通用处理器602的前述神经监视器的示 例实现600。与计算网络(神经网络)相关联的变量(神经信号)、突触权重、系统参数,延迟, 和频槽信息可被存储在存储器块604中,而在通用处理器602处执行的指令可从程序存储器 606中加载。在本公开的一方面,加载到通用处理器602中的指令可包括用于监视神经网络 的活动、基于该活动来检测状况和/或基于检测到的状况来执行异常事件的代码。
[0106] 图7解说了根据本公开的某些方面的前述神经监视器的示例实现700,其中存储器 702可经由互连网络704与计算网络(神经网络)的个体(分布式)处理单元(神经处理器)706 对接。与计算网络(神经网络)相关联的变量(神经信号)、突触权重、系统参数,延迟,和/或 频率槽信息可被存储在存储器702中,并且可从存储器702经由互连网络704的连接被加载 到每个处理单元(神经处理器)706中。在本公开的一方面,处理单元706可配置成监视神经 网络的活动,基于该活动来检测状况,和/或基于检测到的状况来执行异常事件。
[0107] 图8解说了前述神经监视器的示例实现800。如图8中所解说的,一个存储器组802 可与计算网络(神经网络)的一个处理单元804直接对接。每一个存储器组802可存储与对应 的处理单元(神经处理器)804相关联的变量(神经信号)、突触权重、和/或系统参数,延迟, W及频率槽信息。在本公开的一方面,处理单元804可配置成监视神经网络的活动,基于该 活动来检测状况,和/或基于检测到的状况来执行异常事件。
[0108] 图9解说了根据本公开的某些方面的神经网络900的示例实现。如图9中所解说的, 神经网络900可具有多个局部处理单元902,它们可执行上述方法的各种操作。每个局部处 理单元902可包括存储该神经网络的参数的局部状态存储器904和局部参数存储器906。另 夕h局部处理单元902可具有用于存储局部模型程序的局部(神经元)模型程序(LMP)存储器 908、用于存储局部学习程序的局部学习程序化LP)存储器910、W及局部连接存储器912。此 夕h如图9中所解说的,每个局部处理单元902可与用于为该局部处理单元的各局部存储器 提供配置的配置处理器单元914对接,并且与提供各局部处理单元902之间的路由的路由单 元916对接。
[0109] 在本公开的某些方面,每个本地处理单元902可配置成监视神经网络的活动,基于 该活动来检测状况,和/或基于检测到的状况来执行异常事件。
[0110] 图10解说了用于监视神经网络的活动的方法1000。在框1002,神经监视器监视神 经网络的活动。此外,在框1004,神经监视器基于该活动来检测状况。最终,在框1006,神经 监视器基于检测到的状况来执行异常事件。
[0111] 图11是解说神经监视器1100中的不同模块/装置/组件之间的数据流的概念性数 据流图。神经监视器1100包括监视神经网络的活动的监视模块1102。监视模块1102可W监 视整个神经网络或神经网络的子集的活动。活动可W用神经网络经由连接1110接收。监视 模块1102可包括监视神经网络的单个神经元的个体神经监视器。个体神经监视器的总体可 W监视整个神经网络和/或神经网络的子集。监视模块1102还可基于该活动来检测状况。可 W针对基于该活动来检测状况来指定单独的模块(未示出)。
[0112] 神经监视器1100还包括基于检测到的状况来执行异常事件的异常模块1104。当已 检测到状况时,异常模块1104从监视模块1102接收输入。异常模块1104经由信号1112向神 经网络和/或另一模块传送异常事件W执行该异常事件。异常事件可包括重配置神经网络 或重启神经网络。
[0113] 该设备可包括执行图10的前述流程图中的过程的每个步骤的附加模块。由此,前 述流程图10中的每个步骤可由一模块执行且该设备可包括那些模块中的一个或多个模块。 各模块可W是专口配置成实施所述过程/算法的一个或多个硬件组件、由配置成执行所述 过程/算法的处理器实现、存储在计算机可读介质中W供由处理器实现、或其某个组合。
[0114] 在一个配置中,神经网络(诸如本公开的各方面的神经监视器)被配置成监视神经 网络的活动。神经网络可包括用于监视的装置和用于检测的装置。在一个配置中,用于监视 的装置和用于检测的装置可W是配置成执行由监视和/或检测装置叙述的功能的程序存储 器606、本地状态存储器904、存储器702、互连网络704、处理单元706、处理单元804、本地处 理单元902、活动监视器506、监视模块1102和/或路由单元916。
[0115] 神经网络还可包括用于执行异常的装置。在一个配置中,用于执行异常的装置可 W是配置成执行由异常装置叙述的功能的程序存储器606、本地状态存储器904、存储器 702、互连网络704、处理单元706、处理单元804、本地处理单元902、活动调节器508、重置块 510、异常模块1104和/或路由单元916。
[0116] 在另一种配置中,前述装置可W是被配置成执行由前述装置所叙述的功能的任何 模块或任何设备。即,W上所描述的方法的各种操作可由能够执行相应功能的任何合适的 装置来执行。运些装置可包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用 集成电路(ASIC)、或处理器。一般而言,在存在图10中解说的操作的场合,那些操作可具有 带相似编号的相应配对装置加功能组件。
[0117] 如本文所使用的,术语"确定"涵盖各种各样的动作。例如,"确定"可包括演算、计 算、处理、推导、研究、查找(例如,在表、数据库或其他数据结构中查找)、探知及诸如此类。 而且,"确定"还可包括解析、选择、选取、确立及类似动作。
[011引如本文所使用的,引述一列项目中的"至少一个"的短语是指运些项目的任何组 合,包括单个成员。作为示例,"a、b或C中的至少一个"旨在涵盖:曰、13、(3、曰-13、曰-(3、13-(3、^及 曰-b-Co
[0119] 结合本公开所描述的各种解说性逻辑框、模块、W及电路可用设计成执行本文所 描述功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程口阵列 信号(FPGA)或其他可编程逻辑器件(PLD)、分立的口或晶体管逻辑、分立的硬件组件或其任 何组合来实现或执行。通用处理器可W是微处理器,但在替换方案中,处理器可W是任何市 售的处理器、控制器、微控制器、或状态机。处理器还可W被实现为计算设备的组合,例如 DSP与微处理器的组合、多个微处理器、与DSP核屯、协同的一个或多个微处理器、或任何其它 此类配置。
[0120] 结合本公开所描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件 模块中、或在运两者的组合中体现。软件模块可驻留在本领域所知的任何形式的存储介质 中。可使用的存储介质的一些示例包括随机存取存储器(RAM)、只读存储器(ROM)、闪存、可 擦除可编程只读存储器巧PROM)、电可擦除可编程只读存储器化EPROM)、寄存器、硬盘、可移 动盘、CD-ROM,等等。软件模块可包括单条指令、或许多条指令,且可分布在若干不同的代码 段上,分布在不同的程序间W及跨多个存储介质分布。存储介质可被禪合到处理器W使得 该处理器能从/向该存储介质读写信息。在替换方案中,存储介质可W被整合到处理器。
[0121] 本文所公开的方法包括用于实现所描述的方法的一个或多个步骤或动作。运些方 法步骤和/或动作可W彼此互换而不会脱离权利要求的范围。换言之,除非指定了步骤或动 作的特定次序,否则具体步骤和/或动作的次序和/或使用可W改动而不会脱离权利要求的 范围。
[0122] 所描述的功能可在硬件、软件、固件或其任何组合中实现。如果W硬件实现,则示 例硬件配置可包括设备中的处理系统。处理系统可W用总线架构来实现。取决于处理系统 的具体应用和整体设计约束,总线可包括任何数目的互连总线和桥接器。总线可将包括处 理器、机器可读介质、W及总线接口的各种电路链接在一起。总线接口可用于尤其将网络适 配器等经由总线连接至处理系统。网络适配器可用于实现信号处理功能。对于某些方面,用 户接口(例如,按键板、显示器、鼠标、操纵杆,等等)也可W被连接到总线。总线还可W链接 各种其他电路,诸如定时源、外围设备、稳压器、功率管理电路W及类似电路,它们在本领域 中是众所周知的,因此将不再进一步描述。
[0123] 处理器可负责管理总线和一般处理,包括执行存储在机器可读介质上的软件。处 理器可用一个或多个通用和/或专用处理器来实现。示例包括微处理器、微控制器、DSP处理 器、W及其他能执行软件的电路系统。软件应当被宽泛地解释成意指指令、数据、或其任何 组合,无论是被称作软件、固件、中间件、微代码、硬件描述语言、或其他。作为示例,机器可 读介质可包括随机存取存储器(RAM)、闪存、只读存储器(ROM)、可编程只读存储器(PROM)、 可擦式可编程只读存储器化PROM)、电可擦式可编程只读存储器化EPROM)、寄存器、磁盘、光 盘、硬驱动器、或者任何其他合适的存储介质、或其任何组合。机器可读介质可被实施在计 算机程序产品中。该计算机程序产品可W包括包装材料。
[0124] 在硬件实现中,机器可读介质可W是处理系统中与处理器分开的一部分。然而,如 本领域技术人员将容易领会的,机器可读介质或其任何部分可在处理系统外部。作为示例, 机器可读介质可包括传输线、由数据调制的载波、和/或与设备分开的计算机产品,所有运 些都可由处理器通过总线接口来访问。替换地或补充地,机器可读介质或其任何部分可被 集成到处理器中,诸如高速缓存和/或通用寄存器文件可能就是运种情形。虽然所讨论的各 种组件可被描述为具有特定位置,诸如局部组件,但它们也可按各种方式来配置,诸如某些 组件被配置成分布式计算系统的一部分。
[0125] 处理系统可W被配置为通用处理系统,该通用处理系统具有一个或多个提供处理 器功能性的微处理器、W及提供机器可读介质中的至少一部分的外部存储器,它们都通过 外部总线架构与其他支持电路系统链接在一起。替换地,该处理系统可W包括一个或多个 神经元形态处理器W用于实现本文所述的神经元模型和神经系统模型。作为另一替换方 案,处理系统可W用带有集成在单块忍片中的处理器、总线接口、用户接口、支持电路系统、 和至少一部分机器可读介质的专用集成电路(ASIC)来实现,或者用一个或多个现场可编程 口阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、Π 控逻辑、分立硬件组件、或者任何 其他合适的电路系统、或者能执行本公开通篇所描述的各种功能性的电路的任何组合来实 现。取决于具体应用和加诸于整体系统上的总设计约束,本领域技术人员将认识到如何最 佳地实现关于处理系统所描述的功能性。
[0126] 机器可读介质可包括数个软件模块。运些软件模块包括当由处理器执行时使处理 系统执行各种功能的指令。运些软件模块可包括传送模块和接收模块。每个软件模块可W 驻留在单个存储设备中或者跨多个存储设备分布。作为示例,当触发事件发生时,可W从硬 驱动器中将软件模块加载到RAM中。在软件模块执行期间,处理器可W将一些指令加载到高 速缓存中W提高访问速度。随后可将一个或多个高速缓存行加载到通用寄存器文件中W供 处理器执行。在W下述及软件模块的功能性时,将理解此类功能性是在处理器执行来自该 软件模块的指令时由该处理器来实现的。
[0127] 如果W软件实现,则各功能可作为一条或多条指令或代码存储在计算机可读介质 上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,运些介质包括 促成计算机程序从一地向另一地转移的任何介质。存储介质可W是能被计算机访问的任何 可用介质。作为示例而非限定,此类计算机可读介质可包括RAM、R0M、EEPR0M、CD-R0M或其他 光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望 程序代码且能被计算机访问的任何其他介质。另外,任何连接也被正当地称为计算机可读 介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(D化)、或无线技术 (诸如红外(IR)、无线电、W及微波)从web网站、服务器、或其他远程源传送而来,则该同轴 电缆、光纤电缆、双绞线、D化或无线技术(诸如红外、无线电、W及微波)就被包括在介质的 定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多 用碟(DVD)、软盘、和藍光?碟,其中盘(disk)常常磁性地再现数据,而碟(disc)用激光来光 学地再现数据。因此,在一些方面,计算机可读介质可包括非瞬态计算机可读介质(例如,有 形介质)。另外,对于其他方面,计算机可读介质可包括瞬态计算机可读介质(例如,信号)。 上述的组合应当也被包括在计算机可读介质的范围内。
[0128] 因此,某些方面可包括用于执行本文中给出的操作的计算机程序产品。例如,此类 计算机程序产品可包括其上存储(和/或编码)有指令的计算机可读介质,运些指令能由一 个或多个处理器执行W执行本文中所描述的操作。对于某些方面,计算机程序产品可包括 包装材料。
[0129] 此外,应当领会,用于执行本文中所描述的方法和技术的模块和/或其它恰适装置 能由用户终端和/或基站在适用的场合下载和/或W其他方式获得。例如,此类设备能被禪 合至服务器W促成用于执行本文中所描述的方法的装置的转移。替换地,本文所述的各种 方法能经由存储装置(例如,RAM、R0M、诸如压缩碟(CD)或软盘等物理存储介质等)来提供, W使得一旦将该存储装置禪合至或提供给用户终端和/或基站,该设备就能获得各种方法。 此外,可利用适于向设备提供本文所描述的方法和技术的任何其他合适的技术。
[0130] 将理解,权利要求并不被限定于W上所解说的精确配置和组件。可在W上所描述 的方法和装置的布局、操作和细节上作出各种改动、更换和变形而不会脱离权利要求的范 围。
【主权项】
1. 一种监视神经网络的方法,包括: 监视第一神经网络的活动; 基于所述活动来检测状况;以及 至少部分基于所检测到的状况来执行异常事件。2. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括响应于检测到所述状 况而校正所述第一神经网络的执行。3. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括重配置所述第一神经 网络的各个块。4. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括禁用所述第一神经网 络的各个块。5. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括应用校正因子。6. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括丢弃神经元尖峰。7. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括在检测到所述状况之 际重置所述第一神经网络的至少一部分。8. 如权利要求1所述的方法,其特征在于,执行所述异常事件包括读出网络参数、值、连 接性和/或所述异常事件之前的最后时间段的历史。9. 如权利要求1所述的方法,其特征在于,经由第二神经网络执行所述监视、检测和/或 执行所述异常事件。10. -种用于监视神经活动的装置,所述装置包括: 存储器单元;以及 耦合至所述存储器单元的至少一个处理器,所述至少一个处理器被配置成: 监视第一神经网络的活动; 基于所述活动来检测状况;以及 至少部分基于所检测到的状况来执行异常事件。11. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步配置成响应 于检测到所述状况而校正所述第一神经网络的执行。12. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步被配置成重 配置所述第一神经网络的各个块。13. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步被配置成禁 用所述第一神经网络的各个块。14. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步配置成应用 校正因子。15. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步配置成丢弃 神经元尖峰。16. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步配置成在检 测到所述状况之际重置所述第一神经网络的至少一部分。17. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步配置成读出 网络参数、值、连接性和/或所述异常事件之前的最后时间段的历史。18. 如权利要求10所述的装置,其特征在于,所述至少一个处理器被进一步配置成经由 第二神经网络监视、检测和/或执行所述异常事件。19. 一种用于监视神经网络的装备,包括: 用于监视所述神经网络的活动的装置; 用于基于所述活动来检测状况的装置;以及 用于至少部分基于所检测到的状况来执行异常事件的装置。20. -种用于监视神经网络的计算机程序产品,所述计算机程序产品包括: 其上记录有程序代码的非瞬态计算机可读介质,所述程序代码包括: 用以监视所述神经网络的活动的程序代码; 用以基于所述活动来检测状况的程序代码;以及 用以至少部分基于所检测到的状况来执行异常事件的程序代码。
【文档编号】G06F11/07GK105830036SQ201480070193
【公开日】2016年8月3日
【申请日】2014年12月19日
【发明人】M-D·N·卡洛伊, J·F·亨泽格
【申请人】高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1