【KDD2024】面向集群整体作业运行变慢的异常检测

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,5000CU*H 3个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: 阿里云计算平台大数据基础工程技术团队主导,与浙江大学合作的论文《Cluster-Wide Task Slowdown Detection in Cloud System》被数据挖掘领域顶会ACM SIGKDD2024接收。论文从新的视角分析云计算平台集群健康状态,实现了基于神经网络的集群作业整体变慢异常定向检测,与SOTA异常检测算法相比平均提升F1 score 5.3%。

开篇

近日,由阿里云计算平台大数据基础工程技术团队主导,与浙江大学合作的论文《Cluster-Wide Task Slowdown Detection in Cloud System》被数据挖掘领域顶会ACM SIGKDD2024接收。论文从新的视角分析云计算平台集群健康状态,实现了基于神经网络的集群作业整体变慢异常定向检测,与SOTA异常检测算法相比平均提升F1 score 5.3%。


背景

面向集群整体作业分布的变慢检测是时序异常检测的一个分支。目前,异常检测可分为有监督异常检测和无监督异常检测。其中有监督异常检测依赖于大量人工标记工作,因而在许多实际场景下难以运用。无监督异常检测则可以克服这个缺点,但面临训练集污染的问题,即训练集中不仅有正常数据,还包括无标记的异常数据。近年来,重构类无监督时序异常检测方法取得了显著的成就,其发展趋势从以RNN变种为backbone的模型,如OmniAnomaly【1】, MSCRED【2】等,逐渐演变到以transformer变种为backbone的模型,如AnomalyTransformer【3】, DCdetector【4】, TranAD【5】等。虽然基于transformer变种的异常检测模型,较之之前的模型取得了明显进步,但我们发现attention机制在处理复合周期信息时,常常会忽略振幅较低的周期性信息。而集群作业整体执行时间分布是一个具有复合周期性的时间序列。因此,本方法在此基础上进一步提出了撇脂注意力机制,提升注意力机制对复合周期信息的处理能力。


挑战

在集群整体作业分布变慢检测中,存在下述三个问题。首先,集群整体作业分布集合了多种作业的执行时间表现,不同作业可能有不同周期,同一作业也会表现出日周期、周周期、月周期复合的情况,而目前attention机制为基础的异常检测神经网络无法准确的重构复合周期序列中振幅较低的周期信息。其次,在实际生产环境下,难以保证训练数据总是只包含正常数据,而无异常数据。因此,使用无监督学习算法时,有污染的数据集会让模型整体效果变差。最后,现有的无监督异常检测算法假设异常是所有偏离正常分布的时刻都为异常。但在集群整体作业分布变慢检测的工作中,我们只关注变慢的异常。


破局

image.png

为提升attention机制处理复合周期性信息的能力,我们首先理论分析标准注意力机制注意力权重分配特征,发现标准注意力机制总是把注意力权重分配给高振幅的周期信号,而忽略低振幅的周期信号。因此,我们提出撇脂周期法,迭代地从原有信号中重构出高振幅的周期信号,使用原有信号减去本轮迭代重构信号,将余下的部分作为下一轮迭代的输入信号。为解决训练数据集污染的问题,我们提出Picky Loss,它自适应地为训练集中的正常数据分配更高的权重,降低异常数据权重。其原理在于attention机制中,正常数据能与其余数据建立广泛且相对均匀的注意力关联,而异常数据仅能与自己周围数据建立较强的注意力关联。因此,我们使用高斯曲线,过滤每个数据周围的注意力权重,而计算其余权重的和。这个和越大说明当前数据为正常数据的可能性越大,应该赋予更高的权重。和越小说明当前数据为异常的可能性越大,因此应该赋予较低的权重。为解决定向检测集群分布变慢的问题,我们设计了Neural OT模块,单向抑制集群作业总体分布变慢的时间片的重构,而通过其余情况下时间片的重构,令变慢时间片重构误差大于其余时间片。


应用

目前对应算法已经在阿里云云原生大数据计算服务MaxCompute集群异常监控场景中进行灰度。可以有效地帮助运维人员对集群运行健康状况进行评估,提前发现可能的风险隐患。

论文信息

●论文名字:Cluster-Wide Task Slowdown Detection in Cloud System

●论文作者:Feiyi Chen, Yingying Zhang, Lunting Fan, Yuxuan Liang, Guansong Pang, Qingsong Wen, Shuiguang Deng

●论文pdf链接:https://arxiv.org/abs/2408.04236

●部分参考文献:【1】Su Y, Zhao Y, Niu C, et al. Robust anomaly detection for multivariate time series through stochastic recurrent neural network[C]//Proceedings of the 25th ACM SIGKDD international conference on knowledge discovery & data mining. 2019: 2828-2837.【2】Zhang C, Song D, Chen Y, et al. A deep neural network for unsupervised anomaly detection and diagnosis in multivariate time series data[C]//Proceedings of the AAAI conference on artificial intelligence. 2019, 33(01): 1409-1416.【3】Xu J, Wu H, Wang J, et al. Anomaly transformer: Time series anomaly detection with association discrepancy[J]. arXiv preprint arXiv:2110.02642, 2021.【4】Yang Y, Zhang C, Zhou T, et al. Dcdetector: Dual attention contrastive representation learning for time series anomaly detection[C]//Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. 2023: 3033-3045.【5】Tuli S, Casale G, Jennings N R. Tranad: Deep transformer networks for anomaly detection in multivariate time series data[J]. arXiv preprint arXiv:2201.07284, 2022.

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
1月前
|
SQL 分布式计算 运维
如何对付一个耗时6h+的ODPS任务:慢节点优化实践
本文描述了大数据处理任务(特别是涉及大量JOIN操作的任务)中遇到的性能瓶颈问题及其优化过程。
|
5月前
|
机器学习/深度学习 搜索推荐 算法
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
391 0
|
4月前
|
机器学习/深度学习 并行计算 TensorFlow
揭示 GPU 上的批处理策略
【6月更文挑战第9天】批处理策略是优化GPU效率的关键技术,通过组合处理多个数据样本,减少数据传输、充分利用并行计算,提升GPU计算效率。在TensorFlow示例中,批处理用于神经网络训练,但选择合适的批处理大小需考虑GPU内存、模型复杂度和数据特性,以达到最佳性能。批处理策略将持续发展,支持深度学习的进步。
45 7
|
2月前
|
DataWorks 算法 调度
B端算法实践问题之配置脚本以支持blink批处理作业的调度如何解决
B端算法实践问题之配置脚本以支持blink批处理作业的调度如何解决
32 1
|
5月前
|
调度
【核心完整复现】基于目标级联法的微网群多主体分布式优化调度
【核心完整复现】基于目标级联法的微网群多主体分布式优化调度
|
5月前
|
监控 测试技术
【亮剑】理解CPU负载对服务器稳定性的重要性,并提供了诊断和解决CPU负载过高问题的步骤
【4月更文挑战第30天】本文阐述了理解CPU负载对服务器稳定性的重要性,并提供了诊断和解决CPU负载过高问题的步骤:1) 使用监控工具分析CPU使用率和系统负载;2) 深入排查运行队列、进程占用、系统调用和硬件状态;3) 根据排查结果进行代码优化、调整进程优先级或限制CPU使用率,必要时升级硬件。建议建立监控体系,定期性能测试,并持续优化以保证服务器高效运行。
183 1
|
12月前
|
弹性计算 安全 数据库
生信分析场景下,如何将 BLAST 作业计算成本降低 91%
Memory Machine Cloud 能够有效的为应用自动更换云主机实例,无需始终按照最高需求来设置固定的云主机类型。
|
机器学习/深度学习 传感器 算法
【生产调度】基于和声搜索算法实现并行机器调度附matlab代码
【生产调度】基于和声搜索算法实现并行机器调度附matlab代码
|
Java Linux
理论:第十四章:生产环境服务器变慢如何诊断,性能评估
理论:第十四章:生产环境服务器变慢如何诊断,性能评估
270 0
理论:第十四章:生产环境服务器变慢如何诊断,性能评估
|
机器学习/深度学习 监控 安全
监控模型在监控模型在生产环境的性能(Arize)
随着机器学习基础设施的成熟,对模型监控的需求激增。不幸的是,这种不断增长的需求并没有形成一个万无一失的剧本,向团队解释如何来衡量模型的性能。