文章目录

  • 一、任务
  • 二、数据集说明
  • 三、专业名词

CSDN 叶庭云:https://yetingyun.blog.csdn.net/


一、任务

This track focuses on solving a causal structure learning problem in AIOps.

AIOps 相关:主要目标是从事件序列数据中挖掘因果图关系,并辅助定位根因。

  • 主要需要解决的是智能运维 AIOps 领域中的因果结构学习问题。目标是挖掘连续时间事件序列中的因果图关系。获取因果图信息可以更好地理解实体之间的关系,能够辅助管理员快速定位实际系统故障的根本原因。
  • 在电信网络中,异常现象通常是通过告警来识别的,由于网络的规模和系统内部相互关联的结构,运营商每天可能面临数以百万计的警报。网络中的单个故障可能会在多个相连的设备上触发大量的各种类型的告警,运营商期望能从告警风暴中快速定位到故障根源,然而实现这样的目标是非常困难的,需要学习到告警间的因果图关系提供给管理员进行快速排障。
  • 在这个赛道中需要学习到告警事件间的因果图关系,其中每个节点是从一些可观测的历史告警数据集得出的告警类型,因果图可用于对最重要和最相关的告警进行优先排序,然后提供给管理员参考以此来更加高效地定位到告警的故障根源。

二、数据集说明

所有数据集都是来自现实世界的工业数据或基于专业知识的实际因果假设生成的。告警类型的因果图在竞赛中被限定为:有向、无环,但是因果识别和潜在变量的问题可能仍然存在。

  • 数据集地址及基线:https://github.com/gcastle-hub/dataset
  • 数据集说明:https://competition.huaweicloud.com/information/1000041487/circumstance

竞赛提供了 24 个数据集,其中 12 个包含了网络拓扑信息其它 12 个不包含网络拓扑信息。每个数据集文件夹中包含以下文件:

Alarm.csv 历史告警数据集

  • 格式:[alarm_id, device_id, start_timestamp, end_timestamp]
  • alarm_id 表示告警类型,device_id 表示告警所在设备,分别将其编码所得值为 [ 0 , N − 1 ] [0,\ N-1] [0, N−1] 和 [ 0 , M − 1 ] [0,\ M-1] [0, M−1],其中 N N N 表示告警类型总数, M M M 表示设备总数。
  • 数据示例:

Topology.npy 设备间拓扑关系图(有的数据中并不包含)

  • 格式: M ∗ M M * M M∗M 大小的的 Numpy 数组
  • 设备连接关系对应的无向图,二进制对称邻接矩阵,元素值为 1 表示存在连接关系,0 表示不存在连接关系。
  • 数据示例:

DAG.npy 真实因果图

  • 格式: N ∗ N N * N N∗N 大小的 NumPy 数组
  • 告警事件因果关系的有向图
  • 数据示例:

目标任务:给定以上数据集,使用历史告警数据和设备拓扑图(可能没有)来学习到告警类型间的因果图。

比赛使用 g − s c o r e g-score g−score 作为评价指标,计算公式如下图所示:

g-score  = max ⁡ ( 0 , ( T P − F P ) ) T P + F N \text { g-score }=\frac{\max (0,\ (T P-F P))}{T P+F N}  g-score =TP+FNmax(0, (TP−FP))​

最后排名分数是 K K K 个数据集中 g − s c o r e g-score g−score 的平均值:

  • TP(True Positive):正确预测的边;
  • FP(False Positive):预测存在但真实因果图中不存在的边;
  • FN(False Negative):预测不存在但真实因果图存在的边;

三、专业名词

因果发现(Causal Discovery):发现因果关系的传统方法是使用干预措施或随机实验,这在很多情况下过于昂贵,过于耗时,甚至不可能。通过分析纯粹的观察性数据来揭示因果信息,即所谓的因果发现。

  • 基于约束的因果发现方法。基于约束的因果发现方法主要基于独立性和条件独立性检测判断变量之间的统计关系,并在一定的假设下先获得无向因果图。之后利用 V-structure 和一系列方向传播规则对因果图中的无向边进行方向传播。其经典方法包括 PC 算法,能够处理隐变量(混淆变量)的 FCI 算法 ,以及能够处理异构数据的 CD-NOD 算法。
  • 基于评分的因果发现方法。基于评分的方法通过对候选模型(即候选因果图)进行评分的方式,来选取评分最高的因果图作为结果。经典方法包括 GES 以及一系列通过改变评分函数来适应不同任务的扩展方法,例如基于通用评分函数的因果发现方法。此外,对于实际情况中 Faithfulness 假设不满足的情景,Exact Search 可提供可靠的马尔科夫等价类。
  • 基于约束性函数因果模型的因果发现方法。基于约束性函数因果模型的因果方法通过假设结果和原因之间的函数关系类别,从而判断其间的方向。经典方法包括线性非高斯无环模型,加性噪声模型和后非线性模型。近期通过对混合函数进行限制从而得到非线性独立成分分析的可识别性的理论也为通用的非线性的因果发现提供了新的方法。
  • 因果隐表征学习。因果隐表征学习专注于隐变量与观测变量间的关系以及隐变量间的关系,经典工作包括 GIN 以及层级化隐变量学习。

因果发现 / {/} /因果推断工具:DoWhy、Causal-Learn、YLearn、CausalNex、Causal ML

因果结构学习工具链:华为诺亚方舟实验室 gCastle

多元异构时序数据:即包含多种数据类型(数值、类别、布尔型等),多种因果产生机制等

因果图学习:图形化模型作为一种描述因果关系的语言,便于彼此更好地理解和表达对因果关系的想法。因果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,适合于检查程序输入条件涉及的各种组合情况。

因果隐变量检测:现实场景中,经常有许多存在隐变量的情况,隐变量是影响因果发现算法精度的一大核心要素。如果数据是线性非高斯的,可将独立噪声条件(IN)扩展到广义独立噪声条件(GIN),通过找到隐变量的代理变量做回归,恢复数据的因果结构。但这种方法的局限性在于其认为观测变量之间没有边,无法推断变量之间完整的因果关系,在此基础上可以利用面向不完全观察数据的因果结构学习算法(FRITL 算法)做进一步的优化。当前因果隐变量检测技术对数据的产生机制有较强假设,且大都只能应对线性因果场景,针对工业界的复杂因果场景很难落地实施。

因果推断是统计学领域非常经典的一个问题,旨在利用指标间的因果关系和拓扑图,找到统计学上的根因,结论通常是因果图上的某个节点(KPI 指标)而且事先定义的明确的根因类型 or 某条根因路径(Path)。因果推断领域存在着两大基本框架:PotentialOutcomeFramework(POF)潜在结果框架和 StructuralCausalModel(SCM)结构因果模型,两者的利器分别是控制变量和因果图。典型算法包括 IBM 的 CloudRanger,OM Graph 以及 FluxInfer 等,这些算法在构建因果图阶段主要都使用了经典的 PC Algorithm,而在推断阶段则使用了各不相同的搜索方式例如 Random Walk 随机游走、BFS 或是 PageRank,得到的根因形式也不尽相同。


参考链接:

  • PCIC 2021 | 华为 & 北京大学因果推理挑战赛
  • 知乎 VoidOc | 时间序列异常检测(四)—— 根因定位落地实践
  • bilibili 视频 | 蔡瑞初老师:基于观测数据的因果发现及因果性学习
  • 蔡瑞初老师 | 基于观测数据的因果发现及因果性学习
  • 集智百科 | 面向因果规律的表示学习新方法—因果表征学习最新攻略
  • 集智百科 | 因果发现

【因果发现】 针对时序数据的因果图学习相关推荐

  1. 探索可观测性:AIOps中的时序数据应用

    01. 背景 随着科技的发展,时序数据在我们的认知中占据越来越多的位置,小到电子元件在每个时刻的状态,大到世界每天的新冠治愈人数,一切可观测,可度量,可统计的数据只要带上了时间这个重要的因素就会成为时 ...

  2. Pandas处理时序数据(初学者必会)!

    ↑↑↑关注后"星标"Datawhale每日干货 & 每月组队学习,不错过Datawhale干货 作者:耿远昊,Datawhale成员,华东师范大学 时序数据是指时间序列数据 ...

  3. 基于时序数据的微内核预警引擎架构设计

    一个完整的监控生态体系包括"监.析.控"三个环节,预警平台作为偏"析"的一环,既要对监控数据做规则分析,又要为控制系统生成预警日志,起着承上启下的作用.监控平台 ...

  4. 时序数据库技术体系-时序数据存储模型设计

    本文引用自: http://hbasefly.com/2017/11/19/timeseries-database-2/ 作者对时序数据库有很多的研究,其博客发表有多篇相关文章. 本人最近在学习时序数 ...

  5. 时序数据到底是什么,为什么我们需要时序数据库?

    作者:刘东华 什么是时序数据?如何存储?如何分析并挖掘其中的价值? 先看个问题:自动驾驶的特斯拉.自动华尔街交易算法.智能家居.当日送达的快递.跟踪每日新冠统计数据和社区空气质量,这些有什么共同之处? ...

  6. 基于机器学习的时序数据预测方法

    预测模型建模 时序数据的预测通常建模为利用历史数据值预测未来的数据走势. 简单的数学表示: x => S => x^' 其中: x = {x_1,x_2,-,x_t} 表示历史数据, S ...

  7. 使用TSDB自动检测时序数据的异常情况

    本期Jesse就带大家来继续了解一下TSDB的应用问题,小伙伴们,让我们直接步入正题吧. 本文仅代表个人观点,如有偏颇之处,还请海涵- 现今,每天都有数千亿个传感器产生大量时序数据.公司收集大量数据使 ...

  8. 时序数据 mysql存储_【时序数据库】时序数据库介绍

    1.基本概念 时序数据库(Time Series Database)是用于存储和管理时间序列数据的专业化数据库.时序数据库特别适用于物联网设备监控和互联网业务监控场景. 下面介绍下时序数据库的一些基本 ...

  9. IoT 物联网海量时序数据存储最佳实战

    随着 5G/IoT 物联网技术的飞速发展,IoT 设备产生的时序数据也呈爆炸式增长,数据的总量(Volume).数据类型(Variety)越来越多.访问速度(Velocity)要求越来越快.对数据价值 ...

最新文章

  1. PLC項目任務單2---狀態轉移圖
  2. qt关于添加模块的说明
  3. php中的匿名函数简单使用
  4. Office CVE-2017-11882复现
  5. 教大家如何制作优盘启动盘
  6. 【设计模式】享元模式(Flyweight)
  7. 国家应统一手机快充标准
  8. CRM客户关系管理系统HR人事OA系统APP源码
  9. 通达oa SQL注入day
  10. 清理c盘、c盘哪些文件可以删、图形显示文件大小软件
  11. 论BOM管理的若干重要问题
  12. 等保2.0四级安全要求
  13. 2022年(上半年)信息系统项目管理师考试-综合知识真题及解析(一)
  14. 无人机实时流怎么开_直播解决方案,如何利用无人机进行直播
  15. 圆周率一千万亿位_目前圆周率已经达到十万亿位了,为何还要算?有什么用处?...
  16. 人心惶惶:利用新西兰特大枪击案进行网络钓鱼攻击的前因后果
  17. 10没有基于策略的qos_电力通信 | 基于智能光网络系统的配用电业务承载方案研究...
  18. 国内外6款优秀的免费CDN服务
  19. [嵌入式开发模块]JY61姿态角度传感器 驱动模块
  20. OpenCV 实现图片的水平投影与垂直投影,并进行行分割

热门文章

  1. 长沙理工计算机竞赛黑马,2018年五大学科成绩出炉,长沙杀出一匹黑马!
  2. 虚拟机 服务器 断电,意外断电自动启动服务器和虚拟机的教程
  3. python灰帽编程_灰帽Python的Python
  4. wegame饥荒一直登录中_LOL登录遇到预期之外的错误(用wegame登录出现错误而用客户端登录可以的解决方法)!亲测有效!...
  5. 土木工程成功转行Python,月入13k,太香......
  6. Lesson 16 Mary had a little lamb 内容鉴赏
  7. Maze_AI: 一款基于 Python + Pygame + AI 算法的迷宫小游戏
  8. char、nchar、varchar、nvarchar的区别和特点
  9. 面试必刷25道面试题(附答案)从容应对互联网大企面试
  10. Oracle与SQL Server在企业应用中的比较(转)