CN116523172A - 基于跨指标的多维度根本原因分析 - Google Patents
基于跨指标的多维度根本原因分析 Download PDFInfo
- Publication number
- CN116523172A CN116523172A CN202210041099.4A CN202210041099A CN116523172A CN 116523172 A CN116523172 A CN 116523172A CN 202210041099 A CN202210041099 A CN 202210041099A CN 116523172 A CN116523172 A CN 116523172A
- Authority
- CN
- China
- Prior art keywords
- dimension combination
- original
- combination
- original dimension
- outlier
- 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
- 238000000034 method Methods 0.000 claims abstract description 122
- 230000002159 abnormal effect Effects 0.000 claims abstract description 64
- 238000004590 computer program Methods 0.000 claims abstract description 7
- 210000000349 chromosome Anatomy 0.000 claims description 139
- 230000002547 anomalous effect Effects 0.000 claims description 73
- 238000013528 artificial neural network Methods 0.000 claims description 30
- 230000002776 aggregation Effects 0.000 claims description 22
- 238000004220 aggregation Methods 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 20
- 238000010586 diagram Methods 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 11
- 230000002068 genetic effect Effects 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 9
- 230000035772 mutation Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 230000004931 aggregating effect Effects 0.000 claims description 5
- 238000011084 recovery Methods 0.000 claims description 3
- 238000010187 selection method Methods 0.000 claims description 3
- 230000002123 temporal effect Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 82
- 238000001514 detection method Methods 0.000 description 8
- 230000000379 polymerizing effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 208000018910 keratinopathic ichthyosis Diseases 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2477—Temporal data queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
-
- 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/042—Knowledge-based neural networks; Logical representations of neural networks
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- 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/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Molecular Biology (AREA)
- Evolutionary Biology (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Physiology (AREA)
- Educational Administration (AREA)
- Genetics & Genomics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Fuzzy Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Databases & Information Systems (AREA)
- General Factory Administration (AREA)
Abstract
本公开提出了用于基于跨指标的多维度根本原因分析的方法、装置和计算机程序产品。可以获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标。可以确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联。从所述时序数据中识别异常数据值。基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合。基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
Description
背景技术
异常检测可以发现时序数据(time-series data)中的异常的或不期望的事件。在本文中,时序数据指按时间顺序记录的数据序列,该数据序列中的数据点反映了特定现象、指标、事物等随时间变化的状态或程度。异常检测被广泛地实施在众多工业应用中,并且是数据挖掘中的重要研究领域。很多大型公司构建了其自己的异常检测系统,以监测其商业、产品、服务等的健康性。例如,互联网公司可以通过异常检测系统来实时地监测其应用和服务的各种指标,例如错误率、点击率、页面浏览量等。异常检测系统可以持续地监测时序数据,并且在检测到异常事件时对导致该异常事件的根本原因(root cause)进行分析,以便及时解决该异常事件。
发明内容
提供本发明内容以便介绍一组构思,这组构思将在以下的具体实施方式中做进一步描述。本发明内容并非旨在标识所保护主题的关键特征或必要特征,也不旨在用于限制所保护主题的范围。
本公开的实施例提出了用于基于跨指标的多维度根本原因分析的方法、装置和计算机程序产品。可以获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标。可以确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联。从所述时序数据中识别异常数据值。基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合。基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
应当注意,以上一个或多个方面包括以下详细描述以及权利要求中具体指出的特征。下面的说明书及附图详细提出了所述一个或多个方面的某些说明性特征。这些特征仅仅指示可以实施各个方面的原理的多种方式,并且本公开旨在包括所有这些方面和其等同变换。
附图说明
以下将结合附图描述所公开的多个方面,这些附图被提供用以说明而非限制所公开的多个方面。
图1示出了包括示例性原始维度的列表以及包括示例性原始维度组合的表格。
图2示出了根据本公开实施例的示例性树状结构。
图3示出了根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性过程。
图4示出了根据本公开实施例的用于识别异常原始维度组合的示例性过程。
图5是根据本公开实施例的染色体的示意图。
图6示出了根据本公开实施例的用于评估染色体的适应度的示例性过程。
图7示出了根据本公开实施例的用于评估染色体的贡献度的示例性过程。
图8示出了根据本公开实施例的用于训练图神经网络的示例性过程。
图9示出了根据本公开实施例的用于构建与聚合维度组合相对应的树状图的示例性过程。
图10示出了根据本公开实施例的示例性树状图。
图11示出了根据本公开实施例的用于生成子预测损失的示例性过程。
图12示出了根据本公开实施例的用于识别异常基础指标子集的示例性过程。
图13是根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性方法的流程图。
图14示出了根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性装置。
图15示出了根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性装置。
具体实施方式
现在将参考若干示例性实施方式来讨论本公开。应当理解,这些实施方式的讨论仅仅用于使得本领域技术人员能够更好地理解并从而实施本公开的实施例,而并非教导对本公开的范围的任何限制。
通常对针对一些关键性能指标(Key Performance Indicator,KPI)的时序数据进行监测。关键性能指标包括例如错误率、点击率、使用率等。这些指标通常是派生指标(derived metric)。在本文中,派生指标可以指根据多个基础指标(fundamental metric)计算得到的指标。基础指标可以指能够通过测量、统计等直接得到的指标,例如页面浏览量、错误计数等。所监测的关键性能指标通常是针对聚合维度组合的。聚合维度组合可以包括针对多类维度的多个聚合维度,每个聚合维度可以是由多个原始维度聚合而成的。在本文中,原始维度可以指初始的、未经聚合的维度。每个原始维度可以针对一种维度类别。例如,针对软件应用监测的维度类别可以包括软件应用所发布的国家、软件应用的版本、运行软件应用的操作系统等等。每类维度可以包括多个原始维度。例如,类别为“国家”的原始维度可以包括“国家1”、“国家2”、“国家3”等。不同类别的原始维度可以组合成不同的原始维度组合。在检测到针对聚合维度组合的时序数据中的异常数据值时,需要定位出导致该异常数据值的原始维度组合以及相应的指标。例如,在检测出软件应用的某项错误率存在异常数据值时,需要定位出是在哪个国家且是哪个版本的应用出现问题导致了该异常数据值。由于聚合维度组合是针对多类维度的,每类维度都包括大量的原始维度,因此存在大量的原始维度组合。此外,所监测的时序数据往往是针对通过对基础指标进行复杂的计算得到的派生指标的。因此,要定位出导致该异常数据值的原始维度组合和相应的指标是具有挑战性的。
本公开的实施例提出了基于跨指标的多维度根本原因分析。可以获得针对聚合维度组合的目标指标的时序数据。在本文中,目标指标可以指针对其的时序数据进行监测的指标。聚合维度组合可以包括针对多类维度的多个聚合维度。可以确定与聚合维度组合相对应的多个原始维度组合。每个原始维度组合可以包括针对多类维度的多个原始维度。在从时序数据中识别出异常数据值时,可以从多个原始维度组合中识别导致该异常数据值的至少一个异常原始维度组合。在本文中,可以将导致目标指标的异常数据值的原始维度组合称为异常原始维度组合。相对地,可以将多个原始维度组合中的除了异常原始维度组合之外的原始维度组合称为正常原始维度组合。目标指标可以是根据基础指标集合计算得到的派生指标。可以将与聚合维度组合相对应的多个原始维度组合中的每个原始维度组合与该基础指标集合相关联。在检测到目标指标的异常数据值时,不仅考虑该目标指标还考虑用于计算该目标指标的基础指标有助于迅速且准确地从多个原始维度组合中定位出导致异常数据值的异常原始维度组合和相应的维度,并且能够为所定位出的异常原始维度组合和维度提供有意义的解释。
在一个方面,本公开的实施例提出了利用遗传算法(Genetic Algorithm),从多个原始维度组合中识别导致异常数据值的异常原始维度组合。可以构建一组初始染色体。每条染色体可以包括与多个原始维度组合相对应的多个元素。对于每个原始维度组合,当该原始维度组合不是异常原始维度组合时,与其相对应的元素可以具有第一元素值,例如“0”。当该原始维度组合是异常原始维度组合时,与其相对应的元素可以具有第二元素值,例如“1”。可以利用遗传算法和相应的适应度函数迭代地更新一组当前染色体来获得一组最终染色体。可以基于该组最终染色体中的最优染色体来确定异常原始维度组合。利用遗传算法可以高效地从大量原始维度组合中定位出异常原始维度组合。
在另一个方面,本公开的实施例提出了在利用适应度函数来更新一组当前染色体时,采用图神经网络(Graph Neural Network)来评估每条染色体的贡献度。可以构建与聚合维度组合相对应的树状图。树状图中的根节点可以对应于聚合维度组合。树状图中的叶子节点可以对应于原始维度组合。在根节点和叶子节点之间可以有对应于多个中间维度组合的多个中间节点。在本文中,中间维度组合可以指位于原始维度组合与聚合维度组合之间的维度组合。每个中间维度组合可以包括原始维度和聚合维度二者。可以根据彼此之间的聚合关系将这些节点相对地定义为父节点和子节点。可以对图神经网络进行训练,使其能够学习到针对所有指标的、每个父节点与其相应的子节点之间的关系。经训练的图神经网络可以基于与染色体中的异常原始维度组合相对应的预期数据值集合来准确预测目标指标的恢复数据值,从而评估出该染色体的贡献度。在本文中,可以将基于预期数据值集合计算得到的值称为恢复数据值。与利用预定公式来计算目标指标的恢复数据值相比,图神经网络提供了一种用于预测恢复数据值的更高效且更普适的方式。
在又一个方面,本公开的实施例提出了在从多个原始维度组合中识别出异常原始维度组合之后,可以通过对所识别的异常原始维度组合执行回溯来确定导致异常数据值的根本原因。例如,在识别出多个异常原始维度组合的情况下,如果这多个异常原始维度组合能够被聚合成异常中间维度组合,则可以至少将所聚合的异常中间维度组合确定为根本原因。在本文中,异常中间维度组合可以指由多个异常原始维度组合聚合而成的中间维度组合。由于该过程是先定位出位于底层的异常原始维度组合,再通过回溯来确定出位于中间层的异常中间维度组合,因此该过程采用了自下而上方法。相对于采用传统的自上而下方法的根本原因分析过程,根据本公开实施例的采用自下而上方法的根本原因分析过程可以更高效地定位出更准确且更全面的根本原因。
应当理解,尽管前述讨论和以下讨论可能涉及对针对两类维度的根本原因进行分析的示例,但本公开的实施例并不局限于此,而是可以以类似的方式对针对更多类维度的根本原因进行分析。
图1示出了包括示例性原始维度的列表100和110以及包括示例性原始维度组合的表格120。列表100可以包括维度类别为“国家”的一组原始维度,例如“C1(国家1)”、“C2(国家2)”和“C3(国家3)”。列表110可以包括维度类别为“版本”的一组原始维度,例如“V1(版本1)”和“V2(版本2)”。不同类别的原始维度可以组合成不同的原始维度组合。表格120示出了由列表100和110中的原始维度组合而成的多个原始维度组合。每个原始维度组合可以包括针对两类维度的两个原始维度。例如,表格120可以包括原始维度组合“C1|V1”、“C1|V2”、“C2|V1”、“C2|V2”、“C3|V1”和“C3|V2”。
根据本公开的实施例,可以对多个原始维度组合进行聚合来获得多个中间维度组合。多个中间维度组合可以被进一步聚合成聚合维度组合。原始维度组合、中间维度组合和聚合维度组合可以构成树状结构。图2示出了根据本公开实施例的示例性树状结构200。树状结构200可以是通过对原始维度组合202至212进行聚合而形成的。原始维度组合202至212可以对应于图1中的表格120中的原始维度组合。
在树状结构200中,每个原始维度组合可以包括针对两类维度的两个原始维度。例如,原始维度组合202可以包括针对两类维度“国家”和“版本”的两个原始维度,即“C1”和“V1”。在对多个原始维度组合进行聚合时,可以仅针对一类维度进行聚合来获得中间维度组合。中间维度组合可以包括原始维度和聚合维度二者。例如,可以仅针对维度类别“版本”进行聚合。作为示例,原始维度组合202和204可以被聚合成中间维度组合214,即“C1|VAGG”,其中“VAGG”是通过聚合原始维度组合202中的原始维度“V1”和原始维度组合204中的原始维度“V2”获得的聚合维度。作为另外的示例,原始维度组合206和208可以被聚合成中间维度组合216,即“C2|VAGG”;以及原始维度组合210和212可以被聚合成中间维度组合218,即“C3|VAGG”。另外,可以仅针对维度类别“国家”进行聚合。作为示例,原始维度组合202、206和210可以被聚合成中间维度组合220,即“CAGG|V1”,其中“CAGG”是通过聚合原始维度组合202中的原始维度“C1”、原始维度组合206中的原始维度“C2”和原始维度组合210中的原始维度“C3”获得的聚合维度。作为另一示例,原始维度组合204、208和212可以被聚合成中间维度组合222,即“CAGG|V2”。
在获得了中间维度组合214至222之后,可以通过对中间维度组合214至222进行聚合来获得聚合维度组合224,即“CAGG|VAGG”。
应当理解,上文结合图2描述的树状结构200仅仅是树状结构的一个示例。根据实际应用需求,树状结构可以具有任意其他结构。另外,树状结构200所针对的是每个原始维度组合仅包括针对两类维度的两个原始维度的情况,但应当理解,针对每个原始维度组合包括针对两类以上维度的两个以上原始维度的情况,可以采用与上文结合图2描述的过程相类似的过程来获得与这类情况相对应的树状结构。
图3示出了根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性过程300。通过过程300,可以确定导致时序数据中的异常数据值的根本原因。
在302处,可以获得针对聚合维度组合的目标指标的时序数据。聚合维度组合可以包括针对多类维度的多个聚合维度。例如,参考图2,聚合维度组合224“CAGG|VAGG”可以包括针对两类维度“国家”和“版本”的两个聚合维度,即“CAGG”和“VAGG”。目标指标可以是根据基础指标集合计算得到的派生指标。作为示例,目标指标可以是根据作为基础指标的错误计数(ErrorCount)和总计数(TotalCount)计算得到的错误率(ErrorRate),如以下公式所示:
ErrorRate=ErrorCount/TotalCount (1)
在304处,可以确定与聚合维度组合相对应的多个原始维度组合。例如,与图2中的聚合维度组合224“CAGG|VAGG”相对应的多个原始维度组合可以是“C1|V1”、“C1|V2”、“C2|V1”、“C2|V2”、“C3|V1”和“C3|V2”。每个原始维度组合可以包括针对两类维度“国家”和“版本”的两个原始维度。例如,原始维度组合“C1|V1”可以包括针对两类维度“国家”和“版本”的两个原始维度“C1”和“V1”。另外,每个原始维度组合可以与用于计算目标指标的基础指标集合相关联。例如,每个原始维度组合可以具有针对用于计算目标指标的基础指标集合中的每个基础指标的数据值。作为示例,在目标指标是错误率(ErrorRate)的情况下,每个原始维度组合可以具有针对错误计数(ErrorCount)的数据值和针对总计数(TotalCount)的数据值。在检测到目标指标的异常数据值时,不仅考虑该目标指标还考虑用于计算该目标指标的基础指标有助于迅速且准确地从多个原始维度组合中定位出导致异常数据值的异常原始维度组合和相应的维度,并且能够为所定位出的异常原始维度组合和维度提供有意义的解释。
在306处,可以从针对目标指标的时序数据中识别异常数据值。可以通过已知的异常数据值识别技术来从时序数据中识别异常数据值。例如,可以采用时间序列的自回归模型,基于目标指标的先前时间点的历史数据值来估计当前时间点的预期数据值。在每个时间点,可以确定该时间点处的实际数据值与预期数据值之间的差值。当所确定的差值超过预定范围时,则可以将该实际数据值识别为异常数据值。
在308处,可以基于基础指标集合,从多个原始维度组合中识别至少一个异常原始维度组合。后面将结合图4来说明识别异常原始维度组合的示例性过程。
优选地,可以基于所识别的至少一个异常原始维度组合来进一步确定导致目标指标的异常数据值的根本原因。根据本公开的实施例,可以通过对所识别的至少一个异常原始维度组合执行回溯来确定导致异常数据值的根本原因。
在310处,可以确定所识别的至少一个异常原始维度组合是否包括一个异常原始维度组合。也就是说,可以确定是否仅识别出一个异常原始维度组合。
如果在310处确定出至少一个异常原始维度组合包括一个异常原始维度组合,则过程300可以进行至312处,即将该异常原始维度组合确定为导致目标指标的异常数据值的根本原因。
如果在310处确定出至少一个异常原始维度组合包括多个异常原始维度组合,则过程300可以进行至314处,即进一步确定这多个异常原始维度组合是否能够被聚合。作为示例,参考图2,假设所识别的异常原始维度组合为原始维度组合202“C1|V1”和原始维度组合212“C3|V2”,则这两个异常原始维度组合不能被聚合。作为另一示例,假设所识别的异常原始维度组合为原始维度组合202“C1|V1”和原始维度组合204“C1|V2”,则这两个异常原始维度组合能够被聚合,例如聚合到中间维度组合214“C1|VAGG”。这可以表明是发布到国家“C1”的所有版本存在问题。应当理解,每个中间维度组合是由与其相对应的多个原始维度组合直接或间接聚合而成的。优选地,可以设置聚合阈值。对于特定中间维度组合而言,如果确定与该中间维度组合相对应的异常原始维度组合的数量占与该中间维度组合相对应的原始维度组合的总数的比例超过了该聚合阈值,则可以将与该中间维度组合相对应的异常原始维度组合聚合成异常中间维度组合。仅作为示例,假设聚合阈值为“0.6”,并且所识别的异常原始维度组合是2个,即原始维度组合202“C1|V1”和原始维度组合206“C2|V1”。对于中间维度组合220“CAGG|V1”,与其相对应的原始维度组合的总数是“3”。由于所识别的异常原始维度组合的数量占原始维度组合的总数的比例“0.67”超过了聚合阈值为“0.6”,因此,可以将异常原始维度组合202“C1|V1”和异常原始维度组合206“C2|V1”聚合成异常中间维度组合220“CAGG|V1”,即使中间维度组合220“CAGG|V1”之下的原始维度组合210“C3|V2”不是异常原始维度组合。
如果在314处确定出这多个异常原始维度组合不能被聚合,则过程300可以进行至316处,即将这多个异常原始维度组合确定为导致异常数据值的根本原因。
如果在314处确定出这多个异常原始维度组合能够被聚合,则过程300可以进行至318处,即对这多个异常原始维度组合进行聚合,以获得至少一个异常中间维度组合。随后,在320处,可以至少将所获得的至少一个异常中间维度组合确定为导致异常数据值的根本原因。在所有的异常原始维度组合都能够被聚合成异常中间维度组合的情况下,可以将所聚合的异常中间维度组合确定为导致异常数据值的根本原因。在仅部分异常原始维度组合能够被聚合成异常中间维度组合的情况下,可以将所聚合的异常中间维度组合以及不能被聚合的异常原始维度组合确定为导致异常数据值的根本原因。
在过程300中,可以先从多个原始维度组合中识别出至少一个异常原始维度组合,并通过对所识别的至少一个异常原始维度组合执行回溯来确定导致异常数据值的根本原因。由于过程300是先定位出位于底层的异常原始维度组合,再通过回溯来确定出位于中间层的异常中间维度组合,因此过程300采用了自下而上方法。相对于采用传统的自上而下方法的根本原因分析过程,根据本公开实施例的采用自下而上方法的根本原因分析过程可以更高效地定位出更准确且更全面的根本原因。
应当理解,上文结合图3描述的用于基于跨指标的多维度根本原因分析的过程仅是示例性的。根据实际应用需求,可以以任意方式对用于基于跨指标的多维度根本原因分析的过程中的步骤进行替换或修改,并且该过程可以包括更多或更少的步骤。例如,在一些实施例中,在从多个原始维度组合中识别至少一个异常原始维度组合之后,直接将所识别的至少一个异常原始维度组合确定为导致异常数据值的根本原因而不执行后续的回溯过程也是可以的。此外,过程300中的步骤的具体顺序或层级仅是示例性的,可以按照与所描述顺序不同的顺序来执行用于基于跨指标的多维度根本原因分析的过程。
图4示出了根据本公开实施例的用于识别异常原始维度组合的示例性过程400。过程400可以对应于图3中步骤308。在过程400中,可以基于基础指标集合,利用遗传算法,从多个原始维度组合中定位至少一个异常原始维度组合。
在402处,可以构建一组初始染色体。每条染色体可以包括与多个原始维度组合相对应的多个元素。染色体可以是二元染色体。对于每个原始维度组合,当该原始维度组合不是异常原始维度组合时,与该原始维度组合相对应的元素可以具有第一元素值,例如“0”。当该原始维度组合是异常原始维度组合时,与该原始维度组合相对应的元素可以具有第二元素值,例如“1”。
图5是根据本公开实施例的染色体的示意图500。原始维度组合502至512可以分别是“C1|V1”、“C1|V2”、“C2|V1”、“C2|V2”、“C3|V1”和“C3|V2”。作为示例,假设原始维度组合504“C1|V2”和原始维度组合510“C3|V1”是异常原始维度组合,则与原始维度组合504“C1|V2”相对应的元素524和与原始维度组合510“C3|V1”相对应的元素530可以具有第二元素值“1”。其他原始维度组合502、506、508和512不是异常原始维度组合,则与其他原始维度组合相对应的元素522、526、528和532可以具有第一元素值“0”。
返回参考图4,可以通过利用遗传算法迭代地更新一组当前染色体来获得一组最终染色体。一组当前染色体可以初始地包括在402处构建的一组初始染色体。
在每一次迭代中,在404处,对于一组当前染色体中的每条染色体,可以通过适应度函数来评估该染色体的适应度,以获得与一组当前染色体相对应的一组适应度。染色体的适应度可以反映该染色体所指示的异常原始维度组合是根本原因的概率。后面将结合图6来说明用于评估染色体的适应度的示例性过程。
在406处,可以确定是否达到预定迭代次数或者在404处获得的一组适应度中的最大适应度是否收敛。
如果在406处确定出未达到预定迭代次数或者最大适应度未收敛,则过程400可以进行至408处,即基于一组适应度,通过轮盘选择法(roulette wheel selection)从一组当前染色体中选择一组初步染色体。具有较大适应度的染色体可以有较大的概率被选上。
接着,可以通过对一组初步染色体执行交叉(crossover)和/或变异(mutation)来生成一组经更新的染色体。
在410处,可以通过对一组初步染色体执行交叉操作来生成一组中间染色体。例如,可以先从一组初步染色体中识别具有最大适应度的染色体。然后,该组初步染色体中的其余染色体可以与所识别的具有最大适应度的染色体或者其他任意的染色体进行交叉。
在412处,可以通过对一组中间染色体执行变异操作来生成一组经更新的染色体。例如,可以从一组中间染色体中随机选择一些染色体,并从所选择的染色体中随机选择一些元素来进行变异。
随后,过程400可以返回至404处,即对于在412处生成的一组经更新染色体中的每条染色体,可以通过适应度函数来评估该染色体的适应度。过程400可以随后进行至406处。
如果在406处确定出达到预定迭代次数或者最大适应度收敛,则过程400可以进行至414处,即停止迭代地更新一组当前染色体,并将一组当前染色体确定为一组最终染色体。
在416处,可以从一组最终染色体中识别最优染色体。例如,可以将一组最终染色体中具有最大适应度的染色体识别为最优染色体。
在418处,可以基于最优染色体来确定至少一个异常原始维度组合。例如,可以将与最优染色体中的具有第二元素值的元素相对应的原始维度组合确定为异常原始维度组合。
如前面所描述的,由于聚合维度组合是针对多类维度的,每类维度都包括大量的原始维度,因此存在大量的原始维度组合。利用遗传算法可以高效地从大量原始维度组合中定位出异常原始维度组合。
应当理解,上文结合图4描述的用于识别异常原始维度组合的过程仅是示例性的。根据实际应用需求,可以以任意方式对用于识别异常原始维度组合的过程中的步骤进行替换或修改,并且该过程可以包括更多或更少的步骤。例如,尽管在过程400中采用了交叉操作和变异操作二者来更新染色体,然而在一些实施例中,仅采用交叉操作和变异操作中的一项操作来更新染色体也是可以的。此外,过程400中的步骤的具体顺序或层级仅是示例性的,可以按照与所描述顺序不同的顺序来执行用于识别异常原始维度组合的过程。
图6示出了根据本公开实施例的用于评估染色体的适应度的示例性过程600。过程600可以对应于图4中的步骤404。在过程600中,可以通过适应度函数(f(chromosome))610来评估染色体602的适应度(Fitness)640。适应度函数(f(chromosome))可以包括贡献度分量(fcon(chromosome))620和简洁度分量(fsuc(chromosome))630,如以下公式所示:
Fitness=f(chromosome)=fcon(chromosome)+λsuc fsuc(chromosome) (2)
其中,λsuc是与简洁度分量(fsuc(chromosome))相关联的权重系数。
可以通过贡献度分量620评估染色体602的贡献度(Contribution)622,即Contribution=fcon(chromosome)。图7示出了根据本公开实施例的用于评估染色体的贡献度的示例性过程700。过程700可以对应于图6中的通过贡献度分量620执行的操作。
在702处,可以确定目标指标的预期数据值(expectedValue)。例如,可以采用时间序列的自回归模型,基于目标指标的先前时间点的历史数据值来估计当前时间点的预期数据值。预期数据值与异常数据值在时间上是对齐的。
在704处,可以通过染色体来识别至少一个异常原始维度组合。可以先识别染色体中的具有第二元素值,例如“1”,的元素。然后,可以将与所识别的元素相对应的原始维度组合确定为异常原始维度组合。
在706处,对于至少一个异常原始维度组合中的每个异常原始维度组合,可以确定与该异常原始维度组合相对应的预期数据值集合。异常原始维度组合可以具有相关联的指标集合。该指标集合可以包括一个或多个基础指派或派生指标。针对每个指标,可以确定异常原始维度组合的与该指标相对应的预期数据值。例如,可以采用时间序列的自回归模型,基于该指标的先前时间点的历史数据值来估计当前时间点的预期数据值。预期数据值可以与目标指标的异常数据值在时间上对齐。异常原始维度组合的针对各个指标的预期数据值可以组合成与该异常原始维度组合相对应的预期数据值集合。
可以获得与至少一个异常原始维度组合相对应的至少一个预期数据值集合。在708处,可以至少基于该至少一个预期数据值集合来预测目标指标的恢复数据值(restoredValue)。由于预期数据值集合与目标指标的异常数据值在时间上是对齐的,因此所预测的恢复数据值与目标指标的异常数据值在时间上也是对齐的。在一种实施方式中,可以通过图神经网络,至少基于至少一个预期数据值集合来预测目标指标的恢复数据值。可以采用具有已知结构的图神经网络来预测目标指标的恢复数据值,例如图注意力网络、图卷积网络、图自编码器等。优选地,由于图注意力网络引入了注意力机制,因此其可以更准确地预测出目标指标的恢复数据值。由于目标指标是针对聚合维度组合的,且聚合维度组合是由所有的原始维度组合聚合而成的,因此在预测目标指标的恢复数据值时,除了考虑与异常原始维度组合相对应的预期数据值集合之外,还应当考虑与正常原始维度组合相对应的实际数据值集合。相应地,可以基于与异常原始维度组合相对应的预期数据值集合以及与正常原始维度组合相对应的实际数据值集合来预测目标指标的恢复数据值。可以通过根据本公开实施例的训练过程来训练图神经网络,使得经训练的图神经网络能够基于与至少一个异常原始维度组合相对应的至少一个预期数据值集合以及与正常原始维度组合相对应的实际数据值集合来预测目标指标的恢复数据值。后面将结合图8来说明训练图神经网络的示例性过程。在目标指标是针对聚合维度组合,且聚合维度组合与原始维度组合之间还存在多个中间维度组合的情况下,可以通过图神经网络,先基于与至少一个异常原始维度组合相对应的至少一个预期数据值集合以及与正常原始维度组合相对应的实际数据值集合来预测与多个中间维度组合相对应的恢复数据值集合,并基于所预测的与多个中间维度组合相对应的恢复数据值集合来预测目标指标的恢复数据值。与利用预定公式来计算目标指标的恢复数据值相比,图神经网络提供了一种用于预测恢复数据值的更高效且更普适的方式。
在710处,可以计算目标指标的预期数据值(expectedValue)与该染色体的恢复数据值(restoredValue)之间的第一差值(Difference1),如以下公式所示:
Difference1=|expectedValue–restoredValue| (3)
在712处,可以计算目标指标的预期数据值(expectedValue)与异常数据值(abnormalValue)之间的第二差值(Difference2),如以下公式所示:
Difference2=|expectedValue–abnormalValue| (4)
随后,在714处,可以基于第一差值(Difference1)和第二差值(Difference2)来计算该染色体的贡献度(Contribution),如以下公式所示:
Contribution=Difference1/Difference2 (5)
应当理解,上文结合图7描述的用于评估染色体的贡献度的过程仅是示例性的。根据实际应用需求,可以以任意方式对用于评估染色体的贡献度的过程中的步骤进行替换或修改,并且该过程可以包括更多或更少的步骤。此外,过程700中的步骤的具体顺序或层级仅是示例性的,可以按照与所描述顺序不同的顺序来执行用于评估染色体的贡献度的过程。例如,先执行步骤712,再执行步骤704至710也是可以的。
返回参考图6,可以通过简洁度分量630评估染色体602的简洁度(Succinctness)632,即Succinctness=fsuc(chromosome)。简洁度分量630可以例如是正则项。在一种实施方式中,可以通过简洁度分量630来计算染色体602中的具有第二元素值,例如“1”,的元素的数量,并且将该数量确定为染色体602的简洁度632。也就是说,简洁度632可以反映染色体602所指示的异常原始维度组合的数量。
随后,可以基于贡献度(Contribution)622和简洁度(Succinctness)632来确定适应度(Fitness)632,如以下公式所示:
Fitness=Contribution+λsucSuccinctness (6)
应当理解,上文结合图6描述的用于评估染色体的适应度的过程仅是示例性的。根据实际应用需求,可以以任意方式对用于评估染色体的适应度的过程中的步骤进行替换或修改,并且该过程可以包括更多或更少的步骤。例如,尽管在公式(2)中,适应度函数包括贡献度分量和简洁度分量二者,但在一些实施例中,适应度函数仅包括贡献度分量和简洁度分量中的一项也是可以的。相应地,可以基于贡献度和简洁度中的一项来确定适应度。此外,过程600中的步骤的具体顺序或层级仅是示例性的,可以按照与所描述顺序不同的顺序来执行用于评估染色体的适应度的过程。
图8示出了根据本公开实施例的用于训练图神经网络的示例性过程800。经过过程800训练的图神经网络在被实际部署时,能够基于与异常原始维度组合相对应的预期数据值集合以及与正常原始维度组合相对应的实际数据值集合来预测针对聚合维度组合的目标指标的恢复数据值。
在802处,可以构建与聚合维度组合相对应的树状图。图9示出了根据本公开实施例的用于构建与聚合维度组合相对应的树状图的示例性过程900。
在902处,可以确定聚合维度组合与多个原始维度组合之间的多个中间维度组合。中间维度组合可以是包括原始维度和聚合维度二者的维度组合。取决于聚合维度组合所包括的维度类别的数量,多个中间维度组合可以分布在一层或多层中。
在904处,可以将聚合维度组合、多个中间维度组合和多个原始维度组合设置成多个节点。例如,可以将聚合维度组合设置成根节点,可以将中间维度组合设置成中间节点,并且可以将原始维度组合设置成叶子节点。图10示出了根据本公开实施例的示例性树状图1000。树状图1000可以是与图2中的树状结构200相对应的树状图。在树状图1000中,叶子节点1002至1012可以与图2中的树状结构200中的原始维度组合202至212相对应。中间节点1014至1022可以与树状结构200中的中间维度组合214至222相对应。根节点1024可以与树状结构200中的聚合维度组合224相对应。
在906处,可以基于多个节点之间的聚合关系来确定这多个节点之间的一组边。继续以图10为例,根节点1024是由中间节点1014至1022聚合而成的。相应地,根节点1024与中间节点1014至1022中的每个中间节点之间可以存在边。中间节点1014是由叶子节点1002和1004聚合而成的。相应地,中间节点1014与叶子节点1002和1004之间可以存在边。
在908处,可以将所确定的多个节点和一组边组合成树状图。
所构建的树状图中的每个节点可以与包括基础指标和/或派生指标的指标集合相关联。例如,指标集合可以包括错误计数、总计数、错误率等。可以根据节点之间的聚合关系将各个节点相对地定义为父节点和子节点。树状图可以包括一组父节点。例如,树状图1000所包括的父节点可以是根节点1024和中间节点1014至1022。
返回参考图8,在804处,对于树状图中的一组父节点中的每个父节点,可以生成与该父节点相对应的节点预测损失。父节点可以与指标集合相关联。对于指标集合中的每个指标,可以生成与该指标相对应的子预测损失。可以获得与关联于父节点的指标集合相对应的子预测损失集合。该子预测损失集合可以被组合成该父节点的节点预测损失。图11示出了根据本公开实施例的用于生成子预测损失的示例性过程1100。通过过程1100,可以生成针对父节点1102的、与指标1108相对应的子预测损失1130。指标1108可以是与父节点1102相关联的指标集合中的一个指标。
父节点1102可以具有一组相应的子节点1104。作为示例,假设父节点1102是图10中的根节点1024,则该根节点1024的一组相应的子节点可以是中间节点1014至1022。
该组子节点1104中的每个子节点可以具有针对一个或多个指标的一个或多个数据值。例如,子节点可以具有针对错误计数的数据值、针对总计数的错误值、针对错误率的数据值等等。这些数据值可以形成与该组子节点1104相对应的一组数据值1106。
可以通过预定公式1110,基于与父节点1102相对应的一组子节点1104的一组数据值1106来计算父节点1102的针对指标1108的真实值1112。公式1110可以是与指标1108相对应的。例如,当指标1108是基础指标时,公式1110可以是对一组数据值1106中的针对指标1108的数据值进行的求和操作。当指标1108是派生指标时,公式1110可以包括对一组数据值1106中的、与指标1108相对应的基础指标的数据值进行的操作。
作为示例,假设指标1108是派生指标错误率(ErrorRate),且父节点1102是图10中的根节点1024,则与指标1108相对应的公式1110可以具有如下形式:
ErrorRateC_AGG|V_AGG=(ErrorCountC_AGG|V_1+ErrorCountC_AGG|V_2)/(TotalCountC_AGG|V_1+TotalCountC_AGG|V_2) (7)
另外,可以通过图神经网络1120,基于一组数据值1106来预测父节点1102的针对指标1108的预测值1122。
随后,可以基于真实值1112和预测值1122来计算父节点1102的与指标1108相对应的子预测损失1130。在一种实施方式中,可以通过计算真实值1112和预测值1122之间的均方误差来计算子预测损失1130。
可以获得与关联于父节点的指标集合相对应的子预测损失集合。该子预测损失集合可以被组合成该父节点的节点预测损失。可以获得与树状图中的一组父节点相对应的一组节点预测损失。返回参考图8,在806处,可以基于与一组父节点相对应的一组节点预测损失来生成与树状图相对应的预测损失。在一种实施方式中,可以通过对一组节点预测损失进行求和操作来生成与树状图相对应的预测损失。
在808处,可以通过使预测损失最小化来优化图神经网络。
经过上文结合图8至图11描述的过程训练出来的图神经网络能够学习到针对所有指标的、每个父节点与其相应的子节点之间的关系。对于特定指标而言,所学习到的父节点与其相应的子节点之间的关系可以尽可能地接近针对该指标的、用于基于子节点的数据值来计算父节点的数据值的公式。相应地,对于每个指标而言,经训练的图神经网络能够基于子节点的数据值来准确预测父节点的数据值。
应当理解,上文结合图8至图11描述的用于训练图神经网络的过程仅是示例性的。根据实际应用需求,可以以任意方式对用于训练图神经网络的过程中的步骤进行替换或修改,并且该过程可以包括更多或更少的步骤。此外,过程800中的步骤的具体顺序或层级仅是示例性的,可以按照与所描述顺序不同的顺序来执行用于训练图神经网络的过程。
根据本公开的实施例,可以识别导致时序数据的异常数据值的一个或多个异常原始维度组合或者异常中间维度组合。每个异常原始维度组合或每个异常中间维度组合可以具有相关联的基础指标集合。作为示例,该基础指标集合可以包括错误计数、总计数等。本公开实施例还提出,对于每个异常原始维度组合或每个异常中间维度组合,可以识别与该异常原始维度组合或该异常中间维度组合相关联的基础指标集合中的导致异常数据值的异常基础指标子集。例如,对于每个异常原始维度组合或每个异常中间维度组合,可以识别是错误计数还是总计数还是错误计数和总计数二者导致了目标指标的异常数据值。
图12示出了根据本公开实施例的用于识别异常基础指标子集的示例性过程1200。在过程1200中,可以通过遍历的方式来确定异常基础指标子集。
在1202处,可以形成多个基础指标子集。每个基础指标子集可以包括基础指标集合中的一个或多个基础指标。假设基础指标集合包括错误计数(ErrorCount)和总计数(TotalCount),即基础指标集合是{ErrorCount,TotalCount},则可以形成3个基础指标子集,例如{ErrorCount}、{TotalCount}和{ErrorCount,TotalCount}。
在1204处,对于多个基础指标子集中的每个基础指标子集,可以通过适应度函数来评估该基础指标子集的适应度,以获得与多个基础指标子集相对应的多个适应度。可以采用与图6的过程600相类似的过程来评估基础指标子集的适应度。例如,可以通过适应度函数中的贡献度分量来评估与该基础指标子集相对应的贡献度。可以通过适应度函数中的简洁度分量来评估与该基础指标子集相对应的简洁度。该简洁度可以反映基础指标子集所包括的基础指标的数量。随后,可以基于所评估的贡献度和/或简洁度来确定与该基础指标子集相对应的适应度。
在1206处,可以识别在1204处获得的多个适应度中的最大适应度。
在1208处,可以将与最大适应度相对应的基础指标子集确定为异常基础指标子集。
应当理解,上文结合图12描述的用于识别异常基础指标子集的过程仅是示例性的。根据实际应用需求,可以以任意方式对用于识别异常基础指标子集的过程中的步骤进行替换或修改,并且该过程可以包括更多或更少的步骤。此外,过程1200中的步骤的具体顺序或层级仅是示例性的,可以按照与所描述顺序不同的顺序来执行用于识别异常基础指标子集的过程。
图13是根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性方法1300的流程图。
在1310处,可以获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标。
在1320处,可以确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联。
在1330处,可以从所述时序数据中识别异常数据值。
在1340处,可以基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合。
在1350处,可以基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
在一种实施方式中,所述识别至少一个异常原始维度组合可以包括:基于所述基础指标集合,利用遗传算法,从所述多个原始维度组合中定位所述至少一个异常原始维度组合。
所述定位所述至少一个异常原始维度组合可以包括:构建一组初始染色体,每条染色体包括与所述多个原始维度组合相对应的多个元素,其中,对于每个原始维度组合,当所述原始维度组合不是异常原始维度组合时,与所述原始维度组合相对应的元素具有第一元素值,并且当所述原始维度组合是异常原始维度组合时,与所述原始维度组合相对应的元素具有第二元素值;通过利用所述遗传算法迭代地更新一组当前染色体来获得一组最终染色体,所述一组当前染色体初始地包括所述一组初始染色体;从所述一组最终染色体中识别最优染色体;以及基于所述最优染色体来确定所述至少一个异常原始维度组合。
所述迭代地更新一组当前染色体可以包括,在每一次迭代中:对于所述一组当前染色体中的每条染色体,通过适应度函数来评估所述染色体的适应度,以获得与所述一组当前染色体相对应的一组适应度;基于所述一组适应度,通过轮盘选择法从所述一组当前染色体中选择一组初步染色体;以及通过对所述一组初步染色体执行交叉和/或变异来生成一组经更新的染色体。
所述适应度函数可以包括贡献度分量和/或简洁度分量。所述评估所述染色体的适应度可以包括:通过所述贡献度分量评估所述染色体的贡献度,和/或通过所述简洁度分量评估所述染色体的简洁度;以及基于所述贡献度和/或所述简洁度来确定所述适应度。
所述评估所述染色体的贡献度可以包括:确定所述目标指标的预期数据值,所述目标指标的预期数据值与所述异常数据值在时间上对齐;通过所述染色体来识别至少一个异常原始维度组合;对于所述至少一个异常原始维度组合中的每个异常原始维度组合,确定与所述异常原始维度组合相对应的预期数据值集合,每个预期数据值对应于与所述异常原始维度组合相关联的一个基础指标,并且与所述异常数据值在时间上对齐;至少基于与所述至少一个异常原始维度组合相对应的至少一个预期数据值集合来预测所述目标指标的恢复数据值;计算所述目标指标的预期数据值与所述恢复数据值之间的第一差值;计算所述目标指标的预期数据值与所述异常数据值之间的第二差值;以及基于所述第一差值和所述第二差值来计算所述贡献度。
所述预测所述目标指标的恢复数据值可以包括:通过图神经网络,至少基于所述至少一个预期数据值集合来预测所述恢复数据值。
所述图神经网络的训练可以包括:构建与所述聚合维度组合相对应的树状图,所述树状图包括一组父节点;对于所述一组父节点中的每个父节点,生成与所述父节点相对应的节点预测损失;基于与所述一组父节点相对应的一组节点预测损失来生成与所述树状图相对应的预测损失;以及通过使所述预测损失最小化来优化所述图神经网络。
所述构建树状图可以包括:确定所述聚合维度组合与所述多个原始维度组合之间的多个中间维度组合;将所述聚合维度组合、所述多个中间维度组合和所述多个原始维度组合设置成多个节点;基于所述多个节点之间的聚合关系来确定所述多个节点之间的一组边;以及将所述多个节点和所述一组边组合成所述树状图。
所述父节点可以与指标集合相关联。所述生成节点预测损失可以包括:对于所述指标集合中的每个指标,生成与所述指标相对应的子预测损失;以及基于与所述指标集合相对应的子预测损失集合来生成所述节点预测损失。
所述生成子预测损失可以包括:通过预定公式,基于与所述父节点相对应的一组子节点的一组数据值来计算所述父节点的针对所述指标的真实值;通过所述图神经网络,基于所述一组数据值来预测所述父节点的针对所述指标的预测值;以及基于所述真实值和所述预测值来计算所述子预测损失。
所述评估所述染色体的简洁度可以包括:通过所述简洁度分量来计算所述染色体中的具有所述第二元素值的元素的数量;以及将所述数量确定为所述简洁度。
方法1300还可以包括:确定是否达到预定迭代次数或者所述一组适应度中的最大适应度是否收敛;以及响应于确定达到所述预定迭代次数或者所述最大适应度收敛,停止迭代地更新所述一组当前染色体,并将所述一组当前染色体确定为所述一组最终染色体。
在一种实施方式中,所述确定根本原因可以包括:确定所述至少一个异常原始维度组合包括一个异常原始维度组合;以及将所述异常原始维度组合确定为所述根本原因。
在一种实施方式中,所述确定根本原因可以包括:确定所述至少一个异常原始维度组合包括多个异常原始维度组合;确定所述多个异常原始维度组合是否能够被聚合;响应于确定所述多个异常原始维度组合能够被聚合,对所述多个异常原始维度组合进行聚合,以获得至少一个异常中间维度组合;以及至少将所述至少一个异常中间维度组合确定为所述根本原因。
方法1300还可以包括:响应于确定所述多个异常原始维度组合不能被聚合,将所述多个异常原始维度组合确定为所述根本原因。
方法1300还可以包括:对于每个异常原始维度组合或每个异常中间维度组合,识别与所述异常原始维度组合或所述异常中间维度组合相关联的基础指标集合中的导致所述异常数据值的异常基础指标子集。
所述识别异常基础指标子集可以包括:形成多个基础指标子集,每个基础指标子集包括所述基础指标集合中的一个或多个基础指标;对于所述多个基础指标子集中的每个基础指标子集,通过适应度函数来评估所述基础指标子集的适应度,以获得与所述多个基础指标子集相对应的多个适应度;识别所述多个适应度中的最大适应度;以及将与所述最大适应度相对应的基础指标子集确定为所述异常基础指标子集。
应当理解,方法1300还可以包括根据上述本公开的实施例的用于基于跨指标的多维度根本原因分析的任何步骤/过程。
图14示出了根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性装置1400。
装置1400可以包括:时序数据获得模块1410,用于获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标;原始维度组合确定模块1420,用于确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联;异常数据值识别模块1430,用于从所述时序数据中识别异常数据值;异常原始维度组合识别模块1440,用于基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合;以及根本原因确定模块1450,用于基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。此外,装置1400还可以包括根据上述本公开的实施例的被配置用于基于跨指标的多维度根本原因分析的任何其他模块。
图15示出了根据本公开实施例的用于基于跨指标的多维度根本原因分析的示例性装置1500。
装置1500可以包括:至少一个处理器1510;以及存储计算机可执行指令的存储器1520。所述计算机可执行指令在被执行时可以使得所述至少一个处理器1510:获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标,确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联,从所述时序数据中识别异常数据值,基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合,以及基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
应当理解,处理器1510还可以执行根据上述本公开实施例的用于基于跨指标的多维度根本原因分析的方法的任何其他步骤/过程。
本公开的实施例提出了用于基于跨指标的多维度根本原因分析的计算机程序产品,包括计算机程序,所述计算机程序被至少一个处理器执行用于:获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标;确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联;从所述时序数据中识别异常数据值;基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合;以及基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。此外,所述计算机程序还可以被执行用于实现根据上述本公开实施例的用于基于跨指标的多维度根本原因分析的方法的任何其他步骤/过程。
本公开的实施例可以体现在非暂时性计算机可读介质中。所述非暂时性计算机可读介质可以包括指令,所述指令当被执行时,使得一个或多个处理器执行根据如上所述的本公开的实施例的用于基于跨指标的多维度根本原因分析的方法的任何操作。
应当理解,以上描述的方法中的所有操作都仅仅是示例性的,本公开并不限制于方法中的任何操作或这些操作的顺序,而是应当涵盖在相同或相似构思下的所有其他等同变换。另外,除非另有规定或者从上下文能清楚得知针对单数形式,否则如本说明书和所附权利要求书中所使用的冠词“一(a)”和“一个(an)”通常应当被解释为意指“一个”或者“一个或多个”。
还应当理解,以上描述的装置中的所有模块都可以通过各种方式来实施。这些模块可以被实施为硬件、软件、或其组合。此外,这些模块中的任何模块可以在功能上被进一步划分成子模块或组合在一起。
已经结合各种装置和方法描述了处理器。这些处理器可以使用电子硬件、计算机软件或其任意组合来实施。这些处理器是实施为硬件还是软件将取决于具体的应用以及施加在系统上的总体设计约束。作为示例,本公开中给出的处理器、处理器的任意部分、或者处理器的任意组合可以利用微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、状态机、门控逻辑单元、分立硬件电路、以及配置用于执行在本公开中描述的各种功能的其他适合的处理组件来实现。本公开给出的处理器、处理器的任意部分、或者处理器的任意组合的功能可以利用由微处理器、微控制器、DSP或其他适合的平台所执行的软件来实现。
软件应当被广泛地视为意指指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、运行线程、过程、函数等。软件可以驻留在计算机可读介质中。计算机可读介质可以包括例如存储器,存储器可以例如为磁性存储设备(例如,硬盘、软盘、磁条)、光盘、智能卡、闪存设备、随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、寄存器或者可移动盘。尽管在本公开给出的多个方面中将存储器示出为是与处理器分离的,但是存储器也可以位于处理器内部,例如高速缓存器或寄存器。
以上描述被提供用于使得本领域任何技术人员能够实践本文所描述的各个方面。对这些方面的各种修改对于本领域技术人员将是显而易见的,并且本文限定的一般性原理可以应用于其他方面。因此,权利要求并非旨在被局限于本文示出的方面。关于本领域普通技术人员已知或即将获知的、对本公开所描述各个方面的元素的所有结构和功能上的等同变换都被明确并入本文并且由权利要求所覆盖。
Claims (20)
1.一种用于基于跨指标的多维度根本原因分析的方法,包括:
获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标;
确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联;
从所述时序数据中识别异常数据值;
基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合;以及
基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
2.根据权利要求1所述的方法,其中,所述识别至少一个异常原始维度组合包括:
基于所述基础指标集合,利用遗传算法,从所述多个原始维度组合中定位所述至少一个异常原始维度组合。
3.根据权利要求2所述的方法,其中,所述定位所述至少一个异常原始维度组合包括:
构建一组初始染色体,每条染色体包括与所述多个原始维度组合相对应的多个元素,其中,对于每个原始维度组合,当所述原始维度组合不是异常原始维度组合时,与所述原始维度组合相对应的元素具有第一元素值,并且当所述原始维度组合是异常原始维度组合时,与所述原始维度组合相对应的元素具有第二元素值;
通过利用所述遗传算法迭代地更新一组当前染色体来获得一组最终染色体,所述一组当前染色体初始地包括所述一组初始染色体;
从所述一组最终染色体中识别最优染色体;以及
基于所述最优染色体来确定所述至少一个异常原始维度组合。
4.根据权利要求3所述的方法,其中,所述迭代地更新一组当前染色体包括,在每一次迭代中:
对于所述一组当前染色体中的每条染色体,通过适应度函数来评估所述染色体的适应度,以获得与所述一组当前染色体相对应的一组适应度;
基于所述一组适应度,通过轮盘选择法从所述一组当前染色体中选择一组初步染色体;以及
通过对所述一组初步染色体执行交叉和/或变异来生成一组经更新的染色体。
5.根据权利要求4所述的方法,其中,所述适应度函数包括贡献度分量和/或简洁度分量,并且所述评估所述染色体的适应度包括:
通过所述贡献度分量评估所述染色体的贡献度,和/或通过所述简洁度分量评估所述染色体的简洁度;以及
基于所述贡献度和/或所述简洁度来确定所述适应度。
6.根据权利要求5所述的方法,其中,所述评估所述染色体的贡献度包括:
确定所述目标指标的预期数据值,所述目标指标的预期数据值与所述异常数据值在时间上对齐;
通过所述染色体来识别至少一个异常原始维度组合;
对于所述至少一个异常原始维度组合中的每个异常原始维度组合,确定与所述异常原始维度组合相对应的预期数据值集合,每个预期数据值对应于与所述异常原始维度组合相关联的一个基础指标,并且与所述异常数据值在时间上对齐;
至少基于与所述至少一个异常原始维度组合相对应的至少一个预期数据值集合来预测所述目标指标的恢复数据值;
计算所述目标指标的预期数据值与所述恢复数据值之间的第一差值;
计算所述目标指标的预期数据值与所述异常数据值之间的第二差值;以及
基于所述第一差值和所述第二差值来计算所述贡献度。
7.根据权利要求6所述的方法,其中,所述预测所述目标指标的恢复数据值包括:
通过图神经网络,至少基于所述至少一个预期数据值集合来预测所述恢复数据值。
8.根据权利要求7所述的方法,其中,所述图神经网络的训练包括:
构建与所述聚合维度组合相对应的树状图,所述树状图包括一组父节点;
对于所述一组父节点中的每个父节点,生成与所述父节点相对应的节点预测损失;
基于与所述一组父节点相对应的一组节点预测损失来生成与所述树状图相对应的预测损失;以及
通过使所述预测损失最小化来优化所述图神经网络。
9.根据权利要求8所述的方法,其中,所述构建树状图包括:
确定所述聚合维度组合与所述多个原始维度组合之间的多个中间维度组合;
将所述聚合维度组合、所述多个中间维度组合和所述多个原始维度组合设置成多个节点;
基于所述多个节点之间的聚合关系来确定所述多个节点之间的一组边;以及
将所述多个节点和所述一组边组合成所述树状图。
10.根据权利要求8所述的方法,其中,所述父节点与指标集合相关联,并且所述生成节点预测损失包括:
对于所述指标集合中的每个指标,生成与所述指标相对应的子预测损失;以及
基于与所述指标集合相对应的子预测损失集合来生成所述节点预测损失。
11.根据权利要求10所述的方法,其中,所述生成子预测损失包括:
通过预定公式,基于与所述父节点相对应的一组子节点的一组数据值来计算所述父节点的针对所述指标的真实值;
通过所述图神经网络,基于所述一组数据值来预测所述父节点的针对所述指标的预测值;以及
基于所述真实值和所述预测值来计算所述子预测损失。
12.根据权利要求5所述的方法,其中,所述评估所述染色体的简洁度包括:
通过所述简洁度分量来计算所述染色体中的具有所述第二元素值的元素的数量;以及
将所述数量确定为所述简洁度。
13.根据权利要求4所述的方法,还包括:
确定是否达到预定迭代次数或者所述一组适应度中的最大适应度是否收敛;以及
响应于确定达到所述预定迭代次数或者所述最大适应度收敛,停止迭代地更新所述一组当前染色体,并将所述一组当前染色体确定为所述一组最终染色体。
14.根据权利要求1所述的方法,其中,所述确定根本原因包括:
确定所述至少一个异常原始维度组合包括一个异常原始维度组合;以及
将所述异常原始维度组合确定为所述根本原因。
15.根据权利要求1所述的方法,其中,所述确定根本原因包括:
确定所述至少一个异常原始维度组合包括多个异常原始维度组合;
确定所述多个异常原始维度组合是否能够被聚合;
响应于确定所述多个异常原始维度组合能够被聚合,对所述多个异常原始维度组合进行聚合,以获得至少一个异常中间维度组合;以及
至少将所述至少一个异常中间维度组合确定为所述根本原因。
16.根据权利要求15所述的方法,还包括:
响应于确定所述多个异常原始维度组合不能被聚合,将所述多个异常原始维度组合确定为所述根本原因。
17.根据权利要求14-16中任一项所述的方法,还包括:
对于每个异常原始维度组合或每个异常中间维度组合,识别与所述异常原始维度组合或所述异常中间维度组合相关联的基础指标集合中的导致所述异常数据值的异常基础指标子集。
18.根据权利要求17所述的方法,其中,所述识别异常基础指标子集包括:
形成多个基础指标子集,每个基础指标子集包括所述基础指标集合中的一个或多个基础指标;
对于所述多个基础指标子集中的每个基础指标子集,通过适应度函数来评估所述基础指标子集的适应度,以获得与所述多个基础指标子集相对应的多个适应度;
识别所述多个适应度中的最大适应度;以及
将与所述最大适应度相对应的基础指标子集确定为所述异常基础指标子集。
19.一种用于基于跨指标的多维度根本原因分析的装置,包括:
至少一个处理器;以及
存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使得所述至少一个处理器:
获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标,
确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联,
从所述时序数据中识别异常数据值,
基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合,以及
基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
20.一种用于基于跨指标的多维度根本原因分析的计算机程序产品,包括计算机程序,所述计算机程序被至少一个处理器执行用于:
获得针对聚合维度组合的目标指标的时序数据,所述聚合维度组合包括针对多类维度的多个聚合维度,所述目标指标是根据基础指标集合计算得到的派生指标;
确定与所述聚合维度组合相对应的多个原始维度组合,每个原始维度组合包括针对所述多类维度的多个原始维度,并且与所述基础指标集合相关联;
从所述时序数据中识别异常数据值;
基于所述基础指标集合,从所述多个原始维度组合中识别至少一个异常原始维度组合;以及
基于所述至少一个异常原始维度组合来确定导致所述异常数据值的根本原因。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210041099.4A CN116523172A (zh) | 2022-01-14 | 2022-01-14 | 基于跨指标的多维度根本原因分析 |
PCT/US2022/048108 WO2023136871A1 (en) | 2022-01-14 | 2022-10-27 | Multi-dimensional root cause analysis based on cross-metrics |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210041099.4A CN116523172A (zh) | 2022-01-14 | 2022-01-14 | 基于跨指标的多维度根本原因分析 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116523172A true CN116523172A (zh) | 2023-08-01 |
Family
ID=84421230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210041099.4A Pending CN116523172A (zh) | 2022-01-14 | 2022-01-14 | 基于跨指标的多维度根本原因分析 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116523172A (zh) |
WO (1) | WO2023136871A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407444B (zh) * | 2023-12-14 | 2024-03-12 | 厦门她趣信息技术有限公司 | 一种基于维度推荐的异动归因系统和方法及其设备和介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10263833B2 (en) * | 2015-12-01 | 2019-04-16 | Microsoft Technology Licensing, Llc | Root cause investigation of site speed performance anomalies |
-
2022
- 2022-01-14 CN CN202210041099.4A patent/CN116523172A/zh active Pending
- 2022-10-27 WO PCT/US2022/048108 patent/WO2023136871A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023136871A1 (en) | 2023-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Márquez-Chamorro et al. | Run-time prediction of business process indicators using evolutionary decision rules | |
Wang et al. | A compound framework for wind speed forecasting based on comprehensive feature selection, quantile regression incorporated into convolutional simplified long short-term memory network and residual error correction | |
CN104978612A (zh) | 基于ahp-rbf的分布式大数据系统风险预测方法 | |
CA3088689C (en) | Finite rank deep kernel learning for robust time series forecasting and regression | |
CN112470131B (zh) | 检测数据集中异常的装置和方法以及它们相应的计算机程序产品 | |
KR102079359B1 (ko) | 개선된 sax 기법 및 rtc 기법을 이용한 공정 모니터링 장치 및 방법 | |
Zheng et al. | A self-adaptive temporal-spatial self-training algorithm for semisupervised fault diagnosis of industrial processes | |
CN113935440A (zh) | 一种电压互感器误差状态迭代评估方法及系统 | |
CN114297036A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
Challu et al. | Deep generative model with hierarchical latent factors for time series anomaly detection | |
US11392577B2 (en) | Real-time anomaly detection | |
Wang et al. | Incremental causal graph learning for online root cause analysis | |
CN116668083A (zh) | 一种网络流量异常检测方法及系统 | |
CN116523172A (zh) | 基于跨指标的多维度根本原因分析 | |
Jiang et al. | A timeseries supervised learning framework for fault prediction in chiller systems | |
EP4033421B1 (en) | Method and system for predicting a failure of a monitored entity | |
Brunello et al. | Monitors that learn from failures: Pairing STL and genetic programming | |
CN116991615A (zh) | 一种基于在线学习的云原生系统故障自愈方法及装置 | |
CN116910559A (zh) | 一种面向电网超算中心智能运维应用的指标异常检测方法 | |
Fargus | Optimisation of Correlation Matrix Memory Prognostic and Diagnostic Systems | |
Fan | Data mining model for predicting the quality level and classification of construction projects | |
Huo et al. | Traffic anomaly detection method based on improved GRU and EFMS-Kmeans clustering | |
Wang et al. | Disentangled Causal Graph Learning for Online Unsupervised Root Cause Analysis | |
Wang et al. | Training strategies for autoencoder-based detection of false data injection attacks | |
Gavrylenko et al. | Study of Methods for Improving the Meta-Algorithm of the Bagging Classifier |
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 |