4. 时序图神经网络核心

在交易团伙识别任务中,静态图模型只能刻画账户之间“是否曾经转账”的关系,却无法回答“什么时候转、以什么节奏转、关系是否已经失效”。时序图神经网络(Temporal Graph Neural Network, TGNN)正是为解决这类动态关系建模问题而设计的。本章围绕四个核心构件展开:动态图表示、时序图卷积、时序图注意力,以及RNN与GNN的融合方法。

一、动态图表示:把时间写进图结构里

动态图表示的目标,是让每个节点、每条边都携带时间语义。常见做法有三类:

  • 离散快照图:按固定窗口(如1小时、1天)切分交易流水,每个窗口生成一张静态图。优点是兼容现有GNN,缺点是窗口边界会割裂真实事件。
  • 连续时间事件图:把每笔交易视为带时间戳的事件边 (u, v, t, amount, type),节点特征随时间演化。它更贴近交易流水的真实形态。
  • 时间增强邻接:在邻接矩阵中引入时间衰减权重,例如 w = exp(-λ·(t_now - t_edge)),使久远关系自动弱化。

在团伙识别中,连续时间事件图通常更合适,因为团伙往往通过“短时间高频互转”形成资金闭环,时间间隔本身就是强特征。

动态图表示的关键不是“加一个时间戳”,而是让消息传递、聚合和更新都感知时间顺序。否则模型仍会把三天前的转账和刚刚发生的转账同等对待。

二、时序图卷积:在时间轴上传播消息

时序图卷积(Temporal Graph Convolution)在经典GCN基础上引入时间维度。其核心流程可概括为:

  1. 对每个节点,按时间窗口采样其邻居事件;
  2. 对邻居特征做时间加权聚合;
  3. 将聚合结果与节点自身历史状态融合;
  4. 输出当前时刻的节点表示,用于下游分类或异常评分。

一个简化的时间加权聚合公式可写为:

h_v^(t) = σ( W · [ h_v^(t-1) , Σ_{u∈N(v,t)} α(u,t) · h_u^(t) ] )
α(u,t) = softmax( exp(-λ·(t - t_uv)) · sim(h_v, h_u) )

其中 λ 控制时间衰减速度,sim 表示节点相似度。这样,近期且行为相似的邻居会获得更高权重,符合“团伙成员近期频繁互动”的业务直觉。

三、时序图注意力:让模型自己决定看谁

时序图注意力(Temporal Graph Attention)进一步把“时间权重”和“邻居重要性”交给注意力机制学习。与普通GAT不同,它同时考虑:

  • 内容注意力:当前节点与邻居的特征相似度;
  • 时间注意力:事件发生时间与当前时刻的距离;
  • 结构注意力:邻居在历史子图中的角色(如中介、汇聚点)。

在团伙识别中,时间注意力尤其重要。例如,某账户在凌晨2点向多个新账户小额转账,虽然金额不大,但时间集中、对象陌生,注意力分数会显著升高,从而被模型捕捉为可疑模式。

方法 时间建模方式 优点 局限
快照GCN 离散窗口 实现简单,易并行 窗口边界割裂事件
时间加权GCN 指数衰减 连续、可解释 衰减系数需调参
时序图注意力 注意力学习 自适应强,精度高 计算开销较大
RNN+GNN 序列状态更新 擅长长程依赖 训练不稳定,易遗忘

四、RNN与GNN融合:兼顾空间与时间依赖

GNN擅长聚合空间邻居信息,RNN擅长建模时间序列。两者融合的典型架构是“GNN编码 + RNN演化”:

for t in range(T):
    # 1. 当前时刻图卷积
    h_graph = GNN(x[t], edge_index[t], edge_time[t])
    # 2. 与历史状态融合
    h_state, _ = GRU(h_graph, h_state)
    # 3. 输出当前节点表示
    z[t] = MLP(h_state)

这种结构在交易团伙识别中非常实用:GNN负责发现“谁和谁有关联”,GRU负责判断“这种关联是否在持续、是否在加速”。例如,一个账户过去三个月只有零星交易,最近一周突然与多个高风险账户形成密集环路,RNN会捕捉到状态突变,GNN会捕捉到环路结构,两者结合即可输出高团伙风险分。

实战建议:在融合时,优先使用GRU而非LSTM,因为交易序列通常不会特别长,GRU参数更少、训练更稳;同时可对GNN输出做LayerNorm,缓解不同时间步分布漂移。

五、案例与复盘:一次团伙识别的完整链路

假设我们要识别一个“分散转入、集中转出”的团伙。数据为某支付平台7天流水,节点为账户,边为转账事件。

  1. 动态图构建:按小时切分,生成168个快照,每个快照保留边的时间戳和金额。
  2. 时序图卷积:对每个账户聚合近6小时邻居,时间衰减系数设为0.1。
  3. 时序图注意力:加入时间注意力头,捕捉凌晨集中转账模式。
  4. RNN融合:用GRU沿168个时间步更新账户状态。
  5. 输出:对每个账户打分,阈值以上进入人工审核。

复盘时常见误区有三点:

  • 误区一:只做静态图。团伙关系是动态形成的,静态图会把已失效关系当成当前关系。
  • 误区二:时间衰减系数拍脑袋。λ过大导致模型只看最近几分钟,λ过小则退化为静态图,应通过验证集搜索。
  • 误区三:忽略负采样偏差。交易图中正常交易远多于可疑交易,训练时需按时间做负采样,避免模型学到“时间越近越可疑”的伪规律。
时序图模型上线后必须监控“时间漂移”:团伙作案手法会变化,昨天有效的注意力模式今天可能失效。建议每周用最近数据做一次增量微调,并保留人工审核反馈闭环。

掌握动态图表示、时序图卷积、时序图注意力和RNN-GNN融合这四块,就具备了构建交易团伙识别时序模型的核心能力。下一步的关键,是把这些组件落到真实流水上,用业务指标而非单纯AUC来衡量效果。