CN116910507A - 一种异常检测方法及装置 - Google Patents
一种异常检测方法及装置 Download PDFInfo
- Publication number
- CN116910507A CN116910507A CN202310758510.4A CN202310758510A CN116910507A CN 116910507 A CN116910507 A CN 116910507A CN 202310758510 A CN202310758510 A CN 202310758510A CN 116910507 A CN116910507 A CN 116910507A
- Authority
- CN
- China
- Prior art keywords
- vector
- kpi data
- dimension
- feature vector
- moment
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 33
- 230000005856 abnormality Effects 0.000 title description 16
- 239000013598 vector Substances 0.000 claims abstract description 210
- 238000000034 method Methods 0.000 claims abstract description 48
- 230000002159 abnormal effect Effects 0.000 claims abstract description 19
- 238000012544 monitoring process Methods 0.000 claims abstract description 9
- 208000018910 keratinopathic ichthyosis Diseases 0.000 claims description 180
- 238000012545 processing Methods 0.000 claims description 29
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000012512 characterization method Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 14
- 238000013528 artificial neural network Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 8
- 238000012549 training Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000013179 statistical model Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Mathematical Optimization (AREA)
- Evolutionary Biology (AREA)
- Computational Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种异常检测方法,应用于部署有监控系统的计算设备,监控系统用于监控计算设备中多个关键性能指标KPI,方法包括:确定时刻t时存储的M个维度的KPI数据的历史特征向量,历史特征向量用于表征时刻t之前时间的特征向量,M大于等于1;基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量;获取时刻t的KPI数据的真实值,得到该真实值的向量;基于预测向量与真实值的向量,确定时刻t时的KPI数据是否出现异常。该方法在没有人工参与的情况下,就可以在大量的KPI数据中快速判断出出现异常的KPI。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种异常检测方法及装置。
背景技术
随着互联网应用的快速发展以及用户数量的快速增加,确保互联网应用系统运行的稳定性至关重要。为了保障互联网应用服务的平稳运行,运维人员会在系统中部署监控系统,以实时监控系统中多种关键性能指标(key performance indicator,KPI),例如,中央处理器(central processing unit,CPU)利用率、每分钟页面访问数等。通过KPI,可以了解系统是否处于正常运行的状态。但是,在大型的互联网服务中,可能有数万乃至数十万的KPI需要监控。因此,如何在大量的KPI数据中判断系统服务出现异常成为亟需解决的问题。
发明内容
为了解决现有技术中存在的问题,本申请实施例提供了一种异常检测方法、装置、计算设备、计算机存储介质及包含计算机程序的产品,能够在大量的KPI数据中快速判断出系统服务出现异常。
第一方面,本申请实施例提供一种异常检测方法,该方法包括:确定时刻t时存储的M个维度的关键性能指标KPI数据的历史特征向量,历史特征向量用于表征时刻t之前时间的特征向量,M大于等于1;基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量;获取时刻t的KPI数据的真实值,得到该真实值的向量;基于预测向量与真实值的向量,确定时刻t时的KPI数据是否出现异常。
在一种可能的实现方式中,获取时刻t时存储的M个维度的KPI数据的历史特征向量,具体包括:获取时刻t时存储的M个维度的KPI数据;对每个维度的KPI数据进行归一化处理,得到KPI数据矩阵,KPI数据矩阵中的每一行表征一个维度的KPI数据,每一列表征在同一时刻不同维度的KPI数据;根据预先设置的固定大小的滑动时间窗口,对KPI数据矩阵进行选择,基于滑动时间窗口中的数据作为历史特征向量。
在一种可能的实现方式中,对每个维度的KPI数据进行归一化处理,通过如下公式进行:
式中,v1表征KPI数据在所属维度下在存储介质中记录的值,vmax表征KPI数据在所属维度下的最大值,vmin表征KPI数据在所属维度下的最小值。
在一种可能的实现方式中,基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量,包括:通过多个不同的专家网络对历史特征向量进行特征提取,得到多个专家特征向量;确定每个维度的KPI数据在专家特征向量中的权重;将多个专家特征向量按照权重进行整合,得到每个维度的KPI数据的特质化特征向量;通过多层前馈神经网络对特质化特征向量进行处理,得到每个维度的KPI数据在时刻t时的预测值;将预测值进行整合,确定时刻t时的预测特征向量。
在一种可能的实现方式中,得到每个维度的KPI数据在时刻t时的预测值,根据如下公式进行计算:
式中,wt表征t时刻数据的历史特征向量,表征历史特征向量的第M维向量,F表征映射函数,GM表征门控网络模块中的第M维综合门结构,hM表征模型中对应于第M维KPI数据的映射函数,⊙表征向量内积操作
在一种可能的实现方式中,确定每个维度的KPI数据在专家特征向量中的权重,包括:
确定历史特征向量的M个子向量,子向量为历史特征向量中每一维KPI数据的特征向量;将M个子向量中的每一个子向量输入到每一维KPI数据所对应的独享门控结构,确定每一个子向量的独享权重;将M个子向量中的每一个子向量输入到每一维KPI数据所对应的共享门控结构,确定每一个子向量的共享权重,共享门控结构与独享门控结构的可训练矩阵不同;基于独享权重与共享权重,确定每个维度的KPI数据在专家特征向量中的权重。
在一种可能的实现方式中,将M个子向量中的每一个子向量输入到每一维KPI数据所对应的独享门控结构,确定每一个子向量的独享权重,具体根据如下公式进行:
式中,表征第k维度的KPI数据的独享门结构,Wpk表征该维独享门中的可训练矩阵,/>表征t时刻KP I数据的历史特征向量中的第k个子向量。
在一种可能的实现方式中,将M个子向量中的每一个子向量输入到每一维KPI数据所对应的共享门控结构,确定每一个子向量的共享权重,具体根据如下公式进行:
式中,Gs表征共享门结构,Ws表征共享门中的可训练矩阵,表征t时刻KP I数据的历史特征向量中的第k个子向量。
在一种可能的实现方式中,基于预测向量与真实值的向量,确定时刻t时是否出现异常,包括:计算预测向量与真实值的向量之间的距离,在距离超过预设的阈值的情况下,确定时刻t时的KPI数据出现异常。
第二方面,本申请实施例提供一种异常检测装置,包括:获取模块,用于确定时刻t时存储的M个维度的关键性能指标KPI数据的历史特征向量,历史特征向量用于表征时刻t之前时间的特征向量,M大于等于1;处理模块,用于基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量;处理模块,还用于获取时刻t的KPI数据的真实值,得到该真实值的向量;处理模块,还用于基于预测向量与真实值的向量,确定时刻t时的KPI数据是否出现异常。
第三方面,本申请实施例提供一种计算机可读存储介质,包括计算机可读命令,当计算机读取并执行所述计算机可读命令时,使得计算机执行如第二方面所述的方法。
第四方面,本申请实施例提供一种计算设备,包括处理器和存储器,其中,所述存储器中存储有计算机程序命令,所述计算机程序命令被所述处理器运行时,执行如第一方面所述的方法。
第五方面,本申请提供一种包含计算机程序的产品,当计算机程序产品在处理器上运行时,使得所述处理器执行如第一方面任一项所述的方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本申请实施例提供的一种异常检测方法的流程示意图;
图2是本申请实施例提供的一种KPI数据矩阵的示意图;
图3是本申请实施例提供的一种预测模型进行预测的过程示意图;
图4是本申请实施例提供的一种专家模型的结构示意图;
图5是本申请实施例提供的一种异常检测装置的结构示意图;
图6是本申请实施例提供的一种计算设设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文中术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本文中符号“/”表示关联对象是或者的关系,例如A/B表示A或者B。
本文中的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一响应消息和第二响应消息等是用于区别不同的响应消息,而不是用于描述响应消息的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或者两个以上,例如,多个处理单元是指两个或者两个以上的处理单元等;多个元件是指两个或者两个以上的元件等。
为便于对本申请实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。
在系统服务时,监控系统通常会按照一定的时间周期(例如每隔10s、1min等)来收集多种KPI数据,将收集到的KPI数据进行存储。使得这些KPI数据形成一个多维的时间序列数据,在这个多维的时间序列数据中,每个数据点都对应着某个数据采集时刻的某一项KPI数据的值。将KPI时间序列和其历史变化趋势的关联关系称作时序依赖关系,将不同指标之间的关联关系为指标间依赖关系,举例来说,某一时刻,CPU的利用率很高,内存的利用率也高,CPU的利用率与内存的利用率之间为指标间依赖关系。分别预先设定KPI书序依赖关系和指标间依赖关系的正常范围,包括阈值(例如最大阈值以及最小阈值)、线性规划等。
接着,可以是由用户(例如:运维人员)根据当前KPI时间序列,对比KPI数据的历史变化模式及趋势,看对比结果是否匹配。当出现异常时,表示某个时间点的KPI数据值超出了时序依赖关系和指标间依赖关系的正常范围,可以将这个时间点的KPI数据称为异常点。
或者,还可以通过数据统计的方法进行异常检测,例如,通过对正常的KPI数据的单项/联合分布做出某些统计,并基于时间序列数据估计统计模型的参数,从而建模出KPI数据的数据分布。若当前时刻的KPI数据显著违背该数据分布,则认为这个时间点的KPI数据发生了异常,为异常点。
又或者,还可以通过机器学习的方式进行异常检测,例如,通过使用数据库中存储的KPI数据和人工标注出异常值的KPI数据,分别对检测模型进行训练,使得检测模型可以识别正常KPI数据以及异常KPI数据。在训练之后,使用训练好的检测模型对实时获取的KPI数据进行处理,以得到当前时刻的KPI数据是否为异常点。举例来说,可以通过深度神经网络(deep neural networks,DNN)的机器学习方法进行异常检测,例如循环神经网络、卷积神经网络或者Transformer神经网络等。通过神经网络,对KPI数据的两种依赖关系(时序依赖关系及指标间依赖关系)进行建模,通过建立的模型对KPI数据进行预测,得到预测值,计算预测值与获取到的KPI数据之间的距离,当距离超过预设的阈值,确认KPI数据为异常点。
虽然通过这些方式都可以进行异常检测,但是,通过人工的方式来进行异常点的检测,需要用户必须具备相关领域的知识,并且投入大量的精力,在数据量庞大额情况下,这种方式需要极高的人力成本,时刻产生高维海量数据的现代互联网系统中是不太现实的。通过数据统计的方式进行异常检测,多维KPI数据的分布往往是不显著并且复杂的,很难找到合适的统计模型适配相关场景,统计模型对数据分布的表达能力有限,在实际应用中表现不佳。而通过机器学习的方式进行异常检测,传统的机器学习难以表达出多维KPI数据在时间维度上的前后依赖关系,检测效果并不理想,而且异常点依然是需要由人工来标注出来的,同样需要大量的人力成本。深度神经网络的机器学习方法对一些随机波动的数据很敏感,容易导致误报。
有鉴于此,本申请实施例提供一种异常检测方法,通过预先训练的预测模型,对当前时刻的KPI数据进行预测,判断预测的KPI数据与真实的KPI数据之间的距离,在距离超过阈值的情况下判定KPI数据异常,即系统服务出现异常本方法的检测效果更加精确,且全程无需人工参与,可以节省大量的人力成本。下面结合附图详细描述本方法。
示例性的,图1是本申请实施例提供的一种异常检测方法的流程示意图。如图1所示,该异常检测方法包括如下步骤:
S101:获取存储的M个维度的KPI数据的历史特征向量,该历史特征向量用于表征时刻t之前时间的特征向量,M大于等于1。
在本实施例中,可以在存储介质中获取到所存储的M个维度的KPI数据,每个KPI数据都是按照一定的时间周期(例如每隔10s、1min等)来收集得到的,每个维度的KPI数据在存储介质中存储时,以时间顺序进行存储。其中,存储介质可以是数据库。
将第M个维度的KPI数据记为KPIM,对获取到的M个维度中的每个维度的KPI(即每一个KPIM)数据均进行归一化处理,得到KPI数据矩阵,矩阵中的每个元素均处于同一量纲。示例性的,图2示出了本申请实施例提供的一种KPI数据矩阵的示意图,如图2所示,矩阵中的每一行都表示一个维度的KPI数据(即KPIM),矩阵中的每一列都表示一个收集该KPIM数据的时间。接着,可以根据预先设置的固定大小的滑动时间窗口,对呈时序排列的KPIM数据进行选择,选出固定长度的KPIM数据。将滑动时间窗口的大小记为w,1≤w<t,则可以得到滑动时间窗口中每个维度的KPI数据在相同时刻t时的二维向量,该二维向量的元素为滑动时间窗口大小个KPI。由于该二维向量为当前时刻t之前的数据,因此可以将该特征向量称为当前时刻t的历史特征向量。举例来说,请继续参考图2,将时刻t时的KPI数据记为滑动时间窗口大小为w,则在时刻t时,历史特征向量可以表示为[xt-w,…,xt-1]。其中,xt-w表征xt-1表征/>
在一些可能的实现方式中,归一化处理具体可以包括:计算每个KPI数据所属维度的阈值,该阈值包括最大值与最小值。将最大值记为vmax,最小值记为vmin。基于所属维度的阈值,对KP I数据进行缩放,缩放到同一量纲,得到待处理的KP I数据。具体的,可以根据如下缩放公式进行缩放
其中,v表征缩放后的KP I数据值,v1表征KP I数据在所属维度下存储介质中记录的值,vmax表征KP I数据在所属维度下的最大值,vmin表征KP I数据在所属维度下的最小值。
S102:基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到预测特征向量。
在本实施例中,在获取到M个维度的KPI数据的特征向量后,可以根据M个维度的KPI数据及其特征向量,构建预测模型,使预测模型可以进行无监督训练。在训练完成后,可以使用训练的预测模型对时刻t时的特征向量进行预测,得到时刻t时的KPI数据的预测向量。
在一些可能的实现方式中,该神经网络模型具体可以使用多门控混合专家模型(mu lt i-gate mixture-of-experts,MMOE)。MMOE是一种在深度学习领域中用于解决多任务学习问题的一种模型。MMOE通过将多个专家模型相互融合,从而能够同时优化多个任务的学习效果,提高模型的泛化能力和准确性。MMOE模型主要由两部分组成:门控网络和专家网络。门控网络负责对任务进行加权,从而确定每个任务所占的比重。专家网络则是由多个专家模型组成,每个专家模型分别负责处理不同的任务。在训练过程中,门控网络根据当前任务的输入,计算出各个任务的权重,并将任务的输入数据分配给相应的专家模型进行处理。最终,门控网络将专家模型的输出结果进行加权融合,得到最终的模型输出。专家网络中的每个专家模型都能够独立地进行训练和学习,从而提高了模型的灵活性和可扩展性。图3是本申请实施例提供的一种预测模型进行预测的过程示意图。如图3所示,在本实施例中,可以使用专家网络对时刻t的历史特征向量进行特征提取。具体的,可以将当前时刻t的M维特征向量输入到不同的专家模型中,通过每个专家模型都可以得到一个包含有KPI数据指标间依赖关系以及历史依赖关系的专家特征向量。其中,每个专家模型的初始化参数不同,每个专家模型得到的专家特征向量也不同。
具体的,请参考图4,图4示出了本申请实施例提供的一种专家模型的结构示意图。如图4所示,专家模型中包括一个卷积神经网络与两层前馈神经网络。在专家模型对特征向量进行处理时,可以先使用卷积神经网络对特征向量进行处理,得到包含有KPI数据指标间依赖关系以及历史依赖关系的第一向量。将第一向量输入两层前馈神经网络,经过两层前馈神经网络的处理,可以得到最终的专家特征向量。
接着,请继续参阅图3,在得到专家特征向量后,可以使用门控网络来进行特征融合的操作。具体的,可以先确定在特征融合时,每一个维度的KPI数据在专家特征向量中所占的权重。在确定权重时,可以筛选出在时刻t的历史特征向量中每一维的特征向量,将每一维的特征向量称为历史特征向量的子向量,例如第一个维度的KPI数据的特征向量(即第一个维度的子向量)表示为第M个维度的KPI数据的特征向量(即第M个维度的子向量)表示为/>将每一个子向量分别输入独享门控结构,得到每一个子向量的独享权重。具体的,可以根据如下公式进行
式中,表征第k维度的KPI数据的独享门结构,Wpk表征该维独享门中的可训练矩阵,/>表征t时刻KP I数据的历史特征向量中的第k个子向量。
将每一个子向量均输入共享门控结构,得到共享权重。具体的,可以根据如下公式进行
式中,Gs表征共享门结构,Ws表征共享门中的可训练矩阵,表征t时刻KP I数据的历史特征向量中的第k个子向量。
接着,将每一个子向量的独享权重,与M个维度的子向量的共享权重按照如下公式进行整合,得到综合门控权重。综合门控可以用于指示每一个维度的KPI数据在特征融合时在专家特征向量中所占的权重。
式中,Gk表征综合门结构,ε表征共享门在综合门中的的权重,softmax表征归一化指数函数。
在确定了综合门控权重后,可以将所得到的各个专家特征向量,按照综合门控权重进行整合,得到每一个维度的KPI数据的特质化特征向量(即图3所示的实心圆中带+号的部分)。接着,可以将该特质化向量,输入到每个维度的KPI数据的多层前馈神经网络中进行处理,得到每个维度的KPI数据在时刻t时的预测值,该预测值即为如图3中所示的下游子任务,图3中所示的下游子任务1即为KPI 1在时刻t时的预测值,以此类推,下游子任务M即为KPIm在时刻t时的预测值。将各个维度的KPI数据的预测值进行整合,即可得到时刻t时的预测向量,将该预测向量记为该预测向量的值范围在R1*内,即/>其中,R表征实数域,M表征维度。
在一些可能的实现方式中,t时刻预测第M个维度的KPI数据的计算可以按照如下公式进行:
式中,wt表征t时刻数据的历史特征向量,表征t时刻数据的历史特征向量的第M维向量,F表征模型中专家组模块所提供的历史特征向量到蕴含数据指标间依赖关系以及历史依赖关系的特征向量的映射函数,GM表征多尺度门控网络模块中的第M维综合门结构,hM表征模型中对应于第M维KPI数据的下游子任务模块所提供的融合特征向量到预测值的映射函数,⊙表征向量内积操作。
在一些可能的实现方式中,在卷积神经网络对输入的M维特征向量进行处理时,卷积神经网络中的卷积核大小可以与滑动时间窗口的大小相同。
S103:获取时刻t的KPI数据的真实值,得到该真实值的向量。
在本实施例中,可以在数据采集系统获取到实时采集到的KPI数据,该实时数据为KPI数据的真实值。将时刻t的KPI数据的真实值进行缩放,将各个维度的值缩放为同一个量纲。在缩放时,使用在获取时刻t的历史特征量时进行归一化处理所使用的缩放公式相同。将缩放后的KPI数据的真实值的向量记为xt。
S104:基于时刻t的KPI数据的预测向量与真实值的向量,确定KPI数据是否出现异常。
在本实施例中,在获取到时刻t的KPI数据的预测向量与真实值的向量后,可以计算预测向量与真实值的向量之间的距离,将该距离作为异常分数。在异常分数大于预设的阈值时,表明在时刻t时真实的KPI数据,与预估的正常值之间的差距较大,该时刻的数据很有可能违背了KPI数据的时序依赖关系和指标间依赖关系,确定时刻t时的KPI数据出现异常。在出现异常时,进行异常告警,以使得用户可以对异常进行处理。
在一些可能的实现方式中,预测向量与真实值的向量之间的距离可以为欧式距离(即欧几里得距离)
由上述各种实施例可知,本申请提供的方法通过获取到历史KPI数据,通过对历史KPI数据进行处理,可以得到预测模型中的各个参数,在确定模型中的各个参数后,基于历史KPI数据,可以预测当前时刻的KPI数据,然后获取到当前时刻的真实KPI数据,判断预测数据与真实数据之间的距离。在距离超过阈值的情况下,表明该时刻的数据很有可能违背了KPI数据的时序依赖关系和指标间依赖关系,可能是异常数据,可以提示用户对异常进行处理。本方法全程无人工参与,可以减少大量的人力成本。通过本方法,可以对指标间的依赖关系进行细粒度的建模,提升了异常检测的准确率,在主队KPI异常检测的场景中的检测效果都有显著提升。
可以理解的是,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。此外,在一些可能的实现方式中,上述实施例中的各步骤可以根据实际情况选择性执行,可以部分执行,也可以全部执行,此处不做限定。本申请的任意实施例的任意特征的全部或部分在不矛盾的前提下,可以自由地、任何地组合。组合后的技术方案也在本申请的范围之内。
基于上述实施例中的方法,本申请实施例还提供一种预测模型的训练方法,在模型训练时,对所述历史指标数据进行预处理后生成新的数据,将所述新的数据作为输入数据,对每一维当前时刻数据的预测作为多任务学习框架中的一个下游任务,采用每个历史时间点的预测值向量和实际值向量的均方误差完成对所述基于多任务学习和多门控混合专家模型的训练。
基于上述实施例中的方法,本申请实施例还提供一种异常检测装置。图5是本申请实施例提供的一种异常检测装置的结构示意图。该异常检测装置500可以部署于计算设备。如图5所示,该异常检测装置包括:获取模块501及处理模块502。
其中,获取模块501,用于确定时刻t时存储的M个维度的关键性能指标KPI数据的历史特征向量,历史特征向量用于表征时刻t之前时间的特征向量,M大于等于1;
处理模块502,用于基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量;
处理模块502,还用于获取时刻t的KPI数据的真实值,得到该真实值的向量;
处理模块502,还用于基于预测向量与真实值的向量,确定时刻t时的KPI数据是否出现异常。
基于上述实施例中的方法,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,当计算机程序在处理器上运行时,使得处理器执行上述实施例中的方法。
基于上述实施例中的方法,本申请实施例提供了一种计算机程序产品,当计算机程序产品在处理器上运行时,使得处理器执行上述实施例中的方法。
图6是本申请实施例提供的一种计算设备结构示意图。如图6所示,该计算机设备可以包括:处理器610、存储器620、输入/输出接口630、通信接口640和总线650。其中处理器610、存储器620、输入/输出接口630和通信接口640通过总线650实现彼此之间在设备内部的通信连接。该计算机设备可以用于执行前述图6所示的方法。
处理器610可以采用通用的中央处理器(central processing unit,CPU)、微处理器、应用专用集成电路(application specific integrated circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器620可以采用只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、静态存储设备,动态存储设备等形式实现。存储器620可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器620中,并由处理器610来调用执行。
输入/输出接口630用于连接输入/输出模块,以实现信息输入及输出。输入/输出模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口640用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线650包括一通路,在设备的各个组件(例如处理器610、存储器620、输入/输出接口630和通信接口640)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器610、存储器620、输入/输出接口630、通信接口640以及总线650,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
可以理解的是,本申请的实施例中的处理器可以是中央处理单元(centralprocessing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circt,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。通用处理器可以是微处理器,也可以是任何常规的处理器。
本申请的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件命令的方式来实现。软件命令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器(programmable rom,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机命令。在计算机上加载和执行所述计算机程序命令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机命令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机命令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。
Claims (10)
1.一种异常检测方法,其特征在于,应用于计算设备,所述计算设备部署有监控系统,所述监控系统用于监控所述计算设备中多个关键性能指标KPI,所述方法包括:
确定时刻t时存储的M个维度的KPI数据的历史特征向量,所述历史特征向量用于表征所述时刻t之前时间的特征向量,M大于等于1;
基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量;
获取时刻t的KPI数据的真实值,得到该真实值的向量;
基于所述预测向量与所述真实值的向量,确定时刻t时的KPI数据是否出现异常。
2.根据权利要求1所述的方法,其特征在于,所述获取时刻t时存储的M个维度的KPI数据的历史特征向量,具体包括:
获取时刻t时存储的M个维度的KPI数据;
对每个维度的KPI数据进行归一化处理,得到KPI数据矩阵,所述KPI数据矩阵中的每一行表征一个维度的KPI数据,每一列表征在同一时刻不同维度的KPI数据;
根据预先设置的固定大小的滑动时间窗口,对所述KPI数据矩阵进行选择,基于所述滑动时间窗口中的数据作为所述历史特征向量。
3.根据权利要求2所述的方法,其特征在于,所述对每个维度的KPI数据进行归一化处理,通过如下公式进行:
式中,v1表征KPI数据在所属维度下在存储介质中记录的值,vmax表征KPI数据在所属维度下的最大值,vmin表征KPI数据在所属维度下的最小值。
4.根据权利要求1所述的方法,其特征在于,所述基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量,包括:
通过多个不同的专家网络对所述历史特征向量进行特征提取,得到多个专家特征向量;
确定每个维度的KPI数据在所述专家特征向量中的权重;
将所述多个专家特征向量按照所述权重进行整合,得到所述每个维度的KPI数据的特质化特征向量;
通过多层前馈神经网络对所述特质化特征向量进行处理,得到每个维度的KPI数据在时刻t时的预测值;
将所述预测值进行整合,确定时刻t时的预测特征向量。
5.根据权利要求4所述的方法,其特征在于,所述得到每个维度的KPI数据在时刻t时的预测值,根据如下公式进行计算:
式中,wt表征t时刻数据的所述历史特征向量,表征所述历史特征向量的第M维向量,F表征映射函数,GM表征门控网络模块中的第M维综合门结构,hM表征模型中对应于第M维KPI数据的映射函数,⊙表征向量内积操作。
6.根据权利要求4所述的方法,其特征在于,所述确定每个维度的KPI数据在所述专家特征向量中的权重,包括:
确定所述历史特征向量的M个子向量,所述子向量为所述历史特征向量中每一维KPI数据的特征向量;
将所述M个子向量中的每一个子向量输入到每一维KPI数据所对应的独享门控结构,确定每一个子向量的独享权重;
将所述M个子向量中的每一个子向量输入到每一维KPI数据所对应的共享门控结构,确定每一个子向量的共享权重,所述共享门控结构与所述独享门控结构的可训练矩阵不同;
基于所述独享权重与所述共享权重,确定每个维度的KPI数据在所述专家特征向量中的权重。
7.根据权利要求6所述的方法,其特征在于,所述将所述M个子向量中的每一个子向量输入到每一维KPI数据所对应的独享门控结构,确定每一个子向量的独享权重,具体根据如下公式进行:
式中,表征第k维度的KPI数据的独享门结构,Wpk表征该维独享门中的可训练矩阵,表征t时刻KPI数据的历史特征向量中的第k个子向量。
8.根据权利要求6所述的方法,其特征在于,所述将所述M个子向量中的每一个子向量输入到每一维KPI数据所对应的共享门控结构,确定每一个子向量的共享权重,具体根据如下公式进行:
式中,Gs表征共享门结构,Ws表征共享门中的可训练矩阵,表征t时刻KPI数据的历史特征向量中的第k个子向量。
9.根据权利要求1所述的方法,其特征在于,所述基于所述预测向量与所述真实值的向量,确定时刻t时是否出现异常,包括:
计算所述预测向量与所述真实值的向量之间的距离,在所述距离超过预设的阈值的情况下,确定时刻t时的KPI数据出现异常。
10.一种异常检测装置,其特征在于,部署于计算设设备,所述计算设备部署有监控系统,所述监控系统用于监控所述计算设备中多个关键性能指标KPI,所述装置包括:
获取模块,用于确定时刻t时存储的M个维度的关键性能指标KPI数据的历史特征向量,所述历史特征向量用于表征所述时刻t之前时间的特征向量,M大于等于1;
处理模块,用于基于时刻t的历史特征向量,通过预测模型对时刻t的KPI向量进行预测,得到时刻t时的预测特征向量;
所述处理模块,还用于获取时刻t的KPI数据的真实值,得到该真实值的向量;
所述处理模块,还用于基于所述预测向量与所述真实值的向量,确定时刻t时的KPI数据是否出现异常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310758510.4A CN116910507A (zh) | 2023-06-26 | 2023-06-26 | 一种异常检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310758510.4A CN116910507A (zh) | 2023-06-26 | 2023-06-26 | 一种异常检测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116910507A true CN116910507A (zh) | 2023-10-20 |
Family
ID=88359203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310758510.4A Pending CN116910507A (zh) | 2023-06-26 | 2023-06-26 | 一种异常检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116910507A (zh) |
-
2023
- 2023-06-26 CN CN202310758510.4A patent/CN116910507A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442936B (zh) | 基于数字孪生模型的设备故障诊断方法、装置及系统 | |
US10817394B2 (en) | Anomaly diagnosis method and anomaly diagnosis apparatus | |
JP6609050B2 (ja) | 時間的因果グラフにおける異常フュージョン | |
CN112800116B (zh) | 一种业务数据的异常检测方法及装置 | |
CN113518011B (zh) | 异常检测方法和装置、电子设备及计算机可读存储介质 | |
Ren et al. | MCTAN: A novel multichannel temporal attention-based network for industrial health indicator prediction | |
CN111314173B (zh) | 监控信息异常的定位方法、装置、计算机设备及存储介质 | |
US20220214957A1 (en) | Machine learning models applied to interaction data for facilitating modifications to online environments | |
WO2021084286A1 (en) | Root cause analysis in multivariate unsupervised anomaly detection | |
CN107633331A (zh) | 时间序列模型建立方法及装置 | |
CN112348261A (zh) | 一种交易量预测方法、设备、装置及存储介质 | |
CN115514614B (zh) | 基于强化学习的云网络异常检测模型训练方法及存储介质 | |
CN116304909A (zh) | 一种异常检测模型训练方法、故障场景定位方法及装置 | |
CN114139589A (zh) | 故障诊断方法、装置、设备与计算机可读存储介质 | |
KR102054500B1 (ko) | 설계 도면 제공 방법 | |
WO2018036402A1 (zh) | 模型中关键变量的探测方法及装置 | |
CN113295399B (zh) | 换流阀元件状态评估方法、装置、电子设备和存储介质 | |
CN112182056A (zh) | 一种数据检测方法、装置、设备及存储介质 | |
CN113052302A (zh) | 基于循环神经网络的机器健康监控方法、装置及终端设备 | |
CN117092445A (zh) | 基于大数据的配电系统的故障检测方法及系统 | |
CN116661954A (zh) | 虚拟机异常预测方法、装置、通信设备及存储介质 | |
US20220404792A1 (en) | Method, system and computer program product for monitoring a shaping process | |
CN116910507A (zh) | 一种异常检测方法及装置 | |
CN110263811B (zh) | 一种基于数据融合的设备运行状态监测方法及系统 | |
CN109436980B (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 |