CN113568819B - 异常数据检测方法、装置、计算机可读介质及电子设备 - Google Patents

异常数据检测方法、装置、计算机可读介质及电子设备 Download PDF

Info

Publication number
CN113568819B
CN113568819B CN202110132371.5A CN202110132371A CN113568819B CN 113568819 B CN113568819 B CN 113568819B CN 202110132371 A CN202110132371 A CN 202110132371A CN 113568819 B CN113568819 B CN 113568819B
Authority
CN
China
Prior art keywords
data
sample
index data
index
detection model
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.)
Active
Application number
CN202110132371.5A
Other languages
English (en)
Other versions
CN113568819A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Nankai University
Original Assignee
Tencent Technology Shenzhen Co Ltd
Nankai University
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 Tencent Technology Shenzhen Co Ltd, Nankai University filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110132371.5A priority Critical patent/CN113568819B/zh
Publication of CN113568819A publication Critical patent/CN113568819A/zh
Application granted granted Critical
Publication of CN113568819B publication Critical patent/CN113568819B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请属于人工智能技术领域,具体涉及一种异常数据检测方法、装置、介质以及电子设备。该方法包括:对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,指标数据样本是按照时间顺序排列的数据序列;以样本集群的聚类中心作为训练样本,训练得到与样本集群相对应的基础检测模型,基础检测模型用于检测指标数据中的异常数据;以目标类型的指标数据样本作为训练样本,对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与目标类型相对应的目标检测模型;通过目标检测模型对目标类型的待测指标数据进行异常检测,得到待测指标数据中的异常数据。该方法可以提高异常数据检测效率,降低异常数据检测成本。

Description

异常数据检测方法、装置、计算机可读介质及电子设备
技术领域
本申请属于人工智能技术领域,具体涉及一种异常数据检测方法、异常数据检测装置、计算机可读介质以及电子设备。
背景技术
服务系统在运行过程中会伴随产生大量的关键性能指标(Key PerformanceIndicators,KPI),一个服务系统的KPI可以包括多种类型,例如系统层面的CPU利用率、内存利用率,应用程序层面的服务响应时间、错误率,网络层面的接收数据包计数、发送数据包计数等等。另外,针对具体应用领域的服务系统,KPI还可以包括相应领域内的业务指标,例如网络内容(如视频、音乐、广告等)的每日点击数、网络应用(如社交应用程序、支付应用程序)的每日活跃用户数等指标。
对KPI进行异常数据检测可以辅助服务系统的运行方对系统状态进行有效控制,进而为用户提供持续稳定的服务。然而,由于KPI种类繁多且数据量巨大,对于KPI的异常检测方案普遍存在检测效率低、计算成本高等技术问题。
发明内容
本申请的目的在于提供一种异常数据检测方法、异常数据检测装置、计算机可读介质以及电子设备,至少在一定程度上克服相关技术中存在的异常数据检测的检测效率低、计算成本高等技术问题。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供一种异常数据检测方法,该方法包括:对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,所述指标数据样本是按照时间顺序排列的数据序列;以所述样本集群的聚类中心作为训练样本,训练得到与所述样本集群相对应的基础检测模型,所述基础检测模型用于检测指标数据中的异常数据;以目标类型的指标数据样本作为训练样本,对所述目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与所述目标类型相对应的目标检测模型;通过所述目标检测模型对所述目标类型的待测指标数据进行异常检测,得到所述待测指标数据中的异常数据。
根据本申请实施例的一个方面,提供一种异常数据检测装置,该装置包括:样本聚类模块,被配置为对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,所述指标数据样本是按照时间顺序排列的数据序列;模型训练模块,被配置为以所述样本集群的聚类中心作为训练样本,训练得到与所述样本集群相对应的基础检测模型,所述基础检测模型用于检测指标数据中的异常数据;迁移学习模块,被配置为以目标类型的指标数据样本作为训练样本,对所述目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与所述目标类型相对应的目标检测模型;异常检测模块,被配置为通过所述目标检测模型对所述目标类型的待测指标数据进行异常检测,得到所述待测指标数据中的异常数据。
在本申请的一些实施例中,基于以上技术方案,所述样本聚类模块包括:基线提取单元,被配置为对包括多种指标类型的指标数据样本进行基线提取,得到各个所述指标数据样本的样本基线;子曲线提取单元,被配置为从所述样本基线中提取所述指标数据样本的子曲线,所述子曲线包括对应于同一时间周期的多个数据点;聚类处理单元,被配置为对所述子曲线中的数据点进行聚类处理,得到由所述指标数据样本组成的多个样本集群。
在本申请的一些实施例中,基于以上技术方案,所述聚类处理单元包括:子曲线聚类子单元,被配置为对所述子曲线进行聚类处理得到由所述子曲线组成的多个子曲线集群;样本分类子单元,被配置为根据所述子曲线与所述子曲线集群的归属关系,对与所述子曲线相对应的指标数据样本进行分类处理,得到由所述指标数据样本组成的多个样本集群。
在本申请的一些实施例中,基于以上技术方案,所述子曲线提取单元包括:数据分割子单元,被配置为按照相同的时间周期对所述样本基线进行数据分割,得到所述样本基线在各个时间周期内的基线片段;子曲线确定子单元,被配置为对各个时间周期内的基线片段取平均值,得到所述样本基线的子曲线。
在本申请的一些实施例中,基于以上技术方案,所述基线提取单元包括:数值差获取子单元,被配置为获取指标数据样本中各个数据点的平均值,并分别确定每个数据点与所述平均值的数值差;数据点移除子单元,被配置为从所述指标数据样本中移除预设比例的数值差最大的数据点;数值填充子单元,被配置为通过线性插值处理对所述指标数据样本中移除的数据点进行数值填充;基线数据点确定子单元,被配置为通过滑动窗口在所述指标数据样本上依次进行采样得到预设数量的采样数据点,并将所述滑动窗口内的采样数据点的平均值确定为基线数据点;基线数据点排列子单元,被配置为按照时间顺序将所述基线数据点排列组成所述指标数据样本的样本基线。
在本申请的一些实施例中,基于以上技术方案,所述样本聚类模块还包括:相移补偿单元,被配置为相移补偿对所述样本基线进行相移补偿,以缩小任意两个样本基线之间的相位差异。
在本申请的一些实施例中,基于以上技术方案,所述相移补偿单元包括:基线质心获取子单元,被配置为获取所有样本基线的基线质心;基线距离获取子单元,被配置为遍历多个待选相位,获取基于所述待选相位进行相移补偿后的样本基线与所述基线质心的基线距离;目标相位确定子单元,被配置为将所述基线距离最小的待选相位确定为目标相位,并基于所述目标相位对所述样本基线进行相移补偿。
在本申请的一些实施例中,基于以上技术方案,所述模型训练模块包括:数据采样单元,被配置为通过滑动窗口对所述样本集群的聚类中心进行数据采样得到与所述滑动窗口相对应的窗口向量;时间编码单元,被配置为对所述窗口向量中的最后一个数据点的时间信息进行独热编码得到与所述窗口向量相对应的时间向量;模型训练单元,被配置为以所述窗口向量和所述时间向量作为训练样本,训练得到与所述样本集群相对应的基础检测模型。
在本申请的一些实施例中,基于以上技术方案,所述迁移学习模块包括:相似度获取单元,被配置为获取所述目标类型的指标数据样本与所在样本集群的聚类中心之间的数据相似度;第一参数传递单元,被配置为若所述数据相似度大于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的全部模型参数传递至待训练的目标检测模型;第二参数传递单元,被配置为若所述数据相似度小于或等于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的部分模型参数传递至待训练的目标检测模型;迁移学习训练单元,被配置为以目标类型的指标数据样本作为训练样本,训练得到与所述目标类型相对应的目标检测模型。
在本申请的一些实施例中,基于以上技术方案,所述装置还包括:缺失值填充模块,被配置为对待处理的指标数据中的缺失值进行数值填充;数据计算模块,被配置为获取经过数值填充后的指标数据的数据均值和数据标准差;标准化处理模块,被配置为根据所述数据均值和数据标准差对经过数值填充后的指标数据进行数据标准化处理。
在本申请的一些实施例中,基于以上技术方案,所述缺失值填充模块包括:第一填充单元,被配置为在对包括多种指标类型的指标数据样本进行聚类处理之前,通过线性插值对包括多种指标类型的指标数据样本中的缺失值进行数值填充;第二填充单元,被配置为在对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习之前,以零值对所述目标类型的指标数据样本中的缺失值进行数值填充;第三填充单元,被配置为在对目标类型的待测指标数据进行异常检测之前,通过多重插补对所述目标类型的待测指标数据中的缺失值进行数值填充。
在本申请的一些实施例中,基于以上技术方案,所述异常检测模块包括:数据重构单元,被配置为通过所述条件变分自动编码器对所述目标类型的待测指标数据进行编解码处理,得到与所述待测指标数据相对应的重构数据;数据比较单元,被配置为比较所述待测指标数据和对应的重构数据,得到所述待测指标数据中的每个数据点的异常分数;异常数据确定单元,被配置为将所述异常分数超过分数阈值的数据点确定为所述待测指标数据中的异常数据。
根据本申请实施例的一个方面,提供一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如以上技术方案中的异常数据检测方法。
根据本申请实施例的一个方面,提供一种电子设备,该电子设备包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器被配置为经由执行所述可执行指令来执行如以上技术方案中的异常数据检测方法。
根据本申请实施例的一个方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行如以上技术方案中的异常数据检测方法。
在本申请实施例提供的技术方案中,通过对指标数据样本进行聚类处理,可以基于聚类结果训练得到对不同类型的指标数据普遍适用的基础检测模型,在基础检测模型的基础上再进行迁移学习获得适用指定类型的指标数据的目标检测模型,可以在保证异常数据检测精度的前提下,大幅降低模型训练的时间和计算成本,因而可以提高异常数据检测效率,降低异常数据检测成本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性地示出了应用本申请技术方案的示例性系统架构框图。
图2示出了本申请一个实施例中的异常数据检测方法的步骤流程图。
图3示出了本申请实施例提供的异常数据检测方法的原理示意图。
图4示出了本申请一个实施例中对指标数据样本进行聚类处理的方法步骤流程图。
图5示出了本申请一个实施例中对指标数据样本提取基线的步骤流程图。
图6示出了本申请一个实施例中对样本基线提取子曲线的步骤流程图。
图7示出了本申请一个实施例中基于子曲线聚类得到样本集群的步骤流程图。
图8示出了本申请一个实施例中使用的用于对子曲线进行聚类处理的VAE模型结构框图。
图9示出了本申请实施例在一个应用场景中的聚类结果示意图。
图10示出了本申请一个实施例中训练基础检测模型的步骤流程图。
图11示出了本申请一个实施例中对时间信息进行独热编码的编码结果示意图。
图12示出了本申请一个实施例中使用的基础检测模型的模型架构示意图。
图13示出了本申请一个实施例中进行迁移学习的步骤流程图。
图14示意性地示出了本申请实施例提供的异常数据检测装置的结构框图。
图15示意性示出了适于用来实现本申请实施例的电子设备的计算机系统结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本申请实施例提供的异常数据检测方法等技术方案主要涉及人工智能领域的机器学习技术,基于机器学习技术训练相应的数据处理模型,实现对指标数据中异常数据的识别和检测。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
本申请技术方案可以广泛应用于各种指标监控系统中,对积累大量KPI指标数据的基础上快速训练出高性能模型,对KPI发生异常的时间点进行有效的识别,并应用于后续的告警等行为中。
图1示出了应用本申请技术方案的示例性系统架构框图。
如图1所示,系统架构100可以包括终端设备110、网络120和服务器130。终端设备110可以包括智能手机、平板电脑、笔记本电脑、台式电脑等各种电子设备。服务器130可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。网络120可以是能够在终端设备110和服务器130之间提供通信链路的各种连接类型的通信介质,例如可以是有线通信链路或者无线通信链路。
根据实现需要,本申请实施例中的系统架构可以具有任意数目的终端设备、网络和服务器。例如,服务器130可以是由多个服务器设备组成的服务器群组。另外,本申请实施例提供的技术方案可以应用于终端设备110,也可以应用于服务器130,或者可以由终端设备110和服务器130共同实施,本申请对此不做特殊限定。
举例而言,在本申请实施例的一个应用场景中,用户通过终端设备110上安装的各种应用程序客户端,可以基于网络交互获得服务器130提供的各种应用服务,例如播放视频和音乐、发起或者观看网络直播、浏览新闻资讯、点击查看广告、进行网络社交、网络购物和支付等等。服务器130在向用户提供应用服务的同时,可以实时地监测获取服务过程中的各项指标数据,例如可以监测应用程序的运行状态以及用户的请求数据。通过对各项指标数据进行异常数据检测,可以识别出不匹配预期模式或数据集中其他项目的项目、事件或观测值,因而可以及时发现服务过程中的异常信息,以便尽快做出应用调整和故障排除,保持服务系统运行的稳定性。
在本申请的相关技术中,通过训练深度神经网络的方式可以获得对指标数据进行异常数据检测的机器学习模型,这类算法大多需要积累很长时间(长达几个月)的训练数据才能获得良好的性能。而且在相关网络应用中,每台服务器和每个用户相关的操作都会产生相应的KPI。以这种方式积累的KPI数量非常大,在一些大型数据中心甚至可以达到数百万量级。面对大量需要异常检测的KPI,现有的KPI异常检测算法可能存在训练数据不足或训练开销过大的问题。针对相关技术中存在的相关技术问题,本申请提供一种结合聚类算法和迁移学习算法的数据处理方案,能够大大减少对于算法模型的训练数据积累时间和训练时间,尤其是对于新增KPI指标数据的情形,可以快速地获得适应新增数据的异常检测模型。
下面结合具体实施方式对本申请提供的异常数据检测方法、异常数据检测装置、计算机可读介质以及电子设备等技术方案做出详细说明。
图2示出了本申请一个实施例中的异常数据检测方法的步骤流程图。该方法可以由图1所示的系统架构中的终端设备110或者服务130执行,也可以由终端设备110和服务器130共同执行。如图2所示,本申请实施例提供的异常数据检测方法主要可以包括如下的步骤S210至步骤S240。
步骤S210:对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,指标数据样本是按照时间顺序排列的数据序列。
步骤S220:以样本集群的聚类中心作为训练样本,训练得到与样本集群相对应的基础检测模型,基础检测模型用于检测指标数据中的异常数据。
步骤S230:以目标类型的指标数据样本作为训练样本,对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与目标类型相对应的目标检测模型。
步骤S240:通过目标检测模型对目标类型的待测指标数据进行异常检测,得到待测指标数据中的异常数据。
图3示出了本申请实施例提供的异常数据检测方法的原理示意图。如图3所示,首先将预先采集到的指标数据样本310保存至样本数据库,样本数据库中存储的指标数据样本可以包括多种不同的指标类型。由于不同指标类型的指标数据样本在数据格式和数据分布等方面可能存在较大差异,为了将不同指标类型的指标数据样本在相同的算法模型中进行处理,可以对这些指标数据样本进行预处理以最小化各类指标数据样本之间的差异,得到标准化数据样本。
在对标准化数据样本进行聚类处理后,可以得到多个样本集群320,其中相似度较高的标准化数据样本将被分类至同一个样本集群320中,每个样本集群320可以对应确定一个聚类中心330。
分别以每个样本集群的聚类中心330作为训练样本,可以训练得到相应的基础检测模型,例如经过聚类处理后得到N个样本集群,可以相应训练得到N个基础检测模型。
在各个样本集群内,分别采用迁移学习的方式,利用目标类型的指标数据样本对其所在样本集群的基础检测模型进行参数微调,可以训练得到相应的目标检测模型。
最后通过目标检测模型对目标类型的待测指标数据340进行异常检测,可以得到待测指标数据中的异常数据。
在本申请实施例提供的异常数据检测方法中,通过对指标数据样本进行聚类处理,可以基于聚类结果训练得到对样本集群中的不同类型的指标数据普遍适用的基础检测模型,在基础检测模型的基础上再进行迁移学习获得适用目标类型的指标数据的目标检测模型,可以在保证异常数据检测精度的前提下,大幅降低模型训练的时间和计算成本,因而可以提高异常数据检测效率,降低异常数据检测成本。
以下分别通过多个实施例对上述实施例中的异常数据检测方法的各个方法步骤的具体实现方式做出说明。
在步骤S210中,对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,指标数据样本是按照时间顺序排列的数据序列。
指标数据样本可以是在一定的历史时间段内采集到的历史指标数据,采用聚类处理的方式,可以将相似度高的指标数据样本划分至同一个样本集群中。每种指标类型可以对应于一个或者多个指标数据样本,指标数据样本可以是由按照时间顺序排列的数据序列,各个指标数据样本可以具有相同或者不同的序列长度。
图4示出了本申请一个实施例中对指标数据样本进行聚类处理的方法步骤流程图。如图4所示,在以上实施例的基础上,步骤S210中的对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,可以包括如下的步骤S410至步骤S430。
步骤S410:对包括多种指标类型的指标数据样本进行基线提取,得到各个指标数据样本的样本基线。
指标数据样本中一般会存在一定比例的噪音数据和异常数据,这些异常部分会显著改变指标数据样本的曲线形状,对各个指标数据样本的相似性产生误导。本申请实施例可以使用平滑极值(Smoothing Extreme Value)和移动平均线(Moving Average)的方法来去除那些可能是异常的极端值,这样就可以提取一个粗略的基线来表示KPI的底层结构。
图5示出了本申请一个实施例中对指标数据样本提取基线的步骤流程图。如图5所示,在以上实施例的基础上,对包括多种指标类型的指标数据样本进行基线提取的方法可以包括如下的步骤S510至步骤S550。
步骤S510:获取指标数据样本中各个数据点的平均值,并分别确定每个数据点与平均值的数值差。
在一个指标数据样本中,对其所包含的所有数据点计算平均值可以得到该指标数据样本中各个数据点的平均分布线,分布在该平均分布线在一定距离范围内的数据点,可以认为是正常的数据点,而与该平均分布线距离较远的数据点则很可能是噪音数据或者异常数据。通过获取每个数据点与平均值的数值差,可以确定各个数据点与平均分布线之间的距离。
步骤S520:从指标数据样本中移除预设比例的数值差最大的数据点。
与平均值数值差越大的数据点,说明其偏离平均分布线的距离越远,按照数值差由大到小的顺序,移除指标数据样本中的预设比例的数据点,可以避免异常极值对指标数据样本的处理产生误导。异常极值在指标数据样本的数据曲线上一般表现为与相邻数据点相差较大的尖峰或者低谷。异常极值的移除比例可以与指标数据样本的数据点总量相关,例如当指标数据样本中数据量较大时,可以移除较大比例的异常极值;而当指标数据样本中数据量较小时,可以移除较小比例的异常极值。在一个可选的实施方式中,异常极值的移除比例例如可以是5%。
步骤S530:通过线性插值处理对指标数据样本中移除的数据点进行数值填充。
移除指标数据样本中的异常极值后,会在指标数据样本中产生对应的缺失值,为了在后续的数据处理中保持数据样本的完整性,可以通过线性插值(LinearInterpolation)的方式对移除数据点后形成的缺失值进行数值填充。线性插值是根据与缺失值相邻的两个或者更多数量的邻接值对其进行数值估计的方法。在从指标数据样本中移除数据点时,可能会将一部分正常数据点与异常极值一起移除,导致部分正常数据的丢失,但是通过对移除的数据点进行数值填充,可以将这部分丢失数据再次补全。
步骤S540:通过滑动窗口在指标数据样本上依次进行采样得到预设数量的采样数据点,并将滑动窗口内的采样数据点的平均值确定为基线数据点。
一个滑动窗口内可以包括多个采样数据点,通过求取平均值,可以进一步平滑指标数据样本的数据曲线,去除指标数据样本中的噪音数据。
步骤S550:按照时间顺序将基线数据点排列组成指标数据样本的样本基线。
在一个可选的实施方式中,假设指标数据样本是一个长度为m的数据序列T:
T=(x1,x2,……,xm)。
采用滑动窗口W对数据序列T进行数据采样,当滑动步长stride为1时,经过滑动采样后得到的第t个基线数据点xt *是相应滑动窗口内各个采样数据点(xt-W+1,……,xt)的平均值,即:
在对各个基线数据点按照采样的时间顺序,排列后可以形成相应的样本基线B:
通过执行上述的步骤S510至步骤S550可以在去除异常极值和噪声数据的同时,提取到能够反映指标数据样本的基本曲线形状的样本基线。
在步骤S420中,从样本基线中提取指标数据样本的子曲线,子曲线包括对应于同一时间周期的多个数据点。
一个样本基线的时间序列长度与对应指标数据样本相关,而多个不同的指标数据样本一般可以具有不同的序列长度。为了使不同序列长度的样本基线之间具有可比较性,本申请实施例按照相同的时间周期对样本基线进行曲线分割,形成具有相同序列长度的子曲线,每个子曲线中包括有对应于同一时间周期的多个数据点。
图6示出了本申请一个实施例中对样本基线提取子曲线的步骤流程图。如图6所示,在以上实施例的基础上,步骤S420中的从样本基线中提取指标数据样本的子曲线,可以包括如下的步骤S610至步骤S620。
步骤S610:按照相同的时间周期对样本基线进行数据分割,得到样本基线在各个时间周期内的基线片段。
步骤S620:对各个时间周期内的基线片段取平均值,得到样本基线的子曲线。
举例而言,本申请实施例中对样本基线进行数据分割的时间周期可以是一周,在提取子曲线时,首先去除位于样本基线首尾两端的不完整的周,然后以一周为时间长度对样本基线进行数据分割,进一步对分割得到的基线片段求取平均值后,可以得到一个样本基线的子曲线。在子曲线中以天为时间节点,对应一个子曲线中的数据向量可以表示为
其中,i是代表一周中每一天的指数,其取值范围为1~7。j是代表一个样本基线中每个数据点的指数,其取值范围可以是1~m,m表示一个数据点的向量长度,k是代表一个样本基线中每个完整周的指数,是要确定的子曲线中每个工作日的平均向量,/>是一个时间长度为一天的向量。n表示样本基线中包括有n个完整的周。
在步骤S430中,对子曲线中的数据点进行聚类处理,得到由指标数据样本组成的多个样本集群。
图7示出了本申请一个实施例中基于子曲线聚类得到样本集群的步骤流程图。如图7所示,在以上实施例的基础上,步骤S430中的对子曲线中的数据点进行聚类处理,得到由指标数据样本组成的多个样本集群,可以包括如下的步骤S710至步骤S720。
步骤S710:对子曲线中的数据点进行聚类处理得到由数据点组成的多个子曲线集群。
在一个可选的实施方式中,本申请实施例可以利用子曲线的数据训练相应的变分自编码器(Variational Auto-Encoder,VAE),用于实现对子曲线的特征提取,并基于特征提取结果对子曲线进行聚类处理。
图8示出了本申请一个实施例中使用的用于对子曲线进行聚类处理的VAE模型结构框图。
如图8所示,本申请实施例使用的VAE模型可以包括编码器Encoder和解码器Decoder。
在训练阶段(Training Stage),将作为训练样本的子曲线数据输入到编码器Encoder中,通过编码器Encoder对输入数据(Input Data)进行编码处理后,可以将子曲线数据映射至隐层空间(Latent Space),得到相应的隐层向量z~qφ(z|x)。在将隐层向量输入至解码器Encoder,进行解码处理后,可以得到相应的重构数据(Reconstructed Data)。根据重构数据与原始的子曲线数据之间的重构误差,可以对VAE模型的模型参数进行调整优化,并在满足训练终止条件时,获得训练完成的VAE模型。在这一阶段,可以使用从每个样本基线中提取到的所有子曲线对VAE模型进行训练,使其能够尽可能多地学习子曲线的所有特征,并对其进行进一步降维。
在采样阶段(Sampling Stage),将子曲线数据输入到VAE模型的编码器Encoder中,获得模型输出的隐层向量,并以对应的隐层向量作为聚类基础对各个子曲线进行聚类处理。
在一个可选的实施方式中,由VAE模型输出的隐层向量可以输入至K-means聚类模型中,通过K-means聚类算法对其进行聚类处理得到相应的多个子曲线集群。
步骤S720:根据子曲线中的各个数据点与子曲线集群的归属关系,对与子曲线相对应的指标数据样本进行分类处理,得到由指标数据样本组成的多个样本集群。
图9示出了本申请实施例在一个应用场景中的聚类结果示意图。如图9所示,假设本申请实施例中具有三个待分类的KPI,分别为A、B和C。在经过曲线分割和求取平均值后,可以确定每个KPI具有一周中分别对应于周一至周日的7个子曲线。在对21个子曲线进行聚类处理后,例如可以形成4个子曲线集群。对于KPI A而言,其中最多有4个子曲线归属于第1类子曲线集群,因此可以将KPI A分类至第一个样本集群I。对于KPI B而言,其中最多有5个子曲线归属于第2类子曲线集群,因此可以将KPI B分类至第二个样本集群II。对于KPI C而言,最多有5个子曲线归属于第1类子曲线集群,因此可以将KPI C分类至第一个样本集群I。
在本申请的一个实施例中,在对样本基线或者样本基线提取到的子曲线进行聚类处理之前,可以首先对样本基线进行相移补偿(Phase Shift Compensation),以缩小任意两个样本基线之间的相位差异。通过相移补偿可以尽可能地减少聚类处理后的类簇数目,进而可以减少后续进行模型训练的计算开销。
在本申请的一个实施例中,对样本基线进行相移补偿的方法可以包括:获取所有样本基线的基线质心;遍历多个待选相位,获取基于待选相位进行相移补偿后的样本基线与基线质心的基线距离;将基线距离最小的待选相位确定为目标相位,并基于目标相位对样本基线进行相移补偿。
获取基线质心的方法例如可以是对各个样本基线中对应于同一时间节点的数据计算平均值,各个时间节点上的数据平均值组成的数据序列作为基线质心。本申请实施例可以使用基于形状的距离(shape based distance,SBD)来计算所有其他样本基线和基线质心之间的距离。以两个曲线和/>为例,SBD可以遍历所有可能的待选相位s,s∈[-m+1,m-1]。对于一个特定的s而言:
当s更接近实际的相移时(即和/>的峰值是对齐的),两个时间序列的内积将更大。/>的范围为[-1,1]。当值为-1时,两条曲线相差最大;当值为1时,两条曲线几乎相同。因此,/>的范围为[0,2],取值越小时,两条曲线越接近。在此基础上,可以选择使/>取值最小的s作为用于进行相移补偿的目标相位。
在步骤S220中,以样本集群的聚类中心作为训练样本,训练得到与样本集群相对应的基础检测模型,基础检测模型用于检测指标数据中的异常数据。
图10示出了本申请一个实施例中训练基础检测模型的步骤流程图。如图10所示,在以上各实施例的基础上,步骤S220中的以样本集群的聚类中心作为训练样本,训练得到与样本集群相对应的基础检测模型,可以包括如下的步骤S1010至步骤S1030。
步骤S1010:通过滑动窗口对样本集群的聚类中心进行数据采样得到与滑动窗口相对应的窗口向量;
步骤S1020:对窗口向量中的最后一个数据点的时间信息进行独热编码得到与窗口向量相对应的时间向量;
步骤S1030:以窗口向量和时间向量作为训练样本,训练得到与样本集群相对应的基础检测模型。
图11示出了本申请一个实施例中对时间信息进行独热编码的编码结果示意图。如图11所示,首先在滑动窗口提取到的窗口向量中,提取最后一个数据点的时间信息,如:日期为2020年09月18日,时间为16时25分13秒,当天为一周中的星期五。对时间信息进行分解(Decompose),得到对应每个时间维度上的取值,本申请实施例选取其中的分钟(minute)、小时(hour)和星期(day of weak)三个维度对应的三个数值分别为25(分钟)、16(小时)和5(星期)。对各个维度上的数值进行编码处理后得到相应的独热编码(One-hot Encode)。
图12示出了本申请一个实施例中使用的基础检测模型的模型架构示意图。如图12所示,本申请实施例中使用的基础检测模型是基于条件变分自编码器(ConditionalVariational Auto-Encoder,CVAE)训练的神经网络模型。该模型包括一个作为编码器Encoder使用的变分网络(Variational Network)和一个作为解码器Decoder使用的生成网络fθ(z)(Generative Network)。同时,本申请实施例中的条件变分自编码器还包括一个脱落层(Dropout Layer)。
在训练开始时,时间向量通过脱落层随机脱落,以防止过度拟合。然后将通过滑动窗口采样得到的W维窗口向量与Y维时间向量直接级联,形成W+Y维向量,输入至变分网络中。在本申请实施例中,隐层空间的分布可以视为独立的高斯分布。变分网络通过隐藏层(Hidden Layers)对输入W+Y维向量进行映射转换后生成两个K维向量,分别表示隐层空间分布的均值μz和标准差σz。接下来,在隐层空间中按照分布z~N(μzz)进行采样得到K维向量z,然后将K维向量z与时间Y维的向量级联成为K+Y维向量,输入到生成网络中。生成的网络结构类似于变分网络,在经过隐藏层进行映射转换后输出两个W维向量,分别表示重构数据的均值μx和标准差σx。至此完成一次输入向量的正向传播周期,再基于计算得到的损失误差进行反向传播后,可以实现对模型参数的更新优化。
在本申请的一个实施例中,在基础检测模型的训练过程中可以引入缺失数据注入机制,即故意创建一些缺失数据,通过增加缺失或异常数据点的数量来增加模型学习正态模式的难度,进而增强算法的鲁棒性。
为了减少缺失数据和异常数据对模型正常学习模式的干扰,并尽可能利用标注过的数据,本申请实施例采用一种无监督异常检测算法,该算法不需要任何异常标注,例如采用ELBO算法或者M-ELBO算法。
本申请实施例中对基础检测模型进行训练的损失函数为:
其中,α是一个01向量,当αi取值为1时表示xi为缺失点或异常点,当αi取值为0时表示xi为正常数据点(非异常点或缺失点)。β是窗口中正常数据点的数量比例。
在步骤S230中,以目标类型的指标数据样本作为训练样本,对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与目标类型相对应的目标检测模型。
图13示出了本申请一个实施例中进行迁移学习的步骤流程图。如图13所示,在以上各实施例的基础上步骤S230中的对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习的方法可以包括如下的步骤S1310至步骤S1340。
步骤S1310:获取目标类型的指标数据样本与所在样本集群的聚类中心之间的数据相似度。
步骤S1320:若数据相似度大于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的全部模型参数传递至待训练的目标检测模型。
步骤S1330:若数据相似度小于或等于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的部分模型参数传递至待训练的目标检测模型。
步骤S1340:以目标类型的指标数据样本作为训练样本,训练得到与目标类型相对应的目标检测模型。
在本申请实施例中,基于样本集群的聚类中心(即基础KPI)训练得到基础检测模型后,可以利用基础检测模型辅助样本集群中目标KPI的训练过程,由此缩短目标KPI所需的数据长度和训练时间。
在本申请实施例中,对于与基础KPI相似度较高的目标KPI采用全参数转移方法,对于与基础KPI相似度较低的目标KPI采用外参数转移方法。本申请实施例可以使用如上述实施例中的SBD算法计算目标KPI与基础KPI之间的相似性,并基于预先设置的阈值α,确定参数转移的方式。如果意味着基础KPI和目标KPI非常相似,此时可以选择全参数转移方法。相反地,如果基础KPI和目标KPI相似度较低,则可以选择外参数转移方法。
如果选择全参数转移方法,则基础检测模型的所有模型参数将直接复制到新的模型中,然后使用目标KPI来微调新模型。如果选择外参数传递方法,可以首先用随机权重初始化新的CVAE模型;然后将基础检测模型的外层参数(如距离输出端最近的一个网络层的网络参数)加载到新模型中。为了避免过度拟合,本申请实施例可以首先冻结转移的外层参数,并使用目标KPI单独训练随机初始化的内层参数。一段时间后,本申请实施例解冻传输的参数,并继续对模型整体执行微调训练。
在步骤S240中,通过目标检测模型对目标类型的待测指标数据进行异常检测,得到待测指标数据中的异常数据。
在本申请的一个实施例中,目标检测模型为条件变分自动编码器。通过目标检测模型对目标类型的待测指标数据进行异常检测的方法可以包括:通过条件变分自动编码器对目标类型的待测指标数据进行编解码处理,得到与待测指标数据相对应的重构数据;比较待测指标数据和对应的重构数据,得到待测指标数据中的每个数据点的异常分数;将异常分数超过分数阈值的数据点确定为待测指标数据中的异常数据。
在一个可选的实施方式中,可以采用如下的负重构概率来表示待测指标数据和对应的重构数据之间的重构差异。
一个数据点对应的负重构概率越高,表示该数据点存在数据异常的概率越大。为每个KPI选择合适的异常分数阈值是非常重要的。在本申请实施例中,可以使用一个迁移学习增强SPOT算法来预测KPI数据流上的这个阈值。
仅仅在每个KPI上使用SPOT是不够的,本申请实施例可以通过共享超参数来利用迁移学习的思想来提高其性能。本申请实施例中进行共享的SPOT算法的两个超参数可以是水平(level)和风险(risk)。在本申请实施例可以,通过尝试一些级别和风险的可能组合得到相应的超参数,可以在样本集群的基础KPI上获得相对最好的性能。然后,本申请实施例可以在同一个样本集群中共享这组超参数。如此一来,每个样本集群就有一组基于其基础KPI的SPOT超参数。
在本申请的一个实施例中,在对待处理的指标数据进行聚类处理、模型训练或者异常检测之前,还可以对相应的指标数据进行预处理,具体可以包括:对待处理的指标数据中的缺失值进行数值填充;获取经过数值填充后的指标数据的数据均值和数据标准差;根据数据均值和数据标准差对经过数值填充后的指标数据进行数据标准化处理。
在本申请的一个实施例中,对待处理的指标数据中的缺失值进行数值填充的方法可以包括:在对包括多种指标类型的指标数据样本进行聚类处理之前,通过线性插值对包括多种指标类型的指标数据样本中的缺失值进行数值填充;在对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习之前,以零值对目标类型的指标数据样本中的缺失值进行数值填充;在对目标类型的待测指标数据进行异常检测之前,通过多重插补(MCMC缺失填充算法)对目标类型的待测指标数据中的缺失值进行数值填充。MCMC缺失填充算法的核心在于,给定曲线的正态部分,让经过训练的模型重建输入数据的缺失部分,然后用重建的数据替换缺失的数据。此过程重复几次后可以尽可能减少数据丢失对检测过程的影响。
在本申请的一个实施例中,对指标数据进行数据标准化处理的公式如下:
其中xt为原始数据,μx和σx分别为的均值和标准差。本申请实施例通过对基于时间的数据序列进行标准化处理,可以在各个数据序列之间进行有意义的比较,因为KPI来自不同的应用程序和系统,其振幅是不同的。标准化可以消除幅度上的差异,并帮助计算KPI之间的相似性。
在本申请实施例的一个应用场景中,使用的数据集是由两家大型互联网公司的真实互联网服务生成的真实KPI,一共包括79个KPI。每个KPI的长度约为100000个数据点,每个数据点之间的时间间隔为1分钟。平均异常率为1.41%,平均缺失率为1.84%。所有的数据都被充分标记,可以用来评价本申请实施例技术方案进行异常数据检测的检测效果。实验结果表明,本申请实施例可以在保持预期的异常检测精度的前提下,将训练数据的平均长度和训练时间减少80%。
本申请实施例提出了一种针对长KPI曲线的降维方法,将长达几个月的数据压缩为一周,然后按工作日提取子曲线。本申请实施例使用基于形状的距离(SBD)来调整KPI之间的相移,并且成功地减少了聚类的数量,从而减少了后续迁移学习过程的训练开销。
本申请实施例提出了一种专门为无监督KPI异常检测算法设计的KPI聚类算法。该算法可以大大减少聚类所需的时间,提高后续迁移学习过程的性能。本申请实施例将迁移学习与Bagel算法相结合,并使用全部参数转移或者部分参数转移的选择算法来成功提高算法性能。本申请实施例采用SPOT来预测生产环境中的异常得分阈值,并使用迁移学习来提高其性能。
应当注意,尽管在附图中以特定顺序描述了本申请中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的异常数据检测方法。图14示意性地示出了本申请实施例提供的异常数据检测装置的结构框图。如图14所示,异常数据检测装置1400主要可以包括:样本聚类模块1410,被配置为对包括多种指标类型的指标数据样本进行聚类处理得到多个样本集群,所述指标数据样本是按照时间顺序排列的数据序列;模型训练模块1420,被配置为以所述样本集群的聚类中心作为训练样本,训练得到与所述样本集群相对应的基础检测模型,所述基础检测模型用于检测指标数据中的异常数据;迁移学习模块1430,被配置为以目标类型的指标数据样本作为训练样本,对所述目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与所述目标类型相对应的目标检测模型;异常检测模块1440,被配置为通过所述目标检测模型对所述目标类型的待测指标数据进行异常检测,得到所述待测指标数据中的异常数据。
在本申请的一些实施例中,基于以上各实施例,所述样本聚类模块1410包括:基线提取单元,被配置为对包括多种指标类型的指标数据样本进行基线提取,得到各个所述指标数据样本的样本基线;子曲线提取单元,被配置为从所述样本基线中提取所述指标数据样本的子曲线,所述子曲线包括对应于同一时间周期的多个数据点;聚类处理单元,被配置为对所述子曲线中的数据点进行聚类处理,得到由所述指标数据样本组成的多个样本集群。
在本申请的一些实施例中,基于以上各实施例,所述聚类处理单元包括:子曲线聚类子单元,被配置为对所述子曲线进行聚类处理得到由所述子曲线组成的多个子曲线集群;样本分类子单元,被配置为根据所述子曲线与所述子曲线集群的归属关系,对与所述子曲线相对应的指标数据样本进行分类处理,得到由所述指标数据样本组成的多个样本集群。
在本申请的一些实施例中,基于以上各实施例,所述子曲线提取单元包括:数据分割子单元,被配置为按照相同的时间周期对所述样本基线进行数据分割,得到所述样本基线在各个时间周期内的基线片段;子曲线确定子单元,被配置为对各个时间周期内的基线片段取平均值,得到所述样本基线的子曲线。
在本申请的一些实施例中,基于以上各实施例,所述基线提取单元包括:数值差获取子单元,被配置为获取指标数据样本中各个数据点的平均值,并分别确定每个数据点与所述平均值的数值差;数据点移除子单元,被配置为从所述指标数据样本中移除预设比例的数值差最大的数据点;数值填充子单元,被配置为通过线性插值处理对所述指标数据样本中移除的数据点进行数值填充;基线数据点确定子单元,被配置为通过滑动窗口在所述指标数据样本上依次进行采样得到预设数量的采样数据点,并将所述滑动窗口内的采样数据点的平均值确定为基线数据点;基线数据点排列子单元,被配置为按照时间顺序将所述基线数据点排列组成所述指标数据样本的样本基线。
在本申请的一些实施例中,基于以上各实施例,所述样本聚类模块1410还包括:相移补偿单元,被配置为相移补偿对所述样本基线进行相移补偿,以缩小任意两个样本基线之间的相位差异。
在本申请的一些实施例中,基于以上各实施例,所述相移补偿单元包括:基线质心获取子单元,被配置为获取所有样本基线的基线质心;基线距离获取子单元,被配置为遍历多个待选相位,获取基于所述待选相位进行相移补偿后的样本基线与所述基线质心的基线距离;目标相位确定子单元,被配置为将所述基线距离最小的待选相位确定为目标相位,并基于所述目标相位对所述样本基线进行相移补偿。
在本申请的一些实施例中,基于以上各实施例,所述模型训练模块1420包括:数据采样单元,被配置为通过滑动窗口对所述样本集群的聚类中心进行数据采样得到与所述滑动窗口相对应的窗口向量;时间编码单元,被配置为对所述窗口向量中的最后一个数据点的时间信息进行独热编码得到与所述窗口向量相对应的时间向量;模型训练单元,被配置为以所述窗口向量和所述时间向量作为训练样本,训练得到与所述样本集群相对应的基础检测模型。
在本申请的一些实施例中,基于以上各实施例,所述迁移学习模块1430包括:相似度获取单元,被配置为获取所述目标类型的指标数据样本与所在样本集群的聚类中心之间的数据相似度;第一参数传递单元,被配置为若所述数据相似度大于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的全部模型参数传递至待训练的目标检测模型;第二参数传递单元,被配置为若所述数据相似度小于或等于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的部分模型参数传递至待训练的目标检测模型;迁移学习训练单元,被配置为以目标类型的指标数据样本作为训练样本,训练得到与所述目标类型相对应的目标检测模型。
在本申请的一些实施例中,基于以上各实施例,所述异常数据检测装置1400还包括:缺失值填充模块,被配置为对待处理的指标数据中的缺失值进行数值填充;数据计算模块,被配置为获取经过数值填充后的指标数据的数据均值和数据标准差;标准化处理模块,被配置为根据所述数据均值和数据标准差对经过数值填充后的指标数据进行数据标准化处理。
在本申请的一些实施例中,基于以上各实施例,所述缺失值填充模块包括:第一填充单元,被配置为在对包括多种指标类型的指标数据样本进行聚类处理之前,通过线性插值对包括多种指标类型的指标数据样本中的缺失值进行数值填充;第二填充单元,被配置为在对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习之前,以零值对所述目标类型的指标数据样本中的缺失值进行数值填充;第三填充单元,被配置为在对目标类型的待测指标数据进行异常检测之前,通过多重插补对所述目标类型的待测指标数据中的缺失值进行数值填充。
在本申请的一些实施例中,基于以上各实施例,所述异常检测模块1440包括:数据重构单元,被配置为通过所述条件变分自动编码器对所述目标类型的待测指标数据进行编解码处理,得到与所述待测指标数据相对应的重构数据;数据比较单元,被配置为比较所述待测指标数据和对应的重构数据,得到所述待测指标数据中的每个数据点的异常分数;异常数据确定单元,被配置为将所述异常分数超过分数阈值的数据点确定为所述待测指标数据中的异常数据。
本申请各实施例中提供的异常数据检测装置的具体细节已经在对应的方法实施例中进行了详细的描述,此处不再赘述。
图15示意性地示出了用于实现本申请实施例的电子设备的计算机系统结构框图。
需要说明的是,图15示出的电子设备的计算机系统1500仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图15所示,计算机系统1500包括中央处理器1501(Central Processing Unit,CPU),其可以根据存储在只读存储器1502(Read-Only Memory,ROM)中的程序或者从存储部分1508加载到随机访问存储器1503(Random Access Memory,RAM)中的程序而执行各种适当的动作和处理。在随机访问存储器1503中,还存储有系统操作所需的各种程序和数据。中央处理器1501、在只读存储器1502以及随机访问存储器1503通过总线1504彼此相连。输入/输出接口1505(Input/Output接口,即I/O接口)也连接至总线1504。
以下部件连接至输入/输出接口1505:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1507;包括硬盘等的存储部分1508;以及包括诸如局域网卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至输入/输出接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。
特别地,根据本申请的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被中央处理器1501执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (15)

1.一种异常数据检测方法,其特征在于,包括:
对包括多种指标类型的指标数据样本进行基线提取,得到各个所述指标数据样本的样本基线;所述指标数据样本是按照时间顺序排列的数据序列;
从所述样本基线中提取对应于同一时间周期的多个子曲线;
对所述子曲线进行聚类处理,得到由所述指标数据样本组成的多个样本集群;
以所述样本集群的聚类中心作为训练样本,训练得到与所述样本集群相对应的基础检测模型,所述基础检测模型用于检测指标数据中的异常数据;所述指标数据是服务系统在运行过程中产生的关键性能指标;
以目标类型的指标数据样本作为训练样本,对所述目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与所述目标类型相对应的目标检测模型;
通过所述目标检测模型对所述目标类型的待测指标数据进行异常检测,得到所述待测指标数据中的异常数据。
2.根据权利要求1所述的异常数据检测方法,其特征在于,所述对所述子曲线进行聚类处理,得到由所述指标数据样本组成的多个样本集群,包括:
对所述子曲线进行聚类处理得到由所述子曲线组成的多个子曲线集群;
根据所述子曲线与所述子曲线集群的归属关系,对与所述子曲线相对应的指标数据样本进行分类处理,得到由所述指标数据样本组成的多个样本集群。
3.根据权利要求1所述的异常数据检测方法,其特征在于,所述从所述样本基线中提取所述指标数据样本的子曲线,包括:
按照相同的时间周期对所述样本基线进行数据分割,得到所述样本基线在各个时间周期内的基线片段;
对各个时间周期内的基线片段取平均值,得到所述样本基线的子曲线。
4.根据权利要求1所述的异常数据检测方法,其特征在于,所述对包括多种指标类型的指标数据样本进行基线提取,得到各个所述指标数据样本的样本基线,包括:
获取指标数据样本中各个数据点的平均值,并分别确定每个数据点与所述平均值的数值差;
从所述指标数据样本中移除预设比例的数值差最大的数据点;
通过线性插值处理对所述指标数据样本中移除的数据点进行数值填充;
通过滑动窗口在所述指标数据样本上依次进行采样得到预设数量的采样数据点,并将所述滑动窗口内的采样数据点的平均值确定为基线数据点;
按照时间顺序将所述基线数据点排列组成所述指标数据样本的样本基线。
5.根据权利要求1所述的异常数据检测方法,其特征在于,在从所述样本基线中提取对应于同一时间周期的多个子曲线之前,所述方法还包括:
对所述样本基线进行相移补偿,以缩小任意两个样本基线之间的相位差异。
6.根据权利要求5所述的异常数据检测方法,其特征在于,所述对所述样本基线进行相移补偿,包括:
获取所有样本基线的基线质心;
遍历多个待选相位,获取基于所述待选相位进行相移补偿后的样本基线与所述基线质心的基线距离;
将所述基线距离最小的待选相位确定为目标相位,并基于所述目标相位对所述样本基线进行相移补偿。
7.根据权利要求1所述的异常数据检测方法,其特征在于,所述以所述样本集群的聚类中心作为训练样本,训练得到与所述样本集群相对应的基础检测模型,包括:
通过滑动窗口对所述样本集群的聚类中心进行数据采样得到与所述滑动窗口相对应的窗口向量;
对所述窗口向量中的最后一个数据点的时间信息进行独热编码得到与所述窗口向量相对应的时间向量;
以所述窗口向量和所述时间向量作为训练样本,训练得到与所述样本集群相对应的基础检测模型。
8.根据权利要求1所述的异常数据检测方法,其特征在于,对所述目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与所述目标类型相对应的目标检测模型,包括:
获取所述目标类型的指标数据样本与所在样本集群的聚类中心之间的数据相似度;
若所述数据相似度大于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的全部模型参数传递至待训练的目标检测模型;
若所述数据相似度小于或等于相似度阈值,将目标类型的指标数据样本所在样本集群的基础检测模型的部分模型参数传递至待训练的目标检测模型;
以目标类型的指标数据样本作为训练样本,训练得到与所述目标类型相对应的目标检测模型。
9.根据权利要求1所述的异常数据检测方法,其特征在于,在对待处理的指标数据进行聚类处理、模型训练或者异常检测之前,所述方法还包括:
对待处理的指标数据中的缺失值进行数值填充;
获取经过数值填充后的指标数据的数据均值和数据标准差;
根据所述数据均值和数据标准差对经过数值填充后的指标数据进行数据标准化处理。
10.根据权利要求9所述的异常数据检测方法,其特征在于,所述对待处理的指标数据中的缺失值进行数值填充,包括:
在对包括多种指标类型的指标数据样本进行聚类处理之前,通过线性插值对包括多种指标类型的指标数据样本中的缺失值进行数值填充;
在对目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习之前,以零值对所述目标类型的指标数据样本中的缺失值进行数值填充;
在对目标类型的待测指标数据进行异常检测之前,通过多重插补对所述目标类型的待测指标数据中的缺失值进行数值填充。
11.根据权利要求1所述的异常数据检测方法,其特征在于,所述目标检测模型为条件变分自动编码器;所述通过所述目标检测模型对所述目标类型的待测指标数据进行异常检测,得到所述待测指标数据中的异常数据,包括:
通过所述条件变分自动编码器对所述目标类型的待测指标数据进行编解码处理,得到与所述待测指标数据相对应的重构数据;
比较所述待测指标数据和对应的重构数据,得到所述待测指标数据中的每个数据点的异常分数;
将所述异常分数超过分数阈值的数据点确定为所述待测指标数据中的异常数据。
12.一种异常数据检测装置,其特征在于,包括:
样本聚类模块,被配置为对包括多种指标类型的指标数据样本进行基线提取,得到各个所述指标数据样本的样本基线;所述指标数据样本是按照时间顺序排列的数据序列;从所述样本基线中提取对应于同一时间周期的多个子曲线;对所述子曲线进行聚类处理,得到由所述指标数据样本组成的多个样本集群;
模型训练模块,被配置为以所述样本集群的聚类中心作为训练样本,训练得到与所述样本集群相对应的基础检测模型,所述基础检测模型用于检测指标数据中的异常数据;所述指标数据是服务系统在运行过程中产生的关键性能指标;
迁移学习模块,被配置为以目标类型的指标数据样本作为训练样本,对所述目标类型的指标数据样本所在样本集群的基础检测模型进行迁移学习,得到与所述目标类型相对应的目标检测模型;
异常检测模块,被配置为通过所述目标检测模型对所述目标类型的待测指标数据进行异常检测,得到所述待测指标数据中的异常数据。
13.一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1至11中任意一项所述的异常数据检测方法。
14.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至11中任意一项所述的异常数据检测方法。
15.一种计算机程序产品,包括计算机指令,其特征在于,所述计算机指令被处理器执行时实现如权利要求1至11中任意一项所述的异常数据检测方法。
CN202110132371.5A 2021-01-31 2021-01-31 异常数据检测方法、装置、计算机可读介质及电子设备 Active CN113568819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110132371.5A CN113568819B (zh) 2021-01-31 2021-01-31 异常数据检测方法、装置、计算机可读介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110132371.5A CN113568819B (zh) 2021-01-31 2021-01-31 异常数据检测方法、装置、计算机可读介质及电子设备

Publications (2)

Publication Number Publication Date
CN113568819A CN113568819A (zh) 2021-10-29
CN113568819B true CN113568819B (zh) 2024-04-16

Family

ID=78161079

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110132371.5A Active CN113568819B (zh) 2021-01-31 2021-01-31 异常数据检测方法、装置、计算机可读介质及电子设备

Country Status (1)

Country Link
CN (1) CN113568819B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745161B (zh) * 2022-03-23 2023-08-22 烽台科技(北京)有限公司 一种异常流量的检测方法、装置、终端设备和存储介质
CN114662688A (zh) * 2022-03-29 2022-06-24 北京百度网讯科技有限公司 模型的训练方法、数据处理方法、装置、电子设备及介质
CN115049021B (zh) * 2022-08-11 2022-11-08 江西合一云数据科技股份有限公司 应用于公众集群管理的数据处理方法和装置及其设备
CN115438102B (zh) * 2022-11-09 2023-03-24 成都新希望金融信息有限公司 时空数据异常识别方法、装置和电子设备
CN115754599B (zh) * 2022-11-10 2024-06-14 海南电网有限责任公司乐东供电局 基于迁移学习的电缆故障定位方法和装置
CN117056171B (zh) * 2023-09-22 2024-01-09 北京博点智合科技有限公司 一种基于AI算法的Kafka异常监控方法及装置
CN117829097B (zh) * 2024-02-29 2024-05-28 双一力(宁波)电池有限公司 电池数据处理方法、装置、电子设备及可读存储介质
CN117934572B (zh) * 2024-03-21 2024-05-28 南京起源跃动科技有限公司 一种3d骨骼坐标系与vr头显坐标系对齐的方法
CN118039134B (zh) * 2024-04-09 2024-06-04 达州市中心医院(达州市人民医院) 基于大数据的医疗信息数据增强方法及系统
CN118536009B (zh) * 2024-07-24 2024-10-11 湖北华中电力科技开发有限责任公司 基于生成式人工智能的电力数据模型构建方法及系统
CN118550757B (zh) * 2024-07-30 2024-10-15 安徽思高智能科技有限公司 面向缺失数据的微服务系统根因定位方法、介质及设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109587350A (zh) * 2018-11-16 2019-04-05 国家计算机网络与信息安全管理中心 一种基于滑动时间窗口聚合的电信诈骗电话的序列异常检测方法
CN110321833A (zh) * 2019-06-28 2019-10-11 南京邮电大学 基于卷积神经网络和循环神经网络的人体行为识别方法
CN110447038A (zh) * 2017-03-21 2019-11-12 日本电气株式会社 图像处理装置、图像处理方法和记录介质
CN110701087A (zh) * 2019-09-25 2020-01-17 杭州电子科技大学 基于单分类超限学习机的轴流压气机气动失稳检测方法
CN111131314A (zh) * 2019-12-31 2020-05-08 奇安信科技集团股份有限公司 网络行为的检测方法、装置、计算机设备和存储介质
CN111177505A (zh) * 2019-12-31 2020-05-19 中国移动通信集团江苏有限公司 指标异常检测模型的训练方法、推荐的方法及装置
WO2020134032A1 (zh) * 2018-12-28 2020-07-02 中国银联股份有限公司 用于检测业务系统异常的方法及其装置
CN111738308A (zh) * 2020-06-03 2020-10-02 浙江中烟工业有限责任公司 基于聚类及半监督学习的监控指标动态阈值检测方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200097810A1 (en) * 2018-09-25 2020-03-26 Oracle International Corporation Automated window based feature generation for time-series forecasting and anomaly detection
US11100793B2 (en) * 2019-01-15 2021-08-24 Waycare Technologies Ltd. System and method for detection and quantification of irregular traffic congestion

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110447038A (zh) * 2017-03-21 2019-11-12 日本电气株式会社 图像处理装置、图像处理方法和记录介质
CN109587350A (zh) * 2018-11-16 2019-04-05 国家计算机网络与信息安全管理中心 一种基于滑动时间窗口聚合的电信诈骗电话的序列异常检测方法
WO2020134032A1 (zh) * 2018-12-28 2020-07-02 中国银联股份有限公司 用于检测业务系统异常的方法及其装置
CN110321833A (zh) * 2019-06-28 2019-10-11 南京邮电大学 基于卷积神经网络和循环神经网络的人体行为识别方法
CN110701087A (zh) * 2019-09-25 2020-01-17 杭州电子科技大学 基于单分类超限学习机的轴流压气机气动失稳检测方法
CN111131314A (zh) * 2019-12-31 2020-05-08 奇安信科技集团股份有限公司 网络行为的检测方法、装置、计算机设备和存储介质
CN111177505A (zh) * 2019-12-31 2020-05-19 中国移动通信集团江苏有限公司 指标异常检测模型的训练方法、推荐的方法及装置
CN111738308A (zh) * 2020-06-03 2020-10-02 浙江中烟工业有限责任公司 基于聚类及半监督学习的监控指标动态阈值检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于深度学习的异常检测模型研究;张圣昌;《中国优秀硕士学位论文全文数据库(电子期刊)》;20190831;第1-14页 *

Also Published As

Publication number Publication date
CN113568819A (zh) 2021-10-29

Similar Documents

Publication Publication Date Title
CN113568819B (zh) 异常数据检测方法、装置、计算机可读介质及电子设备
Li et al. DCT-GAN: dilated convolutional transformer-based GAN for time series anomaly detection
CN110162700B (zh) 信息推荐及模型的训练方法、装置、设备以及存储介质
Kong et al. Integrated generative model for industrial anomaly detection via bidirectional LSTM and attention mechanism
Zhang et al. Energy theft detection in an edge data center using threshold-based abnormality detector
CN116777452B (zh) 智能电表的预付费系统及其方法
Liang Optimization of quantitative financial data analysis system based on deep learning
CN112041880A (zh) 用于评估信用风险的深度学习方法
CN113190662A (zh) 基于篇章结构图网络的话题分割方法
CN114969533A (zh) 一种基于用户长短期偏好的序列推荐方法
Hu et al. [Retracted] Evaluation Method of Wushu Teaching Quality Based on Fuzzy Clustering
CN113094448B (zh) 住宅空置状态的分析方法及分析装置、电子设备
CN117408394A (zh) 电力系统的碳排放因子预测方法、装置及电子设备
Wang et al. MIANet: Multi-level temporal information aggregation in mixed-periodicity time series forecasting tasks
CN114078024A (zh) 广告库存的预估方法、装置、介质以及电子设备
Majidpour Time series prediction for electric vehicle charging load and solar power generation in the context of smart grid
Qin et al. A hybrid deep learning model for short‐term load forecasting of distribution networks integrating the channel attention mechanism
CN116662601A (zh) 一种基于图神经网络和知识图谱的歌曲推荐方法
CN116775400A (zh) 一种日志分析方法、装置、设备及存储介质
CN113589034B (zh) 一种配电系统的窃电检测方法、装置、设备和介质
CN117194966A (zh) 对象分类模型的训练方法和相关装置
CN114154564A (zh) 基于异质图的关联度确定方法、装置、电子设备及存储介质
Chen et al. FedLGAN: a method for anomaly detection and repair of hydrological telemetry data based on federated learning
CN113821401A (zh) 基于wt-ga-gru模型的云服务器故障诊断方法
Kim et al. Correlation-driven multi-level learning for anomaly detection on multiple energy sources

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
GR01 Patent grant
GR01 Patent grant