| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 【读论文】Graph Neural Network-Based Anomaly Detection in Multivariate Time Series -> 正文阅读 |
|
[人工智能]【读论文】Graph Neural Network-Based Anomaly Detection in Multivariate Time Series |
目录1. 这篇文章的主要研究内容Graph Neural Network-Based Anomaly Detection in Multivariate Time Series:基于图神经网络的多元时间序列异常检测 目标:为多元时间序列数据开发特定的方法,明确地捕获传感器之间的关系图。 现有的方法存在的缺陷:现有的方法没有明确地学习变量之间现有关系的结构,或使用它们来预测时间序列的预期行为。 针对该缺陷做出的改进:为了充分利用多元时间序列中传感器之间的复杂关系,利用图神经网络(GNNs)来学习传感器之间的关系图。
提出的方法:图偏差网络(Graph Deviation Network, GDN),该方法学习传感器之间的关系图,并从这些模式中检测偏差。该方法包括四个主要部分:
2. 图偏差网络(Graph Deviation Network, GDN)1. Problem Statement训练数据:
N
N
N 个传感器 在
T
t
r
a
i
n
T_{train}
Ttrain? 这段时间内的数据:
s
t
r
a
i
n
=
[
s
t
r
a
i
n
(
1
)
,
s
t
r
a
i
n
(
2
)
,
.
.
.
,
s
t
r
a
i
n
(
T
t
r
a
i
n
)
]
s_{train} = [s^{(1)}_{train} , s^{(2)}_{train} , ... , s^{(T_{train})}_{train}]
strain?=[strain(1)?,strain(2)?,...,strain(Ttrain?)?] ,其中,
s
t
r
a
i
n
(
t
)
s^{(t)}_{train}
strain(t)? 是一个
N
N
N维向量,表示在
t
t
t 时刻
N
N
N个传感器的值。 我们的目标是能够检测到测试数据中的异常,测试数据表示为: s t r a i n = [ s t e s t ( 1 ) , s t e s t ( 2 ) , . . . , s t e s t ( T t e s t ) ] s_{train} = [s^{(1)}_{test} , s^{(2)}_{test} , ... , s^{(T_{test})}_{test}] strain?=[stest(1)?,stest(2)?,...,stest(Ttest?)?] 算法的输出是一组大小为
T
t
e
s
t
T_{test}
Ttest? 的二进制标签,这组标签指示了在每个时刻
t
t
t 是否发生异常。
a
(
t
)
∈
{
0
,
1
}
a(t)\in\{0,1\}
a(t)∈{0,1},其中
a
(
t
)
=
1
a(t)=1
a(t)=1 表示
t
t
t 时刻发生了异常。 2. Overview该方法包括四个主要部分:
(1)Sensor Embedding,传感器嵌入为每个传感器引入一个嵌入向量来表示其特征: v i ∈ R d v_i \in R^d vi?∈Rd , for i ∈ { 1 , 2 , . . . , N } i \in \{1,2,...,N\} i∈{1,2,...,N} 。 这些嵌入向量
v
i
v_i
vi? 之间的相似性表示行为的相似性。因此,具有相似嵌入值的传感器之间应该有很高的相关性。 (2)Graph Structure Learning,图结构学习图结构学习将学习一个加权有向图,其节点表示传感器,边表示传感器之间的依赖关系。 然后选择前
k
k
k个这样的归一化点积,
k
k
k的值可以由用户根据所需的稀疏程度来选择。
(3) Graph Attention-Based Forecasting,基于图注意力的预测在时刻 t t t,我们基于历史时间序列数据上大小为 w w w的滑动窗口,将模型的输入定义为 x ( t ) : = [ s ( t ? w ) , s ( t ? w + 1 ) , . . . , s ( t ? 1 ) ] \pmb{x}^{(t)} := [\pmb{s^{(t-w)}}, \pmb{s^{(t-w+1)}}, ... , \pmb{s^{(t-1)}}] xx(t):=[s(t?w)s(t?w),s(t?w+1)s(t?w+1),...,s(t?1)s(t?1)] 。模型需要预测的目标输出是当前时刻的传感器数据,即 s ( t ) s^{(t)} s(t) 。 为了捕获传感器的不同行为,我们引入了一种基于图注意的特征提取器,基于学习到的图结构将节点信息与相邻节点融合:
对于每个
z
i
(
t
)
\pmb{z}^{(t)}_i
zzi(t)? ,我们将其与对应的嵌入向量
v
i
\pmb{v}_i
vvi? 进行元素相乘(记为
°
\circ
°),并将所有节点的计算结果作为输出为N维的全连接层的输入,以预测
t
t
t时刻传感器值的矢量
s
(
t
)
\pmb{s}^{(t)}
ss(t) : (4)Graph Deviation Scoring,图偏差得分考虑到学习到的关系,我们希望检测和解释偏离这些关系的异常。 传感器 i i i在 t t t时刻预测行为与观察到的行为之间的偏差: E r r i ( t ) = ∣ s i ( t ) ? s ^ ( t ) ∣ Err_i(t) = | s^{(t)}_i - \widehat{s}^{(t)} | Erri?(t)=∣si(t)??s (t)∣ 不同的传感器的偏差可能有不同的尺度,因此将每个传感器的偏差做归一化处理: a i ( t ) = E r r i ( t ) ? μ ~ i σ ~ i a_i(t) = \frac{Err_i(t) - \widetilde{\mu}_i}{\widetilde{\sigma}_i} ai?(t)=σ i?Erri?(t)?μ ?i?? , 其中 μ ~ i \widetilde{\mu}_i μ ?i? 是 E r r i ( t ) Err_i(t) Erri?(t)的中位数, σ ~ i \widetilde{\sigma}_i σ i? 是 E r r i ( t ) Err_i(t) Erri?(t) 的四分位距(inter-quartile range, IQR)。
为了计算
t
t
t时刻的整体异常情况,我们使用
m
a
x
max
max函数对传感器进行聚合(因为异常只会影响一小部分传感器,甚至是单个传感器): |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/30 14:04:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |