CN113296992A - 异常原因确定方法、装置、设备和存储介质 - Google Patents

异常原因确定方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN113296992A
CN113296992A CN202110327821.6A CN202110327821A CN113296992A CN 113296992 A CN113296992 A CN 113296992A CN 202110327821 A CN202110327821 A CN 202110327821A CN 113296992 A CN113296992 A CN 113296992A
Authority
CN
China
Prior art keywords
operation data
determining
feature vector
data
embedded feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110327821.6A
Other languages
English (en)
Inventor
李非
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Innovation Co
Original Assignee
Alibaba Singapore Holdings Pte Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Singapore Holdings Pte Ltd filed Critical Alibaba Singapore Holdings Pte Ltd
Priority to CN202110327821.6A priority Critical patent/CN113296992A/zh
Publication of CN113296992A publication Critical patent/CN113296992A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本发明实施例提供一种异常原因确定方法、装置、设备和存储介质,该方法包括:获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,第一运行数据、第二运行数据和第三运行数据分别由目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,目标对象在第一时刻的运行状态异常,目标对象在第二时刻和第三时刻的运行状态正常。将三元组输入到预设模型中,以获取预设模型输出的第一运行数据中多个运行状态指标值各自对应的权重;确定第一运行数据中权重符合设定条件的运行状态指标值是导致目标对象在第一时刻运行状态异常的原因,从而实现异常原因的高效定位。

Description

异常原因确定方法、装置、设备和存储介质
技术领域
本发明涉及互联网技术领域,尤其涉及一种异常原因确定方法、装置、设备和存储介质。
背景技术
一个对象(比如一个系统、一个设备、一个应用程序,等等)在运行过程中会遇到运行异常的情况,当出现异常时会告警。
基于该告警,相关人员需要人工确定发生运行异常的原因是什么。为理解并归因出导致异常的原因,相关人员需要排查若干相关功能以及大量功能组合导致的结果,运维成本高,效率低。
发明内容
本发明实施例提供一种异常原因确定方法、装置、设备和存储介质,能够自动提供出导致目标对象运行异常的归因结果。
第一方面,本发明实施例提供一种异常原因确定方法,该方法包括:
获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,所述第一运行数据、所述第二运行数据和所述第三运行数据分别由所述目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,所述目标对象在所述第一时刻的运行状态异常,所述目标对象在所述第二时刻和所述第三时刻的运行状态正常;
将所述三元组输入到预设模型中,以获取所述预设模型输出的所述第一运行数据中多个运行状态指标值各自对应的权重;
确定所述第一运行数据中权重符合设定条件的运行状态指标值是导致所述目标对象在所述第一时刻运行状态异常的原因。
第二方面,本发明实施例提供一种异常原因确定装置,该装置包括:
数据获取模块,用于获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,所述第一运行数据、所述第二运行数据和所述第三运行数据分别由所述目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,所述目标对象在所述第一时刻的运行状态异常,所述目标对象在所述第二时刻和所述第三时刻的运行状态正常;
权重获取模块,用于将所述三元组输入到预设模型中,以获取所述预设模型输出的所述第一运行数据中多个运行状态指标值各自对应的权重;
原因确定模块,用于确定所述第一运行数据中权重符合设定条件的运行状态指标值是导致所述目标对象在所述第一时刻运行状态异常的原因。
第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器;其中,存储器上存储有可执行代码,当所述可执行代码被处理器执行时,使处理器至少可以实现如第一方面所述的异常原因确定方法。
第四方面,本发明实施例提供了一种非暂时性机器可读存储介质,非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使处理器至少可以实现如第一方面所述的异常原因确定方法。
在本发明实施例提供的异常原因确定方案中,假设目标对象在第一时刻运行状态异常,采集目标对象在第一时刻的多个运行状态指标值以构成第一运行数据,为了确定出这多个运行状态指标值中哪些指标值是导致目标对象在第一时刻运行状态异常的原因,采用三元组的方式来进行异常原因定位。
具体地,采集目标对象在第二时刻的多个运行状态指标值以构成第二运行数据,以及采集目标对象在第三时刻的多个运行状态指标值以构成第三运行数据,其中,目标对象在第二时刻和第三时刻的运行状态正常。以第一运行数据、第二运行数据和第三运行数据这三个运行数据构成三元组,从而这个三元组中包括一个对应于异常状态的运行数据和两个对应于正常状态的运行数据。之后,将上述三元组输入到预先训练好的一个模型,该预设模型具有区别异常状态对应的运行数据和正常状态对应的运行数据的能力。基于上述三元组的输入,该预设模型输出第一运行数据中多个运行状态指标值各自对应的权重,第一运行数据中导致目标对象在第一时刻运行状态异常的运行状态指标值所对应的权重会比较大,从而,最终可以确定第一运行数据中权重符合设定条件的运行状态指标值是导致目标对象在第一时刻运行状态异常的原因,以实现目标对象运行状态异常的原因的自动、高效定位。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种异常原因确定方法的流程图;
图2为本发明实施例提供的一种数据筛选情形的示意图;
图3为本发明实施例提供的另一种数据筛选情形的示意图;
图4为本发明实施例提供的一种权重确定过程的流程图;
图5为本发明实施例提供的一种权重确定过程的示意图;
图6为本发明实施例提供的另一种权重确定过程的流程图;
图7为本发明实施例提供的另一种权重确定过程的示意图;
图8为本发明实施例提供的一种异常原因确定装置的结构示意图;
图9为与图8所示实施例提供的异常原因确定装置对应的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
本发明实施例提供的异常原因确定方法可以由一电子设备来执行,该电子设备可以是诸如PC机、笔记本电脑、智能手机等终端设备,也可以是服务器。该服务器可以是包含一独立主机的物理服务器,或者也可以为虚拟服务器,或者也可以为云端服务器或服务器集群。
图1为本发明实施例提供的一种异常原因确定方法的流程图,如图1所示,该方法包括如下步骤:
101、获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,第一运行数据、第二运行数据和第三运行数据分别由目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,目标对象在第一时刻的运行状态异常,目标对象在第二时刻和第三时刻的运行状态正常。
102、将三元组输入到预设模型中,以获取预设模型输出的第一运行数据中多个运行状态指标值各自对应的权重。
103、确定第一运行数据中权重符合设定条件的运行状态指标值是导致目标对象在第一时刻运行状态异常的原因。
本发明实施例中,目标对象比如可以是:分布式系统中的节点,一个设备,一个应用程序,等等。针对每种目标对象,可以预先定义多个运行状态指标来度量目标对象的运行状态。比如,用于度量一个计算机设备的运行状态的多个运行状态指标可以包括:CPU占用率、内存占用率、网络带宽、传输时延、用户访问量,等等。
目标对象在日常运行过程中,可以以设定的采集方式不断采集目标对象在不同时刻对应的运行数据。其中,每个运行数据由相应时刻目标对象的多个运行状态指标值构成。其中,采集方式可以是周期采集方式,比如每隔设定时间间隔采集一次。
目标对象在运行过程中可能处于正常状态,也可能会遇到运行异常的情况。本发明实施例中,针对采集到的各条运行数据,可以对每条运行数据进行标记,以标记其对应的运行状态是否正常。换言之,针对采集到的各条运行数据,可以先检测在其对应的采集时刻目标对象的运行状态是否正常。
可选地,可以采用现有的离群值检测方法来检测采集到的各运行数据中对应于异常运行状态的数据,剩余的运行数据即为对应于正常运行状态的数据。或者,目标对象的维护人员可以人为地标记出采集到的哪些运行数据是对应于异常运行状态的数据,剩余的运行数据即为对应于正常运行状态的数据。
本发明实施例提供的方案的目的即为:确定导致目标对象在某时刻运行状态异常的原因是什么,即若目标对象在某时刻运行状态异常,那么需要在该时刻采集的运行数据中定位出导致该异常的运行状态指标值是什么。
举例来说,假设目标对象在第一时刻运行状态异常,此时采集的运行数据称为第一运行数据,第一运行数据由目标对象在第一时刻对应的多个运行状态指标值构成。此时,需要确定出这多个运行状态指标值中的哪些是导致目标对象在第一时刻运行状态异常的原因。
本发明实施例中,采用三元组(triplet)的方式来进行异常原因的定位。其中,所谓三元组的方式就是:在第一时刻采集的对应于异常运行状态的第一运行数据的基础上,再获得两个对应于正常运行状态的运行数据,分别为第二时刻采集到的第二运行数据以及第三时刻采集到的第三运行数据,之后,以这三个运行数据构成三元组,将该三元组输入到预先训练好的模型(称为预设模型)中,由该预设模型输出对应于异常运行状态的第一运行数据中的多个运行状态指标值各自对应的权重,以根据这多个运行状态指标值各自对应的权重确定其中哪些运行状态指标值是导致目标对象在第一时刻运行状态异常的原因。其中,同样地,第二运行数据和第三运行数据分别由目标对象在相应时刻的多个运行状态指标值构成。
其中,由于该预设模型是用于确定对应于异常运行状态的运行数据中的哪些运行状态指标值是导致目标对象运行状态异常的原因的,因此,其输出的权重是与对应于异常运行状态的第一运行数据中的多个运行状态指标值对应的。
其中,对应的权重越大的运行状态指标值,越可能导致目标对象在第一时刻运行状态异常。
具体地,可以确定第一运行数据中权重符合设定条件的运行状态指标值是导致目标对象在第一时刻运行状态异常的原因。
其中,可选地,该设定条件可以是权重大于设定阈值。或者,还可以按照权重大小进行排序,确定权重较大的预设数量的运行状态指标值是导致目标对象在第一时刻运行状态异常的原因。可选地,还可以按照权重大小顺序输出第一运行数据中多个运行状态指标值及其各自对应的权重,以供相关人员根据该权重确定运行状态指标的排查顺序,以便更快得知异常原因。
值得说明的是,上述预设模型便是基于三元组的方式训练得到的,在训练阶段,该预设模型的主要目标便是使得三种运行数据满足可分离要求(或者说可分性要求),也就是说,使对应于异常运行状态的运行数据与对应于正常运行状态的运行数据之间的距离比较远,使对应于正常运行状态的运行数据之间的距离比较近。
另外,值得说明的是,本实施例中,为了确定第一运行数据中各运行状态指标值的权重,可以构造包含第一运行数据的一个或多个三元组,即每个三元组中都包括第一运行数据。当构造多个三元组时,分别将多个三元组输入到预设模型中,预设模型基于这多个三元组,最终输出第一运行数据中各运行状态指标值的权重。在构造多个三元组时,各三元组内包含的两个对应于正常运行状态的运行数据是不同的,但每个三元组的构造过程是一样的,因此,本文中仅以构造一个三元组为例来说明。
实际应用中,可选地,在假设目标对象在第一时刻运行状态异常的情况下,在获取第二时刻对应的第二运行数据以及第三时刻对应的第三运行数据的过程中,第二时刻和第三时刻可以是在已经得到的对应于正常运行状态的各个时刻中随机确定的两个时刻,当然,也可以根据其他策略来获取第二运行数据和第三运行数据。
可选地,可以在第一运行数据对应的第一采样范围内获取第二运行数据,在第一运行数据对应的第二采样范围内获取第三运行数据,第一采样范围大于第二采样范围。其中,第一采样范围大于第二采样范围,可以认为是第二采样范围是围绕第一运行数据的一种局部范围,而第一采样范围是更大的范围,如全局范围。也就是说,在局部范围内获取第三运行数据,而在全局范围内获取第二运行数据。其中,全局范围可以认为是指目标对象的全部运行时间范围。
第一采样范围与第二采样范围的关系可以是包含关系,即第一采样范围包含第二采样范围。
之所以在上述两种不同的采样范围内来获得两个对应于正常运行状态的运行数据,是因为:在更广范围内采集的对应于正常运行状态的运行数据,其包含的多个运行状态指标值更能普遍地代表正常运行状态的特征;在局部范围内采集的对应于正常运行状态的运行数据,其包含的多个运行状态指标值更能代表正常运行状态向异常运行状态转变的特征。
结合这两种采样范围内获得的对应于正常运行状态的运行数据,可以使得预设模型能够更为准确地确定出对应于异常运行状态的运行数据中导致运行状态异常的运行状态指标值是哪些。
实际应用中,可以根据不同的维度来定义上述两种采样范围,比如:时间维度、运行状态指标维度,等等。
从而,可选地,可以在第一时刻邻近的第一时间范围内获取第二运行数据,在第一时刻邻近的第二时间范围内获取第三运行数据,第一时间范围大于第二范围。
为便于理解,如图2所示,假设第一时刻为Ti,第一时间范围(全局时间范围)为T1~Tn,第二时间范围(局部时间范围)为:T2~Tm。其中,第一时间范围包含第二时间范围。实际应用中,在第一时间范围内可能已经获得了很多对应于正常运行状态的运行数据,可以从中随机选择一个作为第二运行数据。同理,在第二时间范围内可能也已经获得了很多对应于正常运行状态的运行数据,可以从中随机选择一个作为第三运行数据。
或者,可选地,可以获取第一运行数据中的预设运行状态指标值,在预设状态指标值邻近的第一取值范围内获取第二运行数据,在预设状态指标值邻近的第二取值范围内获取第三运行数据,第一取值范围大于第二取值范围。
其中,可以预先设置某种运行状态指标,从而,上述预设运行状态指标值是第一运行数据中包含的与该运行状态指标对应的指标值。
为便于理解,如图3所示,假设第一运行数据中的预设运行状态指标值为内存使用率=85%,第一取值范围为20%~70%,第二取值范围为:80%~90%。其中,第一取值范围与第二取值范围并无包含关系,此时第一取值范围大于第二取值范围,意味着第二取值范围更为靠近预设运行状态指标值。实际应用中,在其他时刻采集的对应于正常运行状态的运行数据中,可能有内存使用率在第一取值范围内的运行数据,可以从中随机选择一个作为第二运行数据。第三运行数据同理。
在通过上述方式得到由第一运行数据、第二运行数据、第三运行数据构成的三元组后,将三元组输入到预设模型中,以获得预设模型输出的第一运行数据中各运行状态指标值对应的权重。
该预设模型可以是一种神经网络模型,具体地,是一种采用注意力(Attention)机制的神经网络模型,比如各种循环神经网络模型、卷积神经网络模型,等等。从组成结构角度来说,该预设模型可以包括嵌入层和注意力层,当然,还可以包括用于计算损失函数的模块以及输出层,输出层可以用于输出第一运行数据中多个运行状态指标值各自对应的权重。
其中,嵌入(embedding)层,用于对输入的运行数据进行特征变换,以将运行数据映射到新的特征空间。注意力层,基于损失函数的定义,用于求解使损失函数满足可分离要求的注意力权重向量,简称权重向量,该权重向量即由第一运行数据中多个运行状态指标值各自对应的权重构成。
在模型训练阶段,以预设的损失函数为优化目标,不断调节嵌入层和注意力层对应的参数。其中,如前文所述,以使三元组中包含的三种运行数据满足可分离要求为目标来定义该损失函数。假设嵌入层对应的参数由映射函数Φ来确定,注意力层对应的参数(即权重向量)由注意力函数Ψ来确定,那么训练的目的就是不断优化这两个函数。
模型训练过程将在下文中进行说明,这里假设已经训练好预设模型,可以将由第一运行数据、第二运行数据和第三运行数据构成的三元组输入到嵌入层,以通过嵌入层对第一运行数据、第二运行数据和第三运行数据分别进行特征变换,以得到第一嵌入特征向量、第二嵌入特征向量和第三嵌入特征向量。这三个嵌入特征向量与上述三个运行数据一一对应,其中,通过映射函数Φ对第一运行数据进行特征变换便可以得到第一嵌入特征向量。第二嵌入特征向量和第三嵌入特征向量同理。
之后,将第一嵌入特征向量、第二嵌入特征向量和第三嵌入特征向量分别输入到注意力层,从而获取第一运行数据中多个运行状态指标值各自对应的权重。
在一可选实施例中,如图4所示,可以通过如下方式获取第一运行数据中多个运行状态指标值各自对应的权重:
401、确定待求解的第一权重向量,确定第一权重向量与第一嵌入特征向量相乘得到的第四嵌入特征向量,确定第一权重向量与第二嵌入特征向量相乘得到的第五嵌入特征向量,确定第一权重向量与第三嵌入特征向量相乘得到的第六嵌入特征向量。
402、确定第五嵌入特征向量与第四嵌入特征向量之间的第一距离,确定第五嵌入特征向量与第六嵌入特征向量之间的第二距离。
403、根据第一距离和第二距离确定第一损失函数,第一损失函数用于使得第一运行数据、第二运行数据和第三运行数据满足可分离要求。
404、确定满足第一损失函数的第一权重向量,确定出的第一权重向量中包括的多个权重分别对应于第一运行数据中多个运行状态指标值。
假设运行数据中包括的运行状态指标值的数量为N,N大于1,则上述第一权重向量是N维的向量,即由N个权重值组成。
其中,待求解的第一权重向量,可以是在输入由第一运行数据、第二运行数据和第三运行数据构成的三元组之前注意力层输出的多个权重构成的向量,由于之前的这多个权重并不是针对此时输入的三元组计算出的,会在经过本轮针对该三元组计算后被更新,因此称为待求解的。也就是说,该待求解的含义可以认为是针对本次输入的三元组进行第一权重向量的更新求解。当然,也可以认为待求解的第一权重向量是由N个变量构成的,最终求解出的第一权重向量即为确定出了这N个变量的取值,即得到N个确定的权重。
为便于理解,下面结合图5来示例性说明上述权重确定过程。
在图5中,假设第一权重向量表示为a,第一运行数据表示为o,第二运行数据表示为m,第三运行数据表示为n,这三个运行数据构成的三元组表示为:{o,m,n}。通过嵌入层的特征变换后,第一运行数据对应的第一嵌入特征向量表示为Φ(o),第二运行数据对应的第二嵌入特征向量表示为Φ(m),第三运行数据对应的第三嵌入特征向量表示为Φ(n)。以第一权重向量分别与这三个嵌入特征向量相乘(向量点乘),分别得到第四嵌入特征向量oattn、第五嵌入特征向量mattn、第六嵌入特征向量nattn
之后,计算第五嵌入特征向量mattn与第四嵌入特征向量oattn之间的第一距离,表示为d(mattn,oattn),计算第五嵌入特征向量mattn与第六嵌入特征向量nattn之间的第二距离,表示为d(mattn,nattn)。
根据第一距离和第二距离确定第一损失函数。可选地,第一损失函数可以是:Loss1=max(d(mattn,nattn)-d(mattn,oattn)+e,0)。其中,e为预设正数。
上述第一损失函数的定义,是了使第一运行数据与第二运行数据之间的距离尽可能远,而第二运行数据与第三运行数据之间的距离尽可能近,从而使得第一运行数据、第二运行数据和第三运行数据满足可分离要求。
求解满足上述第一损失函数的第一权重向量,即求解得到第一权重向量中N个权重,这N个权重即分别对应于第一运行数据中的N个运行状态指标值。
在另一可选实施例中,如图6所示,还可以通过如下方式获取第一运行数据中多个运行状态指标值各自对应的权重:
601、确定待求解的第一权重向量,根据待求解的第一权重向量确定第二权重向量,第二权重向量中任一位置对应的权重与第一权重向量中相应位置对应的权重的和为1。
602、确定第一权重向量与第一嵌入特征向量相乘得到的第四嵌入特征向量,确定第一权重向量与第二嵌入特征向量相乘得到的第五嵌入特征向量,确定第一权重向量与第三嵌入特征向量相乘得到的第六嵌入特征向量。
603、确定第二权重向量与第一嵌入特征向量相乘得到的第七嵌入特征向量,确定第二权重向量与第二嵌入特征向量相乘得到的第八嵌入特征向量,确定第二权重向量与第三嵌入特征向量相乘得到的第九嵌入特征向量。
604、确定第五嵌入特征向量与第四嵌入特征向量之间的第一距离,确定第五嵌入特征向量与第六嵌入特征向量之间的第二距离,确定第八嵌入特征向量与第七嵌入特征向量之间的第三距离,确定第八嵌入特征向量与第九嵌入特征向量之间的第四距离。
605、根据第一距离和第二距离确定第一损失函数,第一损失函数用于使得第一运行数据、第二运行数据和第三运行数据满足可分离要求;根据第三距离和第四距离确定第二损失函数。
606、根据第一损失函数和第二损失函数确定第三损失函数,确定满足第三损失函数的第一权重向量,确定出的第一权重向量中包括的多个权重分别对应于第一运行数据中多个运行状态指标值。
为便于理解,下面结合图7来示例性说明上述权重确定过程。
在图7中,假设第一权重向量表示为a,则第二权重向量可以表示为:1-a。假设第一运行数据表示为o,第二运行数据表示为m,第三运行数据表示为n。通过嵌入层的特征变换后,第一运行数据对应的第一嵌入特征向量表示为Φ(o),第二运行数据对应的第二嵌入特征向量表示为Φ(m),第三运行数据对应的第三嵌入特征向量表示为Φ(n)。
以第一权重向量a分别与这三个嵌入特征向量相乘(向量点乘),分别得到第四嵌入特征向量oattn、第五嵌入特征向量mattn、第六嵌入特征向量nattn。以第二权重向量(1-a)分别与第一嵌入特征向量、第二嵌入特征向量、第三嵌入特征向量相乘(向量点乘),分别得到第七嵌入特征向量or-attn、第八嵌入特征向量mr-attn、第九嵌入特征向量nr-attn
之后,计算第五嵌入特征向量mattn与第四嵌入特征向量oattn之间的第一距离,表示为d(mattn,oattn),计算第五嵌入特征向量mattn与第六嵌入特征向量nattn之间的第二距离,表示为d(mattn,nattn)。计算第八嵌入特征向量mr-attn与第七嵌入特征向量or-attn之间的第三距离,表示为d(mr-attn,or-attn),计算第八嵌入特征向量mr-attn与第九嵌入特征向量nr-attn之间的第四距离,表示为d(mr-attn,nr-attn)。
根据第一距离和第二距离确定第一损失函数。可选地,第一损失函数可以是:Loss1=max(d(mattn,nattn)-d(mattn,oattn)+e,0)。其中,e为预设正数。
根据第三距离和第四距离确定第二损失函数。可选地,第二损失函数可以是:Loss2=|d(mr-attn,nr-attn)-d(mr-attn,or-attn)|。
根据第一损失函数和第二损失函数确定第三损失函数。可选地,第三损失函数可以根据第一损失函数与第二损失函数的加权和确定,可选地,加权系数可以是1或小于1的数值。假设第三损失函数Loss3=min(Loss1+Loss2),则求解满足Loss3的第一权重向量,则求解得到的第一权重向量中的N个权重即分别对应于第一运行数据中的N个运行状态指标值。
综上,通过定义上述三元组的方式,基于预设模型学习到的区分三元组中不同运行数据的能力,可以获得预设模型自动输出的与异常的运行数据中多个运行状态指标值各自对应的权重,基于该权重确定出这多个运行状态指标值中哪些运行状态指标值是导致目标对象运行状态异常的原因,以实现目标对象运行状态异常的原因的自动、高效定位。
下面简单介绍下上文中预设模型的训练过程。
为进行该预设模型的训练,首先需要收集大量的训练样本,其中,每个训练样本都是一个三元组。实际应用中,可以收集目标对象在运行过程中产生的大量的正常运行数据和异常运行数据,其中,正常运行数据即对应于正常运行状态的运行数据,异常运行数据即为对应于异常运行状态的运行数据。
其中,以收集到的各异常运行数据构成第一数据集合,之后需要构建第二数据集合和第三数据集合。可以认为第二数据集合是由全局范围内采样得到的正常运行数据构成的集合,第三数据集合是由在局部范围内采样得到的正常运行数据构成的集合。其中,局部范围是相对异常运行数据来说的,全局范围是相对局部范围来说的。
第二数据集合和第三数据集合的构建思路如下:
与上文中获取第二运行数据和第三运行数据的思想相同,在第一数据集合中选定一个异常运行数据,称为目标异常运行数据,之后,基于目标异常运行数据确定出两个不同的采样范围,其中一个采样范围对应于目标异常运行数据的局部范围,相对的,另一个采样范围是一个更大的全局范围。在每个采样范围内采样一个或多个正常运行数据,从而,将从全局范围内采样到的正常运行据添加到第二数据集合中,将从局部范围内采样到的正常运行数据添加到第三数据集合中。针对各个异常运行数据都执行上述过程,最终可以得到第二数据集合和第三数据集合。
基于得到的三个数据集合,可以构造出若干三元组。具体地,针对从第一数据集合中选定的任一异常运行数据,可以构造出包含该异常运行数据的多个三元组。举例来说,针对异常运行数据i来说,可以在第二数据集合中选定正常运行数据m1,在第三数据集合中选定正常运行数据n1,从而构构造出如下三元组:{异常运行数据i,正常运行数据m1,正常运行数据n1}。除此之外,还可以在第二数据集合中选定正常运行数据m2,在第三数据集合中选定正常运行数据n2,从而构构造出如下三元组:{异常运行数据i,正常运行数据m2,正常运行数据n2}。
之后,对每个三元组内的运行数据进行监督信息的标注,本发明实施例中,监督信息即为三种运行数据的类别标签,可以是:异常、局部正常、全局正常。
之后,将获得的各个三元组逐个输入到预设模型中,以完成预设模型的训练。可以理解的是,预设模型对每个输入的三元组的处理过程与上文中对由第一运行数据、第二运行数据和第三运行数据构成的三元组的处理过程是一样的。当该模型训练至收敛时,模型中的相关参数被确定,比如包括上文中提到的映射函数Φ和注意力函数Ψ。
以下将详细描述本发明的一个或多个实施例的异常原因确定装置。本领域技术人员可以理解,这些异常原因确定装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
图8为本发明实施例提供的一种异常原因确定装置的结构示意图,如图8所示,该装置包括:数据获取模块11、权重获取模块12、原因确定模块13。
数据获取模块11,用于获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,所述第一运行数据、所述第二运行数据和所述第三运行数据分别由所述目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,所述目标对象在所述第一时刻的运行状态异常,所述目标对象在所述第二时刻和所述第三时刻的运行状态正常。
权重获取模块12,用于将所述三元组输入到预设模型中,以获取所述预设模型输出的所述第一运行数据中多个运行状态指标值各自对应的权重。
原因确定模块13,用于确定所述第一运行数据中权重符合设定条件的运行状态指标值是导致所述目标对象在所述第一时刻运行状态异常的原因。
可选地,所述数据获取模块11具体可以用于:在所述第一运行数据对应的第一采样范围内获取所述第二运行数据,在所述第一运行数据对应的第二采样范围内获取所述第三运行数据,所述第一采样范围大于所述第二采样范围。
其中,可选地,所述数据获取模块11具体可以用于:在所述第一时刻邻近的第一时间范围内获取所述第二运行数据,在所述第一时刻邻近的第二时间范围内获取所述第三运行数据,所述第一时间范围大于所述第二时间范围。
其中,可选地,所述数据获取模块11具体可以用于:获取所述第一运行数据中的预设运行状态指标值;在所述预设状态指标值邻近的第一取值范围内获取所述第二运行数据,在所述预设状态指标值邻近的第二取值范围内获取所述第三运行数据,所述第一取值范围大于所述第二取值范围。
可选地,所述预设模型包括嵌入层和注意力层,基于此,权重获取模块12具体可以用于:通过所述嵌入层对所述第一运行数据、所述第二运行数据和所述第三运行数据分别进行特征变换,以得到第一嵌入特征向量、第二嵌入特征向量和第三嵌入特征向量;将所述第一嵌入特征向量、所述第二嵌入特征向量和所述第三嵌入特征向量分别输入到所述注意力层,以获取所述第一运行数据中多个运行状态指标值各自对应的权重。
可选地,在获取所述第一运行数据中多个运行状态指标值各自对应的权重的过程中,权重获取模块12具体可以用于:确定待求解的第一权重向量;确定所述第一权重向量与所述第一嵌入特征向量相乘得到的第四嵌入特征向量,确定所述第一权重向量与所述第二嵌入特征向量相乘得到的第五嵌入特征向量,确定所述第一权重向量与所述第三嵌入特征向量相乘得到的第六嵌入特征向量;确定所述第四嵌入特征向量与所述第五嵌入特征向量之间的第一距离,确定所述第五嵌入特征向量与所述第六嵌入特征向量之间的第二距离;根据所述第一距离和所述第二距离确定第一损失函数,所述第一损失函数用于使得第一运行数据、第二运行数据和第三运行数据满足可分离要求;确定使所述第一损失函数符合设定要求的第一权重向量,确定出的第一权重向量中包括的多个权重分别对应于第一运行数据中多个运行状态指标值。
可选地,在获取所述第一运行数据中多个运行状态指标值各自对应的权重的过程中,权重获取模块12还可以用于:根据所述待求解的第一权重向量确定第二权重向量,所述第二权重向量中任一位置对应的权重与所述第一权重向量中相应位置对应的权重的和为1;确定所述第二权重向量与所述第一嵌入特征向量相乘得到的第七嵌入特征向量,确定所述第二权重向量与所述第二嵌入特征向量相乘得到的第八嵌入特征向量,确定所述第二权重向量与所述第三嵌入特征向量相乘得到的第九嵌入特征向量;确定所述第七嵌入特征向量与所述第八嵌入特征向量之间的第三距离,确定所述第八嵌入特征向量与所述第九嵌入特征向量之间的第四距离;根据所述第三距离和所述第四距离确定第二损失函数,所述第二损失函数用于使得第一运行数据、第二运行数据和第三运行数据满足不可分离要求;根据所述第一损失函数和所述第二损失函数确定第三损失函数;确定使所述第三损失函数符合设定要求的第一权重向量。
图8所示装置可以执行前述图1至图7所示实施例中提供的异常原因确定方法,详细的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
在一个可能的设计中,上述图8所示异常原因确定装置的结构可实现为一电子设备,如图9所示,该电子设备可以包括:处理器21、存储器22。其中,存储器22上存储有可执行代码,当所述可执行代码被处理器21执行时,使处理器21至少可以实现如前述图1至图7所示实施例中提供的异常原因确定方法。
可选地,该电子设备中还可以包括通信接口23,用于与其他设备进行通信。
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如前述图1至图7所示实施例中提供的异常原因确定方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种异常原因确定方法,其特征在于,包括:
获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,所述第一运行数据、所述第二运行数据和所述第三运行数据分别由所述目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,所述目标对象在所述第一时刻的运行状态异常,所述目标对象在所述第二时刻和所述第三时刻的运行状态正常;
将所述三元组输入到预设模型中,以获取所述预设模型输出的所述第一运行数据中多个运行状态指标值各自对应的权重;
确定所述第一运行数据中权重符合设定条件的运行状态指标值是导致所述目标对象在所述第一时刻运行状态异常的原因。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第一运行数据对应的第一采样范围内获取所述第二运行数据,在所述第一运行数据对应的第二采样范围内获取所述第三运行数据,所述第一采样范围大于所述第二采样范围。
3.根据权利要求2所述的方法,其特征在于,所述在所述第一运行数据对应的第一采样范围内获取所述第二运行数据,在所述第一运行数据对应的第二采样范围内获取所述第三运行数据,包括:
在所述第一时刻邻近的第一时间范围内获取所述第二运行数据,在所述第一时刻邻近的第二时间范围内获取所述第三运行数据,所述第一时间范围大于所述第二时间范围。
4.根据权利要求2所述的方法,其特征在于,所述在所述第一运行数据对应的第一采样范围内获取所述第二运行数据,在所述第一运行数据对应的第二采样范围内获取所述第三运行数据,包括:
获取所述第一运行数据中的预设运行状态指标值;
在所述预设状态指标值邻近的第一取值范围内获取所述第二运行数据,在所述预设状态指标值邻近的第二取值范围内获取所述第三运行数据,所述第一取值范围大于所述第二取值范围。
5.根据权利要求1所述的方法,其特征在于,所述预设模型包括嵌入层和注意力层;
所述获取所述预设模型输出的所述第一运行数据中多个运行状态指标值各自对应的权重,包括:
通过所述嵌入层对所述第一运行数据、所述第二运行数据和所述第三运行数据分别进行特征变换,以得到第一嵌入特征向量、第二嵌入特征向量和第三嵌入特征向量;
将所述第一嵌入特征向量、所述第二嵌入特征向量和所述第三嵌入特征向量分别输入到所述注意力层,以获取所述第一运行数据中多个运行状态指标值各自对应的权重。
6.根据权利要求5所述的方法,其特征在于,所述获取所述第一运行数据中多个运行状态指标值各自对应的权重,包括:
确定待求解的第一权重向量;
确定所述第一权重向量与所述第一嵌入特征向量相乘得到的第四嵌入特征向量,确定所述第一权重向量与所述第二嵌入特征向量相乘得到的第五嵌入特征向量,确定所述第一权重向量与所述第三嵌入特征向量相乘得到的第六嵌入特征向量;
确定所述第五嵌入特征向量与所述第四嵌入特征向量之间的第一距离,确定所述第五嵌入特征向量与所述第六嵌入特征向量之间的第二距离;
根据所述第一距离和所述第二距离确定第一损失函数,所述第一损失函数用于使得所述第一运行数据、所述第二运行数据和所述第三运行数据满足可分离要求;
确定满足所述第一损失函数的第一权重向量,确定出的第一权重向量中包括的多个权重分别对应于第一运行数据中多个运行状态指标值。
7.根据权利要求6所述的方法,其特征在于,所述获取所述第一运行数据中多个运行状态指标值各自对应的权重,包括:
根据所述待求解的第一权重向量确定第二权重向量,所述第二权重向量中任一位置对应的权重与所述第一权重向量中相应位置对应的权重的和为1;
确定所述第二权重向量与所述第一嵌入特征向量相乘得到的第七嵌入特征向量,确定所述第二权重向量与所述第二嵌入特征向量相乘得到的第八嵌入特征向量,确定所述第二权重向量与所述第三嵌入特征向量相乘得到的第九嵌入特征向量;
确定所述第七嵌入特征向量与所述第八嵌入特征向量之间的第三距离,确定所述第八嵌入特征向量与所述第九嵌入特征向量之间的第四距离;
根据所述第三距离和所述第四距离确定第二损失函数;
根据所述第一损失函数和所述第二损失函数确定第三损失函数;
所述确定满足所述第一损失函数的第一权重向量,包括:
确定满足所述第三损失函数的第一权重向量。
8.一种异常原因确定装置,其特征在于,包括:
数据获取模块,用于获取由目标对象对应的第一运行数据、第二运行数据和第三运行数据构成的三元组,所述第一运行数据、所述第二运行数据和所述第三运行数据分别由所述目标对象在第一时刻、第二时刻和第三时刻的多个运行状态指标值构成,所述目标对象在所述第一时刻的运行状态异常,所述目标对象在所述第二时刻和所述第三时刻的运行状态正常;
权重获取模块,用于将所述三元组输入到预设模型中,以获取所述预设模型输出的所述第一运行数据中多个运行状态指标值各自对应的权重;
原因确定模块,用于确定所述第一运行数据中权重符合设定条件的运行状态指标值是导致所述目标对象在所述第一时刻运行状态异常的原因。
9.一种电子设备,其特征在于,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1至7中任一项所述的异常原因确定方法。
10.一种非暂时性机器可读存储介质,其特征在于,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至7中任一项所述的异常原因确定方法。
CN202110327821.6A 2021-03-26 2021-03-26 异常原因确定方法、装置、设备和存储介质 Pending CN113296992A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110327821.6A CN113296992A (zh) 2021-03-26 2021-03-26 异常原因确定方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110327821.6A CN113296992A (zh) 2021-03-26 2021-03-26 异常原因确定方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN113296992A true CN113296992A (zh) 2021-08-24

Family

ID=77319150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110327821.6A Pending CN113296992A (zh) 2021-03-26 2021-03-26 异常原因确定方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN113296992A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113722186A (zh) * 2021-09-07 2021-11-30 北京奇艺世纪科技有限公司 一种异常检测方法、装置、电子设备及存储介质
CN117455221A (zh) * 2023-12-25 2024-01-26 青岛可颂食品有限公司 一种适用于烘焙奶油的加工流程管理系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113722186A (zh) * 2021-09-07 2021-11-30 北京奇艺世纪科技有限公司 一种异常检测方法、装置、电子设备及存储介质
CN113722186B (zh) * 2021-09-07 2023-10-27 北京奇艺世纪科技有限公司 一种异常检测方法、装置、电子设备及存储介质
CN117455221A (zh) * 2023-12-25 2024-01-26 青岛可颂食品有限公司 一种适用于烘焙奶油的加工流程管理系统
CN117455221B (zh) * 2023-12-25 2024-03-26 青岛可颂食品有限公司 一种适用于烘焙奶油的加工流程管理系统

Similar Documents

Publication Publication Date Title
AU2021232839B2 (en) Updating Attribute Data Structures to Indicate Trends in Attribute Data Provided to Automated Modelling Systems
CN108667856B (zh) 一种网络异常检测方法、装置、设备及存储介质
CN109587008B (zh) 检测异常流量数据的方法、装置及存储介质
CN105488539B (zh) 分类模型的生成方法及装置、系统容量的预估方法及装置
CN113296992A (zh) 异常原因确定方法、装置、设备和存储介质
CN111191601B (zh) 同行用户识别方法、装置、服务器及存储介质
CN113837596B (zh) 一种故障确定方法、装置、电子设备及存储介质
CN112907128A (zh) 基于ab测试结果的数据分析方法、装置、设备及介质
CN112839014B (zh) 建立识别异常访问者模型的方法、系统、设备及介质
CN110263824A (zh) 模型的训练方法、装置、计算设备及计算机可读存储介质
US20200090076A1 (en) Non-transitory computer-readable recording medium, prediction method, and learning device
CN110708285A (zh) 流量监控方法、装置、介质及电子设备
CN114021188A (zh) 一种联邦学习协议交互安全验证方法、装置及电子设备
CN116257663A (zh) 面向无人地面车辆的异常检测与关联分析方法及相关设备
CN114818828A (zh) 雷达干扰感知模型的训练方法及雷达干扰信号识别方法
CN111783883A (zh) 一种异常数据的检测方法及装置
Diyali et al. Discriminating between log-normal and log-logistic distributions in the presence of type-II censoring
CN115587017A (zh) 数据处理方法、装置、电子设备及存储介质
CN113673811A (zh) 一种基于session的在线学习绩效评估方法及装置
CN112819232A (zh) 一种基于打卡数据的人流量特征预测方法及装置
CN112839010B (zh) 标记样本的方法、系统、设备及介质
CN116225636A (zh) 任务处理模型的生成方法、装置、设备及存储介质
CN116502120A (zh) 一种数据筛查方法、装置及系统
JP2024014250A (ja) 電子制御装置、及び評価の十分性を評価するためのデータを出力する方法
CN117194201A (zh) 一种业务系统的健康度评估及观测方法、装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20240315

Address after: # 03-06, Lai Zan Da Building 1, 51 Belarusian Road, Singapore

Applicant after: Alibaba Innovation Co.

Country or region after: Singapore

Address before: Room 01, 45th Floor, AXA Building, 8 Shanton Road, Singapore

Applicant before: Alibaba Singapore Holdings Ltd.

Country or region before: Singapore