赞
踩
IJCAI2023
蚂蚁集团&中山大学
Code
最近的一项工作建议采用半监督学习,通过使用来自相关下游任务的少量标记样本来解决无监督学习往往会产生噪声实例的问题。
SemiGNN [Wang et al., 2019] 学习具有分层注意力机制的多视图半监督图,用于欺诈检测。 GDN [Ding et al., 2021] 采用偏差损失来训练 GNN,并使用跨网络元学习算法进行少样本节点异常检测。 SemiADC [Meng et al., 2021] 同时探索时间序列特征相似性和基于结构的时间相关性。 TADDY [Liu et al., 2021] 构造一个节点编码来覆盖空间和时间知识,并利用唯一的transformer模型来捕获耦合的时空信息。
然而,这些方法基于动态图的离散时间快照,不太适合连续时间动态图,并且使用线性网络映射作为特征简单地将时间信息添加到模型中,而没有考虑周期性等时间属性。
动态图
G
=
(
V
,
ε
)
\mathcal{G}=(\mathcal{V},\Large{ \varepsilon})
G=(V,ε)
令
ε
=
{
δ
(
t
1
)
,
δ
(
t
2
)
,
…
,
δ
(
t
m
)
}
\Large{\varepsilon}=\left \{ \delta{(t_1)}, \delta{(t_2)},\dots ,\delta{(t_m)}\right \}
ε={δ(t1),δ(t2),…,δ(tm)}为生成时间网络的事件流,
m
m
m为观察到的事件数,事件为 δ(t) = (vi, vj, t, xij) 表示在时间
t
t
t 时从源节点$ v_i$ 到目标节点
v
j
v_j
vj 发生交互或链接,并关联边特征
x
i
j
x_{ij}
xij. 请注意,不同时间戳的同一对节点身份之间可能存在多个链接.
为了利用few-shot labeled data进行异常检测(anomaly detector),我们按照 [Ding et al., 2021] 构建了一个图偏差网络。然而,对于动态图的应用,我们首先使用基于时间编码信息的**时间图编码器(temporal graph encoder)来学习节点表示,并另外构造一个存储库(memory bank)**来动态记录正常和未标记样本的整体统计分布作为参考分数来计算偏差损失,通过少量标记样本优化模型。整个偏差网络是半监督的,大量未标记样本用作记忆库中的统计先验,少量标记数据用于计算偏差损失。
memory bank 异常分数计算基于大多数未标记数据是正常样本的假设,产生正态样本的统计分布,作为Reference Score
受到deviation networks(利用高斯先验和基于Z-Score的偏差损失来直接优化异常分数的学习)最近成功的启发 ,我们采用偏差损失作为我们的主要学习目标,以强制模型在异常得分空间中分离出正常节点和特征显着偏离正常节点的异常节点。与他们的方法不同,我们使用memory bank来产生正态样本的统计分布,而不是使用标准正态分布作为参考分数。这考虑到了两个主要因素,一是真实异常分数生成的统计分布可以更好地展示不同数据集的属性,二是在动态图中,数据分布可能会因为重要的实际情况而波动更显着。节假日或周期性事件,因此不适合使用简单的标准正态分布作为正态样本的参考分布。
算reference score(均值和标准差)的时候,引入时间衰减的影响,使用时间戳
t
t
t和异常分数存储时间
t
i
t_i
ti之间的相对时间跨度来计算每个统计示例的权重项
w
i
(
t
)
=
1
l
n
(
t
−
t
i
+
1
)
+
1
w_i(t) = \frac{1}{ ln(t−t_i+1)+1}
wi(t)=ln(t−ti+1)+11(也就是时间越近权重越高)
偏差损失:也就是m(异常分数)和|dev|(偏差分数)越接近越是正常;但是问题在于:如果异常节点(y=1)的偏差分数如果远大于m,对比损失也为0. (好像dev会小于m).总之,这么计算可以保证越离群的点,deviation loss越大.
和我一样第一次见偏差网络的话可以看DevNet半监督异常识别模型简单学习一下
为了充分利用未标记样本的潜力,我们根据现有的偏差分数
d
e
v
(
v
i
,
t
)
dev(v_i, t)
dev(vi,t) 为每个样本生成一个伪标签
y
^
i
(
t
)
\hat{y}_i(t)
y^i(t),并参与图编码器网络的训练。在这里,我们设计了一个有监督对比学习任务,使得偏差分数越接近的节点也具有更相似的节点表示,而偏差分数差异较大的节点在其对应的表示中具有更大的差异。
该任务的目标与我们的偏差损失一致,这使得正常样本和异常样本之间的差异在表示空间和异常得分空间上都存在偏差。
对于单个样本
v
i
v_i
vi:
(投影网络将表征向量
x
x
x映射成的最终向量
z
z
z)该损失也就是达到拉近所有正样本对之间的距离,推远其他负样本对的目的.
改变了丢弃率
p
p
p,即训练集中随机删除节点标签的比率,从 0.1 到 0.9,步长为 0.2.
值得注意的是,我们观察到当丢弃率为 0.3 时,SAD 在两个数据集上都实现了最佳性能。The result indicates that当前图数据集中存在大量冗余或噪声信息,很容易导致模型训练过拟合。通过丢弃这部分标签信息,使用伪标签数据参与训练,反而提高了模型的性能。其他方法在下降比率为 0.5 时性能显着下降。尽管如此,SAD 在两个数据集上仍然大幅优于所有基线,并且即使对于特定的大下降率(例如 0.7 和 0.9),下游性能也没有显着牺牲。
总的来说,我们认为模型的性能改进来自两个原因:
看起来,偏差网络起了最大效果,
再加上考虑动态变化(动态图).
本文所用图偏差网络
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/366302?site
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。