掌桥专利:专业的专利平台
掌桥专利
首页

用于存储和/或处理知识图的神经形态硬件和方法

文献发布时间:2023-06-19 16:11:11



背景技术

基于图(graph-based)的数据分析在工业应用中起着越来越关键的作用。显著的示例是基于图结构化数据库的知识图(knowledge graph),其能够摄取(ingest)和表示(利用语义信息)来自潜在多个来源和领域的知识。知识图是丰富的数据结构,该数据结构使得能够对抽象概念以及它们如何彼此关联进行符号化描述。知识图的使用使得有可能以如下方式来整合先前隔离的数据来源:即,使得AI和数据分析应用能够在统一的、情境化的、语义丰富的知识库上工作,从而实现更加通用的、可解释的、可互操作且准确的AI算法,该AI算法在利用来自感兴趣的(一个或多个)领域(例如,工业自动化或建筑物系统)的良好定义的实体和关系进行工作的情况下执行其任务(例如,推理(reasoning)或推断(inference))。

图14示出了描述工业系统的部分的工业知识图KG的简化示例。一般而言,知识图由表示实体的节点和表示这些实体之间的关系的边组成。例如,在工业系统中,节点可以表示如传感器这样的物理对象、如PLC这样的工业控制器、机器人、机器操作者或所有者、驱动器、所制造的对象、工具、材料清单的元素、或其他硬件组件,但也可以表示更抽象的实体,如所述物理对象的属性和配置、生产时间表(schedule)和计划、机器或机器人的技能、或传感器测量结果。例如,抽象实体可以是IP地址、数据类型、或运行在工业系统上的应用,如图14中所示。

这些实体如何彼此关联是利用节点之间的不同类型的边来建模的。以这种方式,就可以使用语义上有意义的语句、即所谓的三元组(triples)或三元组语句来对该图进行概括,这些语句采用简单且人类可读的形式‘主体–谓词–客体(subject–predicate–object)’、或者以图形格式‘节点–关系–节点’。

图15示出了对图14中所示的工业知识图KG进行概括的一组已知的三元组语句T,包括工业知识图KG中当前未包含的两个未知的三元组语句UT。在给定知识图KG的结构的情况下,关于图数据的推断涉及评估未知的三元组语句UT是否有效。

多关系图(诸如,图14中所示的工业知识图)是用于对各种系统和问题(如工业项目)进行建模的丰富数据结构。因此,在能够处理图结构化数据的机器学习算法方面的兴趣近来有所增加并不奇怪。当将图概括为三元组语句‘主体–谓词–客体’或‘节点–关系–节点’的列表时,这些图的这种广泛适用性变得明显。不同实体与概念之间的复杂关系可以用这种方式来建模。例如,在电影数据库的情况下,图可能看起来像这样:‘#M.Hamill–#plays–#L.Skywalke(M.Hamill扮演L.Skywalke)’、‘#L.Skywalker–#appearsIn–#StarWars(L.Skywalker出现在StarWars中)’、‘#A.Skywalker–#isFatherOf–#L.Skywalker(A.Skywalker是L.Skywalker的父亲)’和‘#A.Skywalker–#is–#DarthVader(A.Skywalker是DarthVader)’。关于这种图结构化数据的推断然后类似于评估先前未知的新三元组语句,或者用符号化图的语言来说:预测给定图中的节点之间的新链接——如‘#DarthVader–#isFatherOf–#L.Skywalker(DarthVader是L.Skywalker的父亲)’和‘#DarthVader–#appearsIn–#StarWars(DarthVader出现在StarWars中)’,但不是‘#A.Skywalker–#isFatherOf–#M.Hamill(A.Skywalker是M.Hamill的父亲)’。

尽管多关系图是高度表达性的(expressive),但是其符号化本质阻止了对经典统计方法的直接使用以进行进一步的处理和评估。最近,已经引入了图嵌入算法以通过在保存(conserve)某些图属性的同时将节点和边映射到向量空间来解决该问题。例如,可能想要保存节点的接近性(proximity),使得被连接的节点或具有极大重叠邻域的节点被映射到彼此靠近的向量。然后,可以在传统机器学习方法中使用这些向量表示,以做出关于未见过的语句的预测,从而实现对一组主体、谓词和客体的抽象推理。

能够在知识图数据上训练AI方法的现有系统需要从产生它们的来源中提取大量原始数据(例如,传感器数据)。然后,将所提取的数据映射到一组预定义的词汇(例如,本体),以便产生所谓的三元组,即采用以机器可读格式(例如,RDF)表示的主体–谓词–客体形式的关于语义数据的语句。这种三元组的集合构成了知识图,广泛范围的现有算法可以被应用于该知识图来执行数据分析。示例是学习针对该图中的实体的表示(所谓的嵌入)的方法,以便执行推断任务,诸如通过推断/预测未观察到的关系(链接预测)或找到相同实体的多个实例(实体解析)来执行知识图完成。

这些方法基于密集的随机优化算法,这些随机优化算法由于其计算复杂性最适合利用先前获取和存储的数据进行离线学习。只有已经在专用服务器上利用所提取的数据训练了算法(例如,用于链接预测的神经网络)之后,才有可能执行对新数据的预测,该执行要么通过从产生它们的相关设备中进一步提取数据,要么通过将所学习的算法部署到这些设备以使得它可以在本地应用。无论哪种情况,学习步骤都是在这些设备外部实现的。

最近,脉冲神经网络(spiking neural network)SNN已经开始弥补与广泛使用的其同类(cousin)——人工神经网络ANN——的间隙(gap)。该成功的一个关键组成部分是误差反向传播算法与SNN的合并(consolidation)。然而,到目前为止,SNN主要应用于类似于感觉处理的任务,如图像或音频识别。这种输入数据本质上是良好结构化的(例如,图像中的像素具有固定位置),并且适用性通常被限于利用这种结构并且无法良好地扩展到初始数据领域之外的狭窄的一组任务。

如工业工厂系统这样的复杂系统可以使用知识图的常见语言来描述,从而允许使用图嵌入算法以在这些信息打包的环境中进行情境感知预测(context-awareprediction)。

本发明的目的是提供对现有技术的替代方案。

独立权利要求解决了本发明的目的。在相应的从属权利要求中阐述了本发明的进一步有利的布置和实施例。

用于存储和/或处理知识图的神经形态硬件包括:第一神经元,其通过第一神经元在重复出现的时间间隔期间的第一脉冲时间P1ST来表示知识图KG中的第一节点;以及第二神经元,其通过第二神经元在所述重复出现的时间间隔期间的第二脉冲时间P2ST来表示知识图KG中的第二节点。第一节点与第二节点之间的关系被表示为第一脉冲时间P1ST与第二脉冲时间P2ST之间的差。

用于存储和/或处理知识图KG的方法训练具有第一神经元、第二神经元和输出神经元ON的神经网络,以用于:将知识图KG中的第一节点的表示编码成第一神经元在重复出现的时间间隔期间的第一脉冲时间P1ST;将知识图KG中的第二节点的表示编码成第二神经元在所述重复出现的时间间隔期间的第二脉冲时间P2ST;以及通过输出神经元ON来解码第一脉冲时间P1ST与第二脉冲时间P2ST之间的差,以便评估第一节点与第二节点之间的关系的存在。

以下优点和解释不一定是独立权利要求的目的的结果。而是,它们可以是仅适用于某些实施例或变体的优点和解释。

根据一些实施例,所述神经形态硬件和方法实现了创新性的学习规则,所述学习规则便于在线学习并且适合于在超高效硬件架构中实现,例如在低功率、高度可伸缩的处理单元(例如,神经处理单元、神经网络加速器或神经形态处理器,例如脉冲神经网络系统)中实现。

根据一些实施例,所述神经形态硬件和方法以无缝的方式将学习和推断进行组合。

尽管最近成功协调了基于脉冲的编码与误差反向传播算法,但是脉冲神经网络仍然主要应用于对传统数据结构(如视觉或听觉数据)进行操作的任务。我们提出了一种基于脉冲的算法,其中图中的节点由神经元群体的单个脉冲时间来表示,并且关系被表示为群体之间的脉冲时间差。学习这种基于脉冲的嵌入仅需要关于脉冲时间和脉冲时间差的知识,这与最近提出的用于训练脉冲神经网络的框架相兼容。所提出的模型容易映射到当前的神经形态硬件系统,并且从而将关于知识图的推断移动到其中这些架构蓬勃发展的领域中,从而为该技术开启了有前途的工业应用领域。

根据一些实施例,所述神经形态硬件和方法提供了针对多关系图的图嵌入,其中不是直接利用图结构进行工作,而是将它编码在脉冲的时域中:实体和关系分别被表示为神经元群体的脉冲、以及群体之间的脉冲时间差。通过从图到基于脉冲的编码的这种映射,SNN可以在图数据上被训练,并且预测在训练期间没有见过的新三元组语句,即,在训练图所跨越的语义空间上执行推断。实施例使用非泄漏整合和激发(non-leaky integrate-and-fire)神经元,从而保证该模型与通常实现LIF神经元模型的某些变体的当前神经形态硬件架构兼容。

根据一些实施例,所述神经形态硬件和方法对于神经形态硬件在工业用例中的适用性是尤其感兴趣的,其中图嵌入算法找到了许多应用,例如以推荐系统、数字孪生体(twin)、语义特征选择器或异常检测器形式的应用。

根据一些实施例,所述神经形态硬件可以是任何种类的工业设备的一部分,该工业设备例如现场设备、边缘设备、传感器设备、工业控制器(特别是PLC控制器)、实现SCADA系统的工业PC、网络中枢、网络交换机(特别是工业以太网交换机)、或将自动化系统连接到云计算资源的工业网关。根据这些实施例,在知识图数据上进行训练的AI算法被直接嵌入到该工业设备中,从而能够基于观察来持续地学习,而不需要外部数据处理服务器。

在知识图数据上训练AI方法通常是繁重的任务,并且因此无法直接在边缘(Edge)处(即,在产生该数据的设备上)实现。通过边缘,我们指代如下计算资源:该计算资源要么直接属于生成原始数据的系统(例如,工业制造系统),要么被定位成非常靠近该系统(在联网拓扑中(例如,在车间层网络中)在物理上和/或逻辑上非常靠近该系统)并且通常具有有限的计算资源。

直接在产生该数据的设备处训练这些算法是有利的,这是因为不需要数据提取或附加的计算基础设施。消除了经训练的算法的可用性与数据观察之间的时延,该时延是现有方法所引起的(由于需要在设备外提取、变换和处理该数据)。

根据一些实施例,所述神经形态硬件使边缘学习设备能够进行在线图学习和分析。受哺乳动物大脑所启发,神经形态处理器承诺了能量高效性、快速仿真时间、以及持续学习能力。相比之下,基于图的数据处理通常出现在与神经形态计算无关的设置中,其中来自不同数据孤岛的巨量符号化数据被组合、存储在服务器上,并且用于在云上训练模型。神经形态硬件实施例的目的是针对其中图结构化数据必须被动态分析的场景来桥接这两个世界,而没有巨大的数据存储库或到云的卸载——这是神经形态设备在其中具有蓬勃发展的潜力的环境。

知识图的主要优点之一是:它们能够无缝地整合来自多个来源或多个领域的数据。因此,所述神经形态硬件和方法的一些实施例在通常充当信息集中器的工业设备上是特别有利的,该信息集中器如PLC控制器(其通过设计从自动化系统、例如从所有传感器收集所有信息)、实现SCADA系统的工业PC、网络中枢和交换机(包括工业以太网交换机)、以及将自动化系统连接到云计算资源的工业网关。

根据另一个实施例,所述神经形态硬件可以是服务器、例如云计算服务器的一部分。

在所述神经形态硬件和方法的实施例中,第一脉冲时间P1ST与第二脉冲时间P2ST之间的差考虑第一脉冲时间P1ST相对于第二脉冲时间P2ST的次序。替代地,所述差是绝对值。

在所述神经形态硬件和方法的实施例中,所述关系被存储在输出神经元ON中,所述输出神经元ON连接到第一神经元和第二神经元。所述关系特别地由存储在所述输出神经元ON的树突中的向量组份来给出。

在所述神经形态硬件和方法的实施例中,第一神经元形成第一节点嵌入群体NEP1,并且第二神经元形成第二节点嵌入群体NEP2。

在所述神经形态硬件和方法的实施例中,每个节点嵌入群体连接到抑制神经元IN,并且因此可通过抑制神经元IN的抑制来选择。

在所述神经形态硬件和方法的实施例中,第一神经元连接到监测神经元MN。每个第一神经元连接到对应的鹦鹉(parrot)神经元PN。所述鹦鹉神经元PN连接到所述输出神经元ON。所述鹦鹉神经元PN连接到抑制神经元IN。

在所述神经形态硬件和方法的实施例中,第一神经元和第二神经元是脉冲神经元,特别是非泄漏整合和激发神经元nLIF或基于电流的泄漏整合和激发神经元。

在所述神经形态硬件和方法的实施例中,第一神经元和第二神经元中的每一个在所述重复出现的时间间隔期间仅产生脉冲一次。替代地,仅对所述重复出现的时间间隔期间的第一脉冲进行计数。

在所述神经形态硬件的实施例中,所述神经形态硬件包含:针对知识图KG中的每个节点的神经元的节点嵌入群体NEP,其中每个节点由相应神经元的脉冲时间来表示;以及若干个输出神经元ON,其中知识图中的所有关系被存储在所述输出神经元ON中。

在所述神经形态硬件的实施例中,所述神经形态硬件实现推荐系统、数字孪生体、语义特征选择器、或异常检测器。

在所述神经形态硬件的实施例中,所述神经形态硬件是专用集成电路、现场可编程门阵列、晶圆级集成、具有混合模式VLSI神经元的硬件、或神经形态处理器、特别是神经处理单元或混合信号神经形态处理器。

在所述神经形态硬件和方法的实施例中,知识图KG由三元组语句T来表示。所述所述神经形态硬件包含:

- 学习组件LC,

学习组件LC包含以下各项:

- 输入层,包含神经元N的节点嵌入群体NEP,其中每个节点嵌入群体NEP表示被包含在三元组语句T中的实体,

- 其中在所述输入层中,第一神经元形成第一节点嵌入群体NEP1,并且第二神经元形成第二节点嵌入群体NEP2,以及

- 输出层,包含输出神经元,所述输出神经元被配置成用于表示每个可能三元组语句的似然性(likelihood),

并且学习组件LC对从能量函数导出的基于采样的概率模型进行建模,其中三元组语句T具有最小能量,以及

- 控制组件CC,其被配置成用于将学习组件LC切换到如下模式:

- 数据驱动的学习模式,其被配置成用于仅使用被指派有低能量值的三元组语句T、利用最大似然学习算法来训练所述组件LC,所述最大似然学习算法最小化所述基于采样的概率模型中的能量,

- 采样模式,其中学习组件LC支持三元组语句的生成,以及

- 模型驱动的学习模式,其被配置成用于仅使用所生成的三元组语句、利用所述最大似然学习算法来训练所述组件LC,其中学习组件LC进行学习以将高能量值指派给所生成的三元组语句。

在所述神经形态硬件和方法的实施例中,控制组件CC被配置成交替地进行如下操作:通过选择性地激活所述节点嵌入群体NEP当中的主体和客体群体来呈现去往学习组件LC的输入;设置学习组件LC的超参数,特别是设置调节学习组件LC的学习更新LU的因子η;读取学习组件LC的输出;以及使用学习组件LC的输出作为对学习组件LC的反馈。

在所述神经形态硬件和方法的实施例中,所述输出层针对知识图KG的每个可能关系类型具有一个输出神经元。

工业设备包含所述神经形态硬件。

在所述工业设备的实施例中,所述工业设备ED是现场设备、边缘设备、传感器设备、工业控制器(特别是PLC控制器)、实现SCADA系统的工业PC、网络中枢、网络交换机(特别是工业以太网交换机)、或将自动化系统连接到云计算资源的工业网关。

在所述工业设备的实施例中,所述工业设备包括:至少一个传感器S和/或至少一个数据源DS,其被配置成用于提供原始数据RD;ETL组件ETLC,其被配置成用于使用映射规则MR将所述原始数据RD转换成三元组语句T;以及三元组存储库ETS,其存储三元组语句T。学习组件LC被配置成用于在推断模式中执行推断IF。

在所述工业设备的实施例中,所述工业设备包含语句处理程序(statementhandler)SH,所述语句处理程序SH被配置成用于基于学习组件LC的推断IF来触发自动化动作。

服务器包含所述神经形态硬件。

在所述方法的实施例中,知识图KG是描述工业系统的部分的工业知识图,其中知识图KG的节点表示物理对象,包括传感器,特别是工业控制器、机器人、驱动器、所制造的对象、工具和/或材料清单的元素,并且其中知识图KG的节点表示抽象实体,包括传感器测量结果,特别是物理对象的属性、配置或技能、生产时间表和计划。

计算机可读存储介质上存储有可由计算机系统的一个或多个处理器执行的指令,其中所述指令的执行使得所述计算机系统实行所述方法。

计算机程序由计算机系统的一个或多个处理器执行并且实行所述方法。

当结合附图阅读时,从以下详细描述中最好地理解本发明的前述和其他方面。出于说明本发明的目的,在附图中示出了目前优选的实施例,然而,要理解的是,本发明不限于所公开的具体手段。除非另行声明,否则相同的参考符号表示附图之间的相同特征。附图中包括的是以下各图:

图1示出了具有能够进行知识图自我学习的嵌入式系统架构的工业设备ED,

图2示出了在单个架构中将学习和推断进行组合的神经网络的实施例,

图3示出了随机树突输出神经元SDON中的信息处理,

图4示出了如何通过节点嵌入群体来学习实体嵌入,

图5示出了如何从去往随机树突输出神经元SDON的树突分支的输入来直接学习关系嵌入,

图6示出了学习组件LC的数据驱动的学习模式,

图7示出了学习组件LC的采样模式,

图8示出了学习组件LC的模型驱动的学习模式,

图9示出了用于评估三元组语句的学习组件LC的评估模式,

图10示出了具有基于脉冲的神经网络架构的学习组件LC的实施例,

图11示出了第一节点嵌入群体的第一脉冲时间P1ST和第二节点嵌入群体的第二脉冲时间P2ST,

图12示出了用于节点嵌入群体NEP的去抑制(disinhibition)机制,

图13示出了用于节点嵌入群体NEP的监测机制,

图14示出了工业知识图KG的示例,

图15示出了对应于图14中所示的工业知识图KG的三元组语句T的示例,

图16示出了第一节点嵌入群体NEP1与第二节点嵌入群体NEP2之间的脉冲时间差CSTD的计算,

图17示出了针对有效三元组语句(上部分)和无效三元组语句(下部分)的脉冲模式和脉冲时间差的示例,

图18示出了具有固定输入脉冲FIS、编码三个节点嵌入群体NEP的脉冲时间的塑性权重W0、W1、W2的学习组件LC的实施例,该三个节点嵌入群体NEP静态地投射到输出神经元ON的树突隔室,

图19示出了所学习的脉冲时间嵌入的第一示例E_SpikeE-S和所学习的脉冲时间嵌入的第二示例E_SpikE,

图20示出了输出神经元中的所学习的关系嵌入,

图21示出了针对客体的不同程度的合理性对三元组's−p−o'进行的时间评估,

图22示出了知识图KG中的静态工程数据END、动态应用活动AA和网络事件NE的整合,

图23示出了其中应用正在从工业系统读取数据的异常检测任务,以及

图24示出了由学习组件针对异常检测任务生成的得分SC。

在以下描述中,将描述本发明的各个方面以及其实施例。然而,本领域技术人员将理解,实施例可以仅利用其一些或所有方面来实践。出于解释的目的,阐述了具体的数字和配置,以便提供全面的理解。然而,对于本领域技术人员来说还将明显的是,可以在没有这些具体细节的情况下实践这些实施例。

在以下描述中,术语“模式”和“阶段”可互换地使用。如果学习组件在第一模式中运行,则它也在第一阶段的持续时间内运行,并且反之亦然。而且,术语“三元组”和“三元组语句”将可互换地使用。

Nickel, M., Tresp, V. & Kriegel, H.-P.:A three-way model forcollective learning on multi-relational data,in Icml 11(2011),pp. 809–816公开了RESCAL,RESCAL是一种广泛使用的图嵌入算法。该文档的全部内容通过引用并入本文中。

Yang, B., Yih, W.-t., He, X., Gao, J. and Deng, L.:Embedding entitiesand relations for learning and inference in knowledge bases,arXiv preprintarXiv:1412.6575(2014)公开了DistMult,DistMult是对RESCAL的替代方案。该文档的全部内容通过引用并入本文中。

Bordes, A. et al.:Translating embeddings for modeling multi-relational data,in Advances in neural information processing systems(2013),pp. 2787–2795公开了TransE,TransE是一种基于转化(translation)的嵌入方法。该文档的全部内容通过引用并入本文中。

Schlichtkrull, M., Kipf, T.N., Bloem, P., van den Berg, R., Titov, I.and Welling, M.:Modeling Relational Data with Graph Convolutional Networks,arXiv preprint arXiv:1703.06103(2017)公开了图卷积神经网络。该文档的全部内容通过引用并入本文中。

Hopfield, J. J.:Neural networks and physical systems with emergentcollective computational abilities,in Proceedings of the national academy ofsciences 79,pp. 2554–2558(1982)公开了计算神经科学和人工智能的基于能量的模型。该文档的全部内容通过引用并入本文中。

Hinton, G. E., Sejnowski, T. J., et al.:Learning and relearning inBoltzmann machines,Parallel distributed processing: Explorations in themicrostructure of cognition 1,2(1986)公开了玻尔兹曼机器,玻尔兹曼机器使用唤醒-睡眠学习将采样与基于能量的模型进行组合。该文档的全部内容通过引用并入本文中。

Mostafa, H.:Supervised learning based on temporal coding in spikingneural networks,in IEEE transactions on neural networks and learning systems29.7(2017),pp. 3227–3235公开了nLIF模型,nLIF模型与下面的部分“权重梯度”和“权重正则化”特别相关。该文档的全部内容通过引用并入本文中。

Comsa, I. M., et al.:Temporal coding in spiking neural networks withalpha synaptic function,arXiv preprint arXiv:1907.13223(2019)公开了对用于基于电流的LIF模型的Mostafa(2017)的结果的扩展。该文档的全部内容通过引用并入本文中。

Göltz, J., et al.:Fast and deep: Energy-efficient neuromorphiclearning with first-spike times,arXiv:1912.11443(2020)也公开了对用于基于电流的LIF模型的Mostafa(2017)的结果的扩展,从而允许在神经形态学和更复杂的动力学中的广泛应用。该文档的全部内容通过引用并入本文中。

图1示出了具有能够进行知识图自我学习的嵌入式系统架构的工业设备ED。工业设备ED可以基于观察结果以自我监督的方式进行学习,并且基于所学习的算法来执行推断任务(例如,链接预测)。学习模式与推断模式之间的切换可以是自主的,或者基于来自于外部系统或操作者的刺激。工业设备ED在单个架构上整合了关于知识图数据的学习和推断,如下文中将描述的那样。

工业设备ED包含一个或多个传感器S或连接到它们。该工业设备也可以连接到一个或多个数据源DS或包含它们。换句话说,数据源DS也可以是本地的,例如包含或提供PLC控制器中的内部事件。

该工业设备的示例是现场设备、边缘设备、传感器设备、工业控制器(特别是PLC控制器)、实现SCADA系统的工业PC、网络中枢、网络交换机(特别是工业以太网交换机)、或将自动化系统连接到云计算资源的工业网关。

传感器S和数据源DS将原始数据RD馈送到工业设备ED的ETL组件ETLC中。ETL组件ETLC的任务是:根据以一组映射规则MR的形式从外部被部署在工业设备ED中的预定义词汇(一组实体和关系),将在工业设备ED处观察到的并且作为原始数据RD接收到的传感器数据和其他事件提取、变换并加载(ETL)成三元组语句T。映射规则MR可以映射原始数据RD中包含的本地观察结果,诸如传感器值、内部系统状态、或对三元组语句T的外部刺激,三元组语句T是采用形式's−p−o'(实体s与实体o具有关系p)的语义三元组,例如RDF三元组。文献中存在将原始数据RD映射到三元组语句T的不同替代方案,例如用于关系数据库数据与RDF之间的映射的R2RML。在这种情况下,可以生成类似的格式,以将原始数据RD中包含的事件映射到三元组语句T。R2RML的替代方案是RML,RML是即将到来的更通用的标准,它不限于关系数据库或表格数据。

三元组语句T的示例是:

-“temperature_sensor has_reading elevated”,

-“ultrasonic_sensor has_state positive”,

-“machine_operator sets_mode test”,或

-“applicationX reads_data variableY”,

它们对应于如下事件,诸如:

- 作为传感器S之一的内置温度传感器示出了高于通常读数的读数,

- 作为传感器S之一的超声传感器检测到对象,

- 操作者将设备设置在测试模式中,或者

- 外部应用读取某些本地变量。

后一种信息可以从如下事件来获得:这些事件被记录在工业设备ED的内部存储器中并且被馈送到原始数据RD中。ETL组件ETLC应用映射规则MR,从而将原始数据RD中包含的本地读数的特定集合转换成三元组语句T。

三元组语句T被存储在嵌入式三元组存储库ETS中,从而创建动态改变的知识图。嵌入式三元组存储库ETS是工业设备ED的永久存储装置(诸如,SD卡或硬盘)中的本地数据库。

除了先前描述的三元组语句T——它们由ETL组件ETLC在本地动态地创建并且可以被称为观察到的三元组语句——之外,嵌入式三元组存储库ETS还可以包含预加载的一组三元组语句,这些三元组语句构成了静态子图SSG,即不依赖于原始数据RD中包含的本地观察结果的、即本质上是静态的知识图的部分。静态子图SSG可以提供例如该系统的自我描述(例如,哪些传感器可用、哪些用户角色或应用可以与其交互等)。静态子图SSG的三元组语句也被存储在嵌入式三元组存储库ETS中。它们可以链接到观察到的数据,并且提供附加的情境。

被存储在嵌入式三元组存储库ETS中的所有三元组语句被提供给学习组件LC——该架构的中心元件。学习组件LC实现机器学习算法,诸如下面描述的机器学习算法。学习组件LC可以执行学习以及推断(预测)两者。它由控制组件CC来控制,控制组件CC可以或自主地(例如,周期性地)或基于外部刺激(例如,特定系统状态或操作者提供的输入)在学习组件LC的不同操作模式之间切换。

学习组件LC的所选操作模式中的一个是学习模式,其中三元组语句T被提供给学习组件LC,作为响应,学习组件LC根据如下描述的特定成本函数利用学习更新LU来迭代地更新其内部状态。另外的操作模式是推断模式,其中学习组件LC做出关于未观察到的三元组语句的似然性的预测。推断模式可以是:自由运行模式,由此学习组件LC基于所累积的知识来生成随机三元组语句;或目标推断模式,其中控制组件CC以评估特定三元组语句的似然性的这种方式来专门设置学习组件LC。

最后,工业设备ED可以被编程为:只要学习组件LC以推断IF预测出特定事件,就采取特定动作。这种动作的编程是经由一组处理规则HR来进行的,这些处理规则HR将特定三元组语句映射到要执行的软件例程。处理规则HR由语句处理程序SH来执行,语句处理程序SH接收学习组件LC的推断IF。

例如,在链接预测设置中,推断IF可以是由学习组件LC对某个三元组语句(例如,“system enters_state error”)的预测。该推断IF可以触发例程,该例程提醒人类操作者或发起对工业设备ED或所连接系统的受控关闭。与链接预测不同,其他类型的触发也是可能的。例如,在异常检测设置中,只要学习组件LC做出的特定三元组语句的预测似然性(推断IF)为低,这指示非预期事件已经发生,就可以将处理程序与该特定三元组语句的实际观察结果相关联。

在简单的情况下,处理规则HR可以被硬编码在工业设备ED(例如,尝试预测火灾的似然性的火灾报警器)中,但是在更一般的情况下,可以在来自外部源的更复杂设备(例如,作为工业设备ED的PLC控制器)中对处理规则HR进行编程,从而将学习组件LC的预测链接到可编程软件例程,诸如PLC功能块。

下文中描述了适合于实现学习组件LC和/或控制组件CC的各种学习算法和优化函数。这些算法中的一些以无缝的方式将学习和推断进行组合,并且适合于在低功率、高度可伸缩的处理单元(例如,神经网络加速器或神经形态处理器,诸如脉冲神经网络系统)中实现。

学习组件LC(以及控制组件CC,如果它指导学习过程的话)可以利用任何可以在知识图的基础上训练的算法来实现。嵌入式三元组存储库ETS包含从系统观察结果中导出的潜在多个图(由ETL组件ETLC生成的三元组语句T,加上构成静态子图SSG的预加载的该组三元组语句)。可以在时间的基础上(例如,将对应于特定时间段的观察结果进行分割)或任何其他类似的标准来完成到多个图的分割(separation),例如,在工业制造系统中,当观察到三元组语句T时,可以取决于该工业制造系统正在执行的动作的类型、或正在制造的物品的类型来执行将三元组语句T分割成独立的图。

学习组件LC(以及控制组件CC,如果它指导学习过程的话)可以使用能够学习针对固定图的表示的直推式算法(例如,RESCAL、TransE或DistMult)或者可以学习跨不同的图进行一般化的滤波器的归纳式算法(例如,图卷积神经网络(图CNN))来实现。在前者的情况下,针对每个图来训练个体模型(将对应于每个单个图的三元组语句T馈送到独立的模型实例),而在后者的情况下,基于所有图来训练单个模型。

在任一种情况下,我们都可以在学习模式与推断模式之间进行区分,在学习模式中,三元组语句T被呈现给学习组件LC,学习组件LC学习求解特定训练目标所需的一组内部操作、参数和系数,在推断模式中,学习组件LC基于所学习的参数来评估新观察到的或假设的三元组语句的似然性。训练目标定义了学习组件LC中所实现的学习算法尝试解决的任务,从而在该过程中调整模型参数。如果工业设备ED是嵌入式设备,则以半监督或无监督的方式——即,在不明确提供地面真值标签(即,对该问题的解)的情况下——执行该步骤是有利的。在图算法的情况下,这可以例如通过使用链接预测任务作为训练目标来实现。在这种设置中,利用包含来自观察到的三元组的样本、连同内部生成的负示例(未观察到的语义三元组)的批(batch)来迭代地呈现学习过程,其目标是最小化基于所选示例的损失函数,从而相应迭代地调整模型参数,当该算法分别向正示例和负示例指派高和低似然性时,该损失函数将指派较低的损失。

所选择的算法确定了特定内部操作和参数、以及指导该学习过程的特定损失/评分函数,这可以在工业设备ED的常规CPU或DSP处理单元中实现,或者替代地在专用机器学习协处理器上实现。例如,在RESCAL实现方式的情况下,初始地,将图转换到其邻接形式(adjacency form),利用该邻接形式,执行RESCAL梯度下降优化过程。在稍后的实施例中将更详细地解释这种方法的数学基础。DistMult的评分函数提供了替代方案,DistMult通过在所学习的表示中强加附加约束来减少参数的数量。另外的替代方案将是使用基于转化的嵌入方法,诸如TransE,TransE使用客体嵌入与主体嵌入之间的距离,该客体嵌入和主体嵌入由连接了它们的谓词的向量表示来转化。

先前的示例可以被认为是基于解码器的嵌入方法。在基于图CNN的实现方式的情况下,要训练的算法由编码器和解码器组成。编码器包括多个卷积和密集滤波器,这些滤波器被应用于在张量公式(tensor formulation)中提供的观察到的图,该观察到的图由指示节点之间的现有边的邻接矩阵、以及一组节点特征来给出,这些节点特征通常对应于文字值,这些文字值被指派给在嵌入式三元组存储库ETS中以RDF表示存在的对应节点,可选地,可以预先对这些文字值应用变换(例如,如果文字属于数字类型,则是聚类步骤,或者如果文字属于分类类型,则是简单编码成整数值)。另一方面,解码器可以由DistMult或类似的解码器网络来实现,该解码器网络根据实体嵌入对来执行链接评分。

应当注意的是,除了在学习期间优化的可调参数之外,知识图学习算法所需的大多数得分函数通常还包含控制学习组件LC本身的学习过程的超参数的集合,诸如学习速率、批大小、迭代计数、聚合方案、以及损失函数中存在的其他模型超参数。在本实施例的情境中,这些可以在工业设备ED中的控制组件CC和/或学习组件LC内被预先配置有通过离线实验确定的已知工作值。直接在工业设备ED上执行完全或部分超参数搜索和调整的替代方案也将是可能的,代价是可能必须执行增加数量的学习步骤,以便基于出于此目的而预留的一组附加三元组语句在本地评估针对超参数的不同集合的算法的性能。

为了设置工业设备ED,需要定义映射规则MR并且将其存储在工业设备ED上。该学习过程可以利用进入控制组件CC的外部操作者输入以及反馈来控制,或者如上所描述的那样是自主的。

图2示出了采用神经网络形式的学习组件LC的实施例,该神经网络在单个架构中将学习和推断进行组合。这里,学习组件LC被体现为在相同基底(substrate)中实现推断和学习的概率学习系统。学习组件LC的状态由能量函数E来描述,该能量函数E对三元组语句(或若干个三元组语句)是否为真进行排名(rank),其中真三元组语句具有低能量,并且假三元组语句具有高能量。下面将给出能量函数E的示例。根据能量函数E,可以导出学习组件LC的组件之间的交互。为了简单起见,我们描述了用于DistMult评分函数的学习组件LC的概率学习系统,并且稍后提供了至RESCAL的一般化。

学习组件LC由两个部分组成:第一部分,神经元N的节点嵌入群体NEP的池,节点嵌入群体NEP表示图实体(即,三元组语句中的主体和客体)的嵌入;第二部分,执行计算(对三元组语句进行评分,提出新的三元组语句)的随机树突输出神经元SDON的群体。类似于图1,控制组件CC用于向学习组件LC提供输入,并且在学习组件LC的不同操作模式之间进行切换。控制组件CC接收输入INP并且具有输出OUT。

图中的每个实体由节点嵌入群体NEP中的一个来表示,节点嵌入群体NEP存储其嵌入(实值条目)和所累积的梯度更新两者。每个节点嵌入群体NEP的神经元N静态地一对一投射到随机树突输出神经元SDON的树突隔室,其中将输入与第三因子R相乘在一起,如图3中所示。

在图2中所示的示例中,左侧和右侧的节点嵌入群体NEP是活动的(active),而中间的节点嵌入群体NEP是被动的(passive)。

图3示出了随机树突输出神经元SDON中的一个中的信息处理。值R被存储在树突中,并且表示知识图中的关系的嵌入,换句话说,由三元组语句在主体与客体之间给出的关系的嵌入。所有树突分支上的总和SM——其是对电流的被动和线性求和——产生了最终得分,该最终得分使用激活函数AF被变换成概率。通过从激活函数AF进行采样,产生了二元输出(类似于脉冲神经网络中的脉冲,参见稍后的实施例),该二元输出发信号通知三元组语句是被接受(=真)还是被拒绝(=假)。

返回到图2,使用控制组件CC,可以在节点嵌入群体NEP当中选择性地激活主体和客体群体(所有其他群体被静默(silence),对于可能的机制,参见稍后的实施例)。随机树突输出神经元SDON之间的抑制IH保证了只有最强的(或第一个)做出响应的随机树突输出神经元SDON产生输出,这是因为抑制IH使该输出神经元SDON的邻居静默(赢家通吃电路/抑制性竞争,尽管该特征不是严格要求的)。此外,在给定三元组语句(s,p,o)的情况下,学习组件LC可以用于基于先前学习的知识来创建新的三元组语句(s,p,o')或(s',p,o)(或者原则上还有(s,p',o)),这取决于嵌入空间中的移动是增加还是减少该系统的能量(使用Metropolis-Hastings算法,参见稍后的实施例)。当通过节点嵌入群体NEP中的计算嵌入之间的差异的附加电路被附加时,这些操作也可以由学习组件LC来执行(参见稍后的实施例)。通过将学习组件LC的输出反馈到控制组件CC中,可以在反馈回路中读出结果或者直接使用结果,从而允许例如基于学习组件LC已经学习的内容或模式完成(即,对不完整三元组语句(s,p,

一般而言,学习组件LC可以在由单个参数η= [1,0,−1]控制的三种模式或阶段中操作,这三种模式或阶段是:如图6中所示的数据驱动的学习模式(η= 1),其是正学习模式;如图7中所示的采样模式(η= 0),其是自由运行模式;以及如图8中所示的模型驱动的学习模式(η= −1),其是负学习(遗忘)模式,其中采样模式期间生成的样本被呈现为负示例。通过按该次序切换这些模式,学习组件LC可以首先在数据驱动的学习阶段中操作,然后在采样阶段中操作,并且然后在模型驱动的学习阶段中操作。

附加输入ζ用于明确地控制可塑性,即如何钳制(clamp)随机树突输出神经元SDON、应用更新或清除(重置为0)所累积的更新。可以在学习组件LC中在本地(在空间和时间两者上)计算针对实体和关系嵌入的学习更新LU(如图1中所示)。针对每个实体嵌入的学习更新LU可以使用从每个随机树突输出神经元SDON到相应节点嵌入群体NEP的神经元N的静态反馈连接FC来计算,如图4中所示的那样。针对关系嵌入的学习更新LU可以直接在随机树突输出神经元SDON的树突树中计算,如图5中所示的那样。学习更新LU不需要任何全局计算操作,例如访问全局存储器组件。使用学习更新LU,学习组件LC学习对构成数据生成过程的基础的分布进行建模,如将在稍后的实施例中更详细地描述的那样。

换句话说,图4示出了如何使用在随机树突输出神经元SDON的树突中接收到的本地量LQ来学习实体嵌入,这些实体嵌入经由静态反馈连接FC被发送回到嵌入了相应实体的节点嵌入群体NEP的神经元N。图5示出了如何从去往随机树突输出神经元SDON的树突分支的输入来直接学习关系嵌入。

图6-9示出了学习组件LC可以在其中运行的不同阶段或模式,其示出了图2-5示出的学习组件LC的相同结构,特别是随机树突输出神经元SDON和具有神经元N的节点嵌入群体NEP。两个节点嵌入群体NEP是活动的。它们中的一个可以表示三元组语句的主体,并且另一个可以表示客体。图6和8中的三角形标示激励输入EI,而图7和9中的三角形标示抑制输入II(以选择随机树突输出神经元SDON)。

在图6中所示的数据驱动的学习模式中,将数据(例如,图1和15中所示的三元组语句T)呈现给学习组件LC,并且累积参数更新,以便将三元组语句T铭刻(imprint)。

在图7中所示的采样模式中,学习组件LC生成三元组语句。更具体地,三元组语句的潜在排列(permutation)由控制组件CC迭代地生成,并且被呈现给学习组件LC,其中随机树突输出神经元SDON的输出向控制组件CC指示所建议的三元组语句是否是有前景的。

图8示出了用于重放(replay)先前(在采样模式中)生成的三元组语句的模型驱动的学习模式,其中所生成的三元组语句被用于负参数更新,负参数更新使学习组件LC遗忘所生成的三元组语句。

图9示出了用于评估三元组语句的学习组件LC的评估模式,该评估模式类似于图6中所示的数据驱动的学习模式和图8中所示的模型驱动的学习模式,但是学习已经被关闭。图9中所示的评估模式可以用于对所呈现的三元组语句进行评分。

在许多实体的情况下,为了减少所需连线的量,可以在节点嵌入群体NEP与随机树突输出神经元SDON之间使用稀疏连接。为了实现RESCAL评分函数,每个节点嵌入群体NEP必须被加倍(针对主体和客体加倍一次,因为评分函数是不对称的)。以这种方式,每个图实体现在具有两个嵌入(分别针对主体和客体),这两个嵌入可以通过将“subj_embeddingisIdenticalTo obj_embedding”三元组语句包含在训练数据中而再次被同步。

学习组件LC将全局参数、反馈和本地操作进行组合,以实现可由控制组件CC控制的所呈现的分布式计算,从而允许相同系统中的推断与学习之间的无缝转移。

基于张量的图嵌入

广泛使用的图嵌入算法是RESCAL。在RESCAL中,图被表示为张量

其中每个图实体

这可以使用交替的最小二乘优化或基于梯度下降的优化来完成。通常,我们仅知道有效的三元组,并且所有其他三元组的有效性对我们来说是未知的,并且不能够通过将相应张量条目设置为0来建模。然而,仅在正三元组上进行训练将会产生平凡解(trivialsolution),这些平凡解将所有可能的三元组评分为高。为了避免这种情况,通过在数据三元组中随机交换主体或客体实体来从训练数据中生成所谓的‘负样本’,例如'

基于能量的张量分解

我们提出了基于能量函数的图嵌入的概率模型,该能量函数从RESCAL评分函数取得启发。基于能量的模型在计算神经科学和人工智能方面具有长的历史,并且我们将此用作载体来探索可能的动态系统,这些动态系统能够实现对多关系图数据的计算。

针对三元组的能量函数

给定表示图(或子图)的张量

其中

其中

其中我们对所有可能的图实现

其中

最大似然学习

使用最大似然学习来训练该模型,即,调整节点和边嵌入,使得观察到的三元组的似然性(或对数似然性)被最大化:

其中

关系进行学习以匹配与它们一起出现的主体和客体嵌入的内积,而节点嵌入进行学习以匹配它们的对应物的隐表示(latent representation),例如,如果三元组'

用于三元组生成的采样

为了从该模型生成三元组,我们使用马尔可夫链蒙特卡罗(MCMC)采样——更精确地说,是Metropolis-Hastings算法——其中以负采样作为提议分布(proposaldistribution)。例如,如果三元组(

转移概率直接取决于嵌入之间的距离,即,如果节点(或关系)的嵌入彼此靠近,则转移更有可能。可以在新样本上重复该过程以生成样本链,从而探索该模型分布下的数据三元组的邻域。它可以进一步用于近似条件或边际概率,例如通过保持主体固定以及对谓词和客体进行采样。

网络实现

所描述的学习规则和采样动力学表明了如图2-5中所示的具有特定连接和神经元类型的神经网络结构。实体嵌入

其中

图2示出了用于学习组件LC的所提出的网络架构的示意图。节点嵌入群体NEP静态地连接到实现评分函数

图3描绘了随机树突输出神经元SDON中的一个。首先,将输入与存储在分支中的权重进行组合以形成三元组乘积,随后对这些三元组乘积进行求和。该输出可以被解释为对三元组的似然性的预测(

图4示出了使用静态反馈连接FC来传输节点嵌入的更新。

图5示出了仅需要在随机树突输出神经元SDON中本地可用的信息的关系嵌入的更新。

其中仅当随机树突输出神经元SDON“产生脉冲”(即,采样

在该架构中,学习规则等式(11)采用对比性赫布(contrastive Hebbian)学习规则的形式,并且等式(12)采用对比性预测学习规则的形式。为了更新节点嵌入群体NEP的嵌入,必须将反馈信号从随机树突输出神经元SDON发送到神经元N——由于简单且静态的正向连接,这可以通过预先连线的反馈结构来完成,如图4中所示的那样。为了更新关系权重,仅需要对于树突可用的本地信息,如图5中所示的那样。

通过选择相应的节点嵌入群体NEP和随机树突输出神经元SDON,将输入呈现给该网络,这可以通过抑制门控来实现,抑制门控类似于所学习的概念的“记忆回叫(memoryrecall)”。替代地,概念的所学习的嵌入也可以被解释为记忆网络的吸引子状态(attractor state)。在采样阶段期间,来自随机树突输出神经元SDON的反馈(等式(13))用于决定该网络是否切换到另一个记忆(或吸引子状态)。

图10示出了学习组件LC的另一个实施例,该另一个实施例是基于脉冲的神经网络架构。固定输入脉冲FIS由神经元的输入群体来提供作为时间事件,并且通过可训练权重被馈送到节点嵌入群体NEP,从而产生嵌入脉冲时间。节点嵌入群体NEP与可训练权重一起形成输入层或嵌入层,并且包含非泄漏整合和激发神经元nLIF,该神经元nLIF将在稍后的实施例中更详细地描述,并且每个神经元nLIF恰好产生一个脉冲(即,时间上的离散事件),以编码节点嵌入。通过修改将固定输入脉冲FIS连接到非泄漏整合和激发神经元nLIF的权重,可以改变嵌入脉冲时间。此外,非泄漏整合和激发神经元nLIF连接到输出神经元ON。

正向推断路径和学习路径两者仅需要脉冲时间,并且利用了在当前一代基于脉冲的神经形态处理器中找到的生物学启发的神经元模型,如将在稍后的实施例中更详细地描述的那样。此外,类似于先前实施例,利用节点嵌入群体NEP与输出神经元ON之间的静态反馈连接来传输参数更新。与先前实施例不同,该系统不执行概率采样。

图11示出了第一节点嵌入群体的第一脉冲时间P1ST和第二节点嵌入群体的第二脉冲时间P2ST。在该示例中,每个节点嵌入群体由八个非泄漏整合和激发神经元nLIF组成,这些神经元nLIF根据其神经元标识符NID在垂直轴上被排序。相应的脉冲时间被示出在水平时间轴t上。

图11示出了以t

为了选择节点嵌入群体NEP(例如,图10中所示的两个活动的节点嵌入群体NEP),我们使用了如图12中所示的去抑制机制。这里,节点嵌入群体NEP中的一个与其非泄漏整合和激发神经元nLIF被一起示出。在默认情况下,持续活动的抑制性神经元IN利用抑制IH使非泄漏整合和激发神经元nLIF静默。经由充当抑制IH的外部输入INP,抑制神经元IN可以被抑制,从而释放节点嵌入群体NEP以自由地产生脉冲。

图13示出了类似的“门控”机制,该机制可以被引入以例如通过使用简单地模仿其输入的鹦鹉神经元PN来始终监测在学习组件LC中编码的三元组语句,可以将抑制IH应用于鹦鹉神经元PN,同时节点嵌入群体NEP的非泄漏整合和激发神经元nLIF连接到监测神经元MN,该监测神经元MN是始终监测某些三元组语句的有效性的新的附加输出神经元。例如,在学习期间,语句“temperature_sensor has_reading elevated”可能变得有效,即使我们在数据流中没有遇到它。这些监测神经元MN必须与输出神经元ON同步,但是这可能在比学习发生慢得多的时间尺度上。通过使用鹦鹉神经元PN来扩展学习组件LC,可以实现持续监测。

针对以下实施例,等式的编号将开始是新的。

在下文中,我们解释了基于脉冲的图嵌入模型(SpikE),并且导出了所需的学习规则。

基于脉冲的图嵌入

从图到脉冲:

我们的模型从TransE得到启发,TransE是一种浅层图嵌入算法(shallow graphembedding algorithm),其中节点嵌入被表示为向量,并且关系被表示为向量转化(更多细节,参见小节“转化嵌入”)。原则上,我们发现这些向量表示可以被映射到脉冲时间,并且转化成脉冲时间差,从而提供了从图领域到SNN的自然过渡。

我们提出:节点s的嵌入是由大小为N的第一节点嵌入群体NEP1的单脉冲时间

换句话说,图16示出了基于脉冲的编码方案,用以将图结构嵌入到SNN中。第一节点由第一节点嵌入群体NEP1来表示,并且第二节点由第二节点嵌入群体NEP2来表示。第一节点的嵌入由第一节点嵌入群体NEP1中的每个神经元nLIF的个体脉冲时间给出。第二节点的嵌入由第二节点嵌入群体NEP2中的每个神经元nLIF的个体脉冲时间给出。在脉冲时间差计算CSTD之后,学习组件在模式解码步骤DP中评估在第一节点与第二节点之间某些关系是否有效。

图17示出了针对有效三元组语句(上部分)和无效三元组语句(下部分)——即,其中模式与关系不匹配——的脉冲模式和脉冲时间差的示例。在这两种情况下,我们使用了相同的主体,但是使用了不同的关系和客体。图17的上部分示出了:编码三元组语句中的主体实体的(第一节点嵌入群体的)第一脉冲时间P1ST和编码该三元组语句中的客体实体的(第二节点嵌入群体的)第二脉冲时间P2ST与该三元组语句的关系的表示RP一致,即

该编码方案将图的丰富语义空间映射到脉冲领域中,其中两个群体的脉冲模式对所表示的实体如何彼此关联进行编码,但不是仅仅针对一个单一关系p,而是针对跨越语义空间的整个关系集合。为了实现这一点,所学习的关系包含一系列模式,这些模式从仅仅重合检测(coincidence detection)至复杂的脉冲时间模式。事实上,当在真实数据上训练SNN时,作为脉冲重合检测的关系的编码在我们的模型中自然会作为特殊情况出现,例如参见图20。这种脉冲嵌入可以直接用于预测或评估新的三元组,或者作为去往其他SNN的输入,这些SNN可以使用在嵌入中编码的语义结构以进行后续任务。

从形式上,三元组的排名可以写为:

其中

其中脉冲时间的次序和距离两者都用于对关系进行编码。可以修改该距离函数以仅并入脉冲时间差,

使得在主体与客体群体之间不存在差异。我们将该版本的模型称为Spike-S。

网络实现:

图18示出了可以被实现为任何种类的神经形态硬件的学习组件LC的实施例,其示出了固定输入脉冲FIS、编码三个节点嵌入群体NEP的脉冲时间的塑性权重W

满足所提出的编码方案的要求(即,单脉冲编码并且是可用解析方法来处理的)的合适神经元模型是nLIF神经元模型。出于类似的原因,它最近已经被用于利用脉冲时延码(spike-latency code)的层级式网络中。针对编码实体的神经元群体(节点嵌入群体),我们使用具有指数突触核的nLIF模型:

其中

可以用解析方法来求解等式(4):

其稍后被用于导出针对嵌入群体的学习规则。

针对关系,我们使用输出神经元ON。每个输出神经元ON由“树突树”组成,其中分支

与普通的前馈或递归SNN不同,输入不是由如下信号给出的:该信号首先必须被转化成脉冲时间,并且然后被馈送到该网络的第一层(或特定输入神经元)中。取而代之,去往该网络的输入是观察到的三元组'

学习规则:

为了学习针对实体和关系的基于脉冲的嵌入,我们使用软边际损失:

其中,η

通过经由梯度下降来最小化损失等式(6b)从而导出学习规则。此外,我们向对抗(counter)静默神经元的权重学习规则添加正则化项。实体的梯度可以被分割成损失相关误差和神经元模型特定项:

而关系的梯度仅由误差

它们用于SpikE,以及由下式给出:

它们用于SpikE-S,其中

可以使用等式(5)来评估神经元特定项,从而得到(参见小节“基于脉冲的模型”):

针对关系,可在输出神经元ON中访问更新规则中的所有量。除了输出误差之外,这对于nLIF脉冲时间的更新规则也是如此。具体地,学习规则仅取决于脉冲时间——或者更确切地说是脉冲时间差——突触前权重和神经元特定常数,这与用于SNN的最近提出的学习规则相兼容。

实验

数据:

图22示出了用作数据源的工业系统。静态工程数据END(例如,关于图1描述的静态子图SSG)、动态应用活动AA和网络事件NE(例如,关于图1描述的原始数据RD)被整合在知识图KG中,以便由学习组件来处理。

为了评估基于脉冲的模型的性能,我们从工业自动化系统中生成了图数据,如图22中所示。该工业自动化系统本身由若干个组件构成,这些组件如传送带、可编程逻辑控制器(PLC)、网络接口、灯、相机、传感器等。边缘计算机上托管的软件应用可以通过访问来自PLC控制器的数据与该工业自动化系统进行交互。此外,系统组件还可以通过内部网络来彼此交互、或者访问互联网。这三个领域——工业机器规范、网络事件和app数据访问——被整合在我们用于训练和测试的知识图KG中。

针对以下实验,我们使用来自该工业自动化系统的记录,该记录具有一些默认的网络和app活动,从而得到知识图KG,其具有3529个节点、11个节点类型、2个应用、21个IP地址、39个关系、360个网络事件和472个数据访问事件。我们以8/2的比例将该图随机划分成互相排斥的训练集和测试集,从而得到12399个训练三元组和2463个测试三元组。

图19示出了固定输入脉冲FIS、以及用于SpikE-S的所学习的脉冲时间嵌入的第一示例E_SpikeE-S和用于SpikE的所学习的脉冲时间嵌入的第二示例E_SpikE。这些示例是沿着水平时间轴t和针对神经元标识符NID的垂直轴来标绘的。

图20示出了输出神经元中的所学习的关系嵌入。在SpikE-S的情况下,仅学习正脉冲时间差。在这两种情况下,学习复杂的脉冲差模式来编码关系,以及学习主要依赖于重合检测(中间)、即

图21示出了针对客体的不同程度的合理性对三元组's−p−o'进行的时间评估。正三元组POS在训练期间已经被看到,中间三元组INT在训练期间未被看到但是可信,并且负三元组NEG最不可信(对于类似实验,还参见图23)。与缺乏时间概念的TransE不同,SpikE偏好其中大多数神经元较早地产生脉冲的嵌入,从而允许对得分进行更快评估。线示出了平均得分,并且阴影区域标记了10个不同随机种子的第15个和第85个百分位数。

图23示出了其中应用正在从工业系统读取数据的异常检测任务。存在各种方式将训练期间访问的数据变量连接到该工业系统中的其他数据变量。例如,它们可能通过机器M的工程数据中记载的内部结构而连接,可从相同的工业控制器PLC来访问,或者仅共享基于类型的相似度TP。为了支持情境感知决策制定,将学习组件应用于异常检测任务,其中应用在训练和测试期间从该工业系统读取不同的数据变量。在学习组件的训练期间,该应用仅读取来自第一实体E1的数据,而不读取来自第二实体E2、第三实体E3和第四实体E4的数据。

图24示出了由学习组件针对关于如下数据事件的异常检测任务所生成的得分SC,在这些数据事件中,图23中所示的应用访问了不同的数据变量DV。针对第一实体E1、第二实体E2、第三实体E3和第四实体E4,将得分进行分组。如预期的那样,数据变量DV与训练期间读取的数据变量越不相关,其中#app_1访问它们的事件的得分就越差。这里,从不同PC所托管的第二应用也是活动的,该第二应用规律地从具有高不确定度的第三实体E3读取两个数据变量,即#app_1的嵌入也关于#app_2的行为进行学习。如根据基于图的方法所预期的那样,通过考虑通过知识图的结构可获得的情境信息,学习组件能够针对不同的变量访问产生分级得分。

我们提出了针对基于脉冲的图嵌入的模型,其中知识图的节点和关系分别被映射到SNN中的脉冲时间和脉冲时间差。这允许从图中的符号化元素自然过渡到SNN的时间域,从而通过使得能够将复杂结构编码成脉冲而超越了传统的数据格式。在输出成本函数上使用梯度下降来学习表示,这产生了依赖于脉冲时间和神经元特定变量的学习规则。

在我们的模型中,输入对哪些群体变为活动并且因此通过可塑性被更新进行门控。这种记忆机制允许知识通过所有神经元群体的传播——尽管该输入是隔离的三元组语句。

在训练之后,可以使用所学习的嵌入来评估或预测知识图的语义空间所覆盖的任意三元组。此外,所学习的脉冲嵌入可以用作去往其他SNN的输入,从而提供数据到基于脉冲的输入的原生转换(native conversion)。

本实施例中使用的nLIF神经元模型非常适合于表示嵌入,但是它具有缺少泄漏项的缺点,即,神经元被建模为具有无限记忆的积分器(integrator)。这对于神经形态实现是至关重要的,在该神经形态实现中,最经常的是实现具有泄漏的nLIF模型的变型。可以在替代实施例中使用基于电流的LIF神经元(即,具有泄漏的nLIF)的基于梯度的优化,从而使得它们可适用于能量高效的神经形态实现。此外,输出神经元采取与普通nLIF神经元不同的简单但功能特定的形式。尽管可用神经形态设备来实现,但是我们认为替代形式是可能的。例如,每个输出神经元可能由脉冲神经元的小正向网络来表示,或者关系可以由可学习的延迟来表示。

最后,所呈现的结果桥接了图分析和SNN的领域,从而有希望激励基于事件的神经形态设备的工业应用,该神经形态设备例如作为用于工业图数据的在线评估的能量高效且灵活的处理和学习单元。

方法

转化嵌入

在TransE中,实体和关系作为向量被嵌入在N维向量空间中。如果三元组'

在我们的实验中,类似于SpikE,我们使用软边际损失来学习TransE的嵌入。

基于脉冲的模型

脉冲时间梯度:

其中

可以类似地获得所有其他梯度。

权重梯度:

可以通过将膜电位设置为等于脉冲阈值

此外,为了使神经元产生脉冲,必须满足三个附加条件:

• 神经元尚未产生脉冲,

• 输入足够强,以致于将膜电位推至阈值以上,即,

• 脉冲出现在下一个因果突触前脉冲

根据此,我们可以计算梯度:

其中我们使用了

权重的正则化:

为了确保嵌入群体中的所有神经元产生脉冲,我们使用正则化项

其中

交替门控

如图13中所示和上面所讨论的那样,对节点嵌入群体NEP的单独门控可以使用鹦鹉神经元PN来实现,该鹦鹉神经元PN立即传输它们的输入,像中继线一样起作用。可以对鹦鹉群体进行门控,而不是对节点嵌入群体NEP本身进行门控。这进一步允许评估将相同的主体和客体群体作为目标的关系。

对主体和客体群体进行同步

如果一实体由不同的主体

该方法可以由处理器来执行。该处理器可以是微控制器或微处理器、专用集成电路(ASIC)、神经形态微芯片,特别是神经形态处理器单元。该处理器可以是任何种类的计算机的一部分,包括诸如平板计算机、智能电话或膝上型电脑之类的移动计算设备,或者可以是控制室或云中的服务器的一部分。例如,计算机系统的处理器、控制器或集成电路和/或另一个处理器可以被配置成实现本文中描述的动作。

上面描述的方法可以经由包括一个或多个计算机可读存储介质的计算机程序产品来实现,该计算机可读存储介质上存储有可由计算系统的一个或多个处理器执行的指令。指令的执行使得该计算系统执行与上面描述的方法的动作相对应的操作。

用于实现本文中描述的过程或方法的指令可以在非暂时性计算机可读存储介质或存储器上提供,该存储介质或存储器诸如高速缓存、缓冲器、RAM、FLASH、可移除介质、硬盘驱动器或其他计算机可读存储介质。计算机可读存储介质包括各种类型的易失性和非易失性存储介质。可以响应于存储在计算机可读存储介质中或其上的一个或多个指令集来执行附图中图示或本文中描述的功能、动作或任务。这些功能、动作或任务可以独立于特定类型的指令集、存储介质、处理器或处理策略,并且可以由单独或组合地操作的软件、硬件、集成电路、固件、微代码等来执行。同样地,处理策略可以包括多处理、多任务、并行处理等。

已经参考本发明的实施例和示例详细描述了本发明。然而,可以在权利要求所覆盖的本发明的精神和范围内实现变型和修改。作为替代表述的短语“A、B和C中的至少一个”可以规定的是:可以使用A、B和C中的一个或多个。

技术分类

06120114735420