ANOMALY TRANSFORMER: TIME SERIES ANOMALY DETECTION WITH ASSOCIATION DISCREPANCY

论文题目:
ANOMALY TRANSFORMER: TIME SERIES ANOMALY DETECTION WITH ASSOCIATION DISCREPANCY
发表会议:ICLR 2022
论文地址:https://openreview.net/pdf?id=LzQQ89U1qm_
论文代码:https://github.com/thuml/Anomaly-Transformer

目录

  • 一、现状总结
    • 1.1、利用经典的机器学习方法
    • 1.2、通过自监督任务训练一个RNN网络
    • 1.3、基于关联建模的方法
  • 二、思想概述-基于关联的准则
    • 2.1、序列关联
    • 2.2、先验关联
    • 2.3、关联差异
  • 三、解决方法
    • 3.1、模型整体架构
    • 3.2、Anomaly-Attention
    • 3.3、Association Discrepancy
    • 3.4、Training Strategy
      • 3.4.1、Vanilla Version
      • 3.4.2、Minimax Association Learning
    • 3.5、Association-based Anomaly Criterion
  • 四、试验分析
    • 4.1、结果分析
    • 4.2、消融实验
    • 4.3、异常判据的可视化
    • 4.4、先验关联学习尺度的可视化

一、现状总结

1.1、利用经典的机器学习方法

  • 基于密度估计的方法,计算局部离群因子或则和局部连通性来检测异常
  • 这些经典方法没有考虑时间序列信息,无法获取时间模式,只考虑到单个时间点,难以推广到不可见的真实场景

1.2、通过自监督任务训练一个RNN网络

  • 通过预测来检测误差
  • 虽然一定程度上解决了时序信息的问题,但对于复杂的时间模式,RNN无法学习到一个长序列的信息
  • 这些经典方法没有考虑时间信息,难以推广到不可见的真实场景
  • 对于复杂的时间模式,逐点表示信息较少,并且可以由正常时间点主导,使得异常难以区分。此外,重建或预测误差是逐点计算的,无法提供对时间背景的全面描述

1.3、基于关联建模的方法

  • 对于多变量时间序列,可以看各个变量之间的关系是否变化来检测异常;但这种方法也只考虑到了逐点的信息
  • 用子序列的关联来建模,找到异常;但这种无法捕获每个时间点与整个序列之间的细粒度时间关联
  • 无法捕获每个时间点与整个序列之间的细粒度时间关联

二、思想概述-基于关联的准则

对每个时间点的先验关联和序列关联进行建模,由于异常点的先验关联和序列关联都差不多,因此异常的关联差异会比正常时间点小,在两个分支之间采用极大极小策略,放大关联差异的正常与异常可分辨性。
image.png

image.png

2.1、序列关联

序列关联:点与整个序列的关联;每个时间点的时间关联可以从自注意图中得到,该自注意图表现为其对所有时间点的关联权值沿时间维的分布。每个时间点的关联分布可以为时间上下文提供更有信息的描述。原始transformer中的自注意力权值

2.2、先验关联

先验关联:点与相邻序列的关联;异常的关联应集中在相邻的时间点,这些时间点由于连续性更容易包含相似的异常模式。这种邻接集中的归纳偏倚被称为先验关联;使用可学习的高斯核来表示每个时间点的邻接集中归纳偏差

2.3、关联差异

关联差异:每个时间点的先验关联和序列关联之间的距离来量化,称为关联差异

三、解决方法

3.1、模型整体架构

图一

3.2、Anomaly-Attention

一个双分支结构的异常注意力机制(图一左),上半部用来计算先验关联,下半部是计算序列关联,即原始transformer得权重矩阵。Anomaly-Attention得公式表示如下公式一。
公式一
其中 σ ∈ R N × 1 σ∈R^{N×1} σRN×1为可学习的尺度参数

3.3、Association Discrepancy

算出了先验关联和序列关联,接下来就要算两者的关联差异;将关联差异形式化为先验关联和序列关联之间的对称KL散度,它表示这两个分布之间的信息增益。我们对多层的关联差异进行平均,将多层特征的关联组合成一个更有信息量的度量,公式如下:
公式二
其中i代表时间点,L代表层数

3.4、Training Strategy

3.4.1、Vanilla Version

公式三
第一项是重构损失,让模型提取到的特征更准确;第二项是差异损失,让异常的可识别性更强

理解:要想损失越小,那么第二项就要越大,就意味着关联差异越大,就意味着先验关联和序列关联越大;要想先验关联和序列关联越大,那么就要引导序列关联更多地关注非相邻区域;因为这样做,对于异常点来说即便更多的关注了非邻域区域,但由于异常点很难与全局时间序列建立关系,所以先验关联和序列关联的差异还是很小;但对于正常点来说,多的关注了非邻域区域,那么就会使序列关联对角线的值变小,而对角线以外的值变大,这样先验关联和序列关联的差异就会变大。就会让异常的可识别性更强。

此种方法的缺点:
直接最大化第二项的差异损失,会让先验关联中可学习的尺度参数σ变为0,使先验关联变得毫无意义

3.4.2、Minimax Association Learning

图二
参考图一和图二,本文采用的训练策略分为两步
第一步:最小化阶段,固定序列关联,让先验关联尽可能的去贴近序列关联,这一过程将使先验关联适应不同的时间模式;
第二步:最大化阶段,固定先验关联,让序列关联尽可能的去远离序列关联,这个过程迫使序列关联更加关注非邻域区域;
由于先验关联在最小阶段近似于序列关联,因此最大阶段将对序列关联进行更强的约束,迫使时间点更加关注非相邻区域。在重构损失下,异常比正常时间点更难达到这一点,从而放大了关联差异的正常-异常可分辨性。

3.5、Association-based Anomaly Criterion

公式四
本文定义的异常判别准则如公式四所示:
第一项是关联差异,第二项是重构重构差异,上述的准则,对于异常点来说,不管怎样,异常分数都是大的:
图三

四、试验分析

4.1、结果分析

采用了6个数据集,在18个模型上验证
image.png

4.2、消融实验

image.png

4.3、异常判据的可视化

image.png

4.4、先验关联学习尺度的可视化

image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/472050.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

七、Java中SpringBoot组件集成接入【Minio文件服务器】

七、Java中SpringBoot组件集成接入【Minio文件服务器】 1.Minio介绍2.搭建Minio服务2.1Windows部署2.2Linux部署2.3docker部署 3.Minio可视化操作4.SpringBoot接入Minio1.添加maven依赖2.yaml配置文件3.配置类4.工具类5.控制类 5.常见问题6.其他参考文章 1.Minio介绍 对象存储…

设计模式深度解析:适配器模式与桥接模式-灵活应对变化的两种设计策略大比拼

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 适配器模式与桥接模式-灵活应对变化的两种设计策略大比拼 探索设计模式的魅力:深入了…

Day16-【Java SE进阶】IO流(二):字符流、缓冲流、转换流、打印流、数据流、序列化流、IO框架

一. 字符流 字节流:适合复制文件等,不适合读写文本文件 字符流:适合读写文本文件内容 1. FileReader(文件字符输入流) 作用:以内存为基准,可以把文件中的数据以字符的形式读入到内存中去。读取单个字符,性能比较差&a…

【位运算】【 数学】【 哈希映射】2857. 统计距离为 k 的点对

本文涉及知识点 位运算 数学 哈希映射 LeetCode 2857. 统计距离为 k 的点对 给你一个 二维 整数数组 coordinates 和一个整数 k ,其中 coordinates[i] [xi, yi] 是第 i 个点在二维平面里的坐标。 我们定义两个点 (x1, y1) 和 (x2, y2) 的 距离 为 (x1 XOR x2) …

PMP备考心得 | 策略与技巧大揭秘

1.理解考试大纲:首先,你需要熟悉PMP考试的内容和结构。PMI官网提供了详细的考试大纲,包括项目管理的五个过程组(启动、规划、执行、监控、收尾)和十个知识领域; 2.制定学习计划:根据个人的时间…

【C语言】基本语法知识C语言函数操作符详解

主页:醋溜马桶圈-CSDN博客 专栏:C语言_醋溜马桶圈的博客-CSDN博客 gitee:mnxcc (mnxcc) - Gitee.com 目录 1.基本语法 1.1 代码解释 1.1.1 main()主函数 1.1.2 int 1.1.3 { } 1.1.4 printf()库函数 1.1.5 stdio.h头文件 1.2 C语言的…

突破边界:Web3开启数字化社会的新纪元

引言 随着科技的不断进步和数字化社会的发展,Web3正逐渐成为了人们关注的焦点。作为新一代互联网的演进形态,Web3具有突破传统边界、实现去中心化的特点,被认为将开启数字化社会的新纪元。本文将深入探讨Web3的概念、特点、应用场景&#xf…

VueUse常见方法使用

npm i vueuse/core 1、useDebounceFn 节流防抖 import { useDebounceFn } from vueuse/core<button type"button" class"search" click"query">查询</button>// 查询 获取table数据const query2 async () > {try {const res …

MySQL 多表查询强化练习

环境准备 create table dept(id int PRIMARY KEY,dname VARCHAR(50),loc VARCHAR(50) ); insert into dept values (10,研发部,北京), (20,学工部, 上海), (30,销售部,广州 ), (40,财务部,深圳);create table job(id int PRIMARY KEY,jname VARCHAR(20),descripition VARCHAR(…

latex如何对一段文本进行加粗

在LaTeX中&#xff0c;你可以使用\textbf{}命令来对一段文本进行加粗。例如&#xff1a; \textbf{这是要加粗的文本}这将会把"这是要加粗的文本"这段文字显示为加粗。 如果你想要对整段文本进行加粗&#xff0c;你可以将整段文本都放在\textbf{}命令中&#xff0c;…

jsp学习

1.新建文件&#xff0c;创建web动态项目 2.项目点击next两下&#xff0c;点击勾选gentear&#xff0c;点击finish 3.文件成功后是有jsp文件 4.在webapp新建jsp文件 5. 使用模板html5建立文件 <% page language"java" contentType"text/html; charsetUTF-8&qu…

西瓜书机器学习AUC与ℓ-rank(loss)的联系理解以及证明(通俗易懂)

前言 在学习到这部分时&#xff0c;对 ℓ-rank 以及AUC的关系难以理解透彻&#xff0c;在网上看到其他博主也并未弄明白&#xff0c;大家大多写自己的理解&#xff0c;我希望您在看完这篇文章时能够深刻理解这二者的关系&#xff0c;如果我的理解有误&#xff0c;希望您在评论…

数据结构 之 二叉树

&#x1f389;欢迎大家观看AUGENSTERN_dc的文章(o゜▽゜)o☆✨✨ &#x1f389;感谢各位读者在百忙之中抽出时间来垂阅我的文章&#xff0c;我会尽我所能向的大家分享我的知识和经验&#x1f4d6; &#x1f389;希望我们在一篇篇的文章中能够共同进步&#xff01;&#xff01;&…

python网络爬虫实战教学——urllib的使用(1)

文章目录 专栏导读1、前言2、urllib的使用3、发送请求3.1 urlopen3.2 request 专栏导读 ✍ 作者简介&#xff1a;i阿极&#xff0c;CSDN 数据分析领域优质创作者&#xff0c;专注于分享python数据分析领域知识。 ✍ 本文录入于《python网络爬虫实战教学》&#xff0c;本专栏针对…

mysql 数据库 基本介绍

一 数据 &#xff08;一&#xff09;数据是什么 描述事物的符号记录 包括数字&#xff0c;文字、图形、图像、声音、档案记录气 以“记录”形式按统一的格式进行存储 &#xff08;二&#xff09;数据的分类 1&#xff0c;结构化的数据 即有固定格式和有限长度的数据。例…

01_Kubernetes基础

Kubernetes为什么叫K8S&#xff1a;因为K和S之间有8个字母 为什么需要K8S 对于云计算来说有自己的交互标准 Paas的下一代标准就是容器化&#xff0c;容器的集群化有没有很好的方案&#xff1f;有需求就会有产品&#xff0c;这个产品就叫做资源管理器。 首先是Apache的MESOS&…

Linux虚拟主机默认隐藏文件,如何开启显示

收到一位用户反馈他买了Hostease Linux虚拟主机&#xff0c;想要知道主机默认隐藏文件如何开启。据悉目前大部分主机提供商出售的Linux虚拟主机带的都是cPanel面板&#xff0c;因此开启隐藏文件操做需要进入到cPanel面板。操做步骤如下&#xff1a; 1.首先需要先登陆cPanel面板…

深度强化学习03价值学习

Q*类似于先知&#xff0c;知道动作的后果 价值学习是得到一个近似的价值函数

【Linux】Linux安装软件---软件包管理器 yum

主页&#xff1a;醋溜马桶圈-CSDN博客 专栏&#xff1a;Linux_醋溜马桶圈的博客-CSDN博客 gitee&#xff1a;mnxcc (mnxcc) - Gitee.com 目录 1.Linux中安装软件 1.1 源代码安装 1.2 rpm包安装 1.3 yum安装 1.3.1 举例 1.3.2 图示yum下载安装 2.Linux系统的生态 如何选…

如何构建Docker自定义镜像

说明&#xff1a;平常我们使用Docker运行各种容器&#xff0c;极大地方便了我们对开发应用的使用&#xff0c;如MySQL、Redis&#xff0c;以及各种中间件&#xff0c;使用时只要拉镜像&#xff0c;运行容器即可。本文介绍如何创建一个Demo&#xff0c;自定义构建一个镜像。 开…