SNIPER模型与论文分析
本文梳理 SNIPER (Spatio-temporal evolutioNary model for learning Intricate feature interactions to Predict traffic anomalies) 模型的核心架构与设计逻辑。
该模型主要解决交通异常预测(Traffic Anomaly Prediction)中的两大痛点:一是影响因素极其复杂(多源异构数据),二是数据极度不平衡(事故属于稀有事件)。
背景
-
实验条件是否满足
-
必要性
1. 任务背景
多传感器技术,产生大量多变量时间序列数据(即多个传感器同时采集的、随时间变化的连续数据,如医疗中的脑电信号、活动识别中的加速度计数据)。随着物联网(IoT)、可穿戴设备、工业物联网(IIoT)的发展,多传感器技术已成为采集物理世界数据的核心手段,广泛应用于三大关键领域,且每个领域都存在强烈的异常检测需求。
机动车碰撞是 15-29 岁人群的首要死因(WHO 统计),全球每年超 5000 万人因碰撞受伤,部分导致残疾。准确预测交通异常能提前预警,降低事故风险,提升道路安全
2. 任务目标
有监督场景(训练数据有标注) 精准识别多传感器时间序列中的异常
提升交通碰撞预测的准确性(AUC-PR、AUC-ROC、F1 分数、准确率)
3.挑战
任务共性挑战
-
数据不平衡:异常事件在时空上极度稀疏,数量太少。容易过度拟合正常事件,难以学习异常模式
-
静态-动态特征的联合建模:
静态特征(如POI)为固定的
动态特征(事件交互)为时变的
二者依赖关系复杂,需要融合机制 -
多视角空间依赖捕捉:
网格(也就是某个地区)间的影响不仅来自地理邻近,还来自功能相似、碰撞历史关联等,单一空间图无法全面覆盖;(另类的数据融合问题)
-
动态演化的过平滑
动态特征随时间更新时,易因正常事件的累积导致异常与正常事件的特征趋同,降低模型区分度;
过平滑: -
训练效率与时间依赖的平衡
动态演化具有强时间依赖,传统批处理会破坏时序关系,而单样本训练效率极低
传统模型不足
- 仅关注静态特征(如 POI、历史流量),忽略事件间的动态演化交互;
- 未有效处理数据不平衡,难以捕捉稀有异常事件的内在模式;(最难的一点)
- 空间依赖建模单一,未考虑多视角(功能相似、碰撞历史、交通状况)的网格交互;
- 动态特征演化易出现「过平滑」,导致正常与异常事件的特征差异被掩盖。
模型总览
分为5部分:
1.时空信息编码器:
2.静态嵌入:
3.动态演化嵌入:周围邻居中的特征
4.空间相互影响表示学习
5.特征融合与损失函数
数据集
纽约市和芝加哥的真实时空数据集
构成:
- 时空数据:
城市网格划分:
按经纬度将地图中排除公园湖泊等无碰撞区域
时间切片:
将时间以小时为单位分割 - 特征数据:
- 静态特征:POI(车库,学校,商业区等),交通设施(公交站,高速,信号灯),天气(降雨,积雪,温度)
- 动态数据:交通流量(出租车上下车位置,时间),历史碰撞事件
- 标签:每一个“网格-时间切片”的二元标签(1=有碰撞异常,0=无异常)
数据预处理
-
归一化:
用 Max-Min 归一化将所有特征(如 POI 数量、交通流量)映射到 [0,1] 区间,避免因特征量级差异,导致模型偏向量级大的特征 -
特征构造:
计算 差异特征D_t^l
对每个网格,用当前时刻的静态特征(如当前交通流量)减去 “过去 5 个正常时刻的特征均值”,公式为:
(Otl为网格l在t时刻的原始特征,n=5为历史正常样本数) (O_t^l为网格 l 在 t 时刻的原始特征,n=5 为历史正常样本数) (Otl为网格l在t时刻的原始特征,n=5为历史正常样本数) -
数据集划分
按 “时间顺序” 将数据分为训练集(60%)、验证集(20%)、测试集(20%),而非随机划分 —— 避免未来数据泄露到历史数据中(如用 2016 年 12 月数据训练,预测 2015 年数据,不符合真实场景)
数据集链接:
https://www.nyc.gov/site/tlc/about/tlc-trip-record-data.page
时空信息编码器
将 “位置 / 时间” 转化为可计算向量:
解决 “空间位置” 和 “时间戳” 无法直接输入模型的问题,通过编码保留 “相邻网格的空间关联性” 和 “事件的时间演化性”,为后续特征融合打基础
(1.非线性 2.周期性 3.语义信息)
- 网格空间编码器(处理 “空间位置”)
输入:网格的经纬度坐标(纬度l_lat,经度l_lon);
编码逻辑:用正弦 / 余弦函数设计二维位置编码,确保 “相邻网格的编码向量具有线性相关性”,公式分两步:
![[Pasted image 20260306215906.png]]
创建了一个几何衰减的频率序列,更好的捕捉微小/宏观变化特征:
纬度公式中k取小值,可捕捉微小特征,取大值捕捉宏观特征
D表示维度,k表示采集频率
设计意图:
- 模型能识别 “固定规律的差值 = 时空专属”。 利用sin,cos
- 模型能通过 “相似度阈值” 快速识别相邻,适配 GCN / 注意力机制.
解决了1.非线性 2.周期性
总结
1. 核心机制:动态演化记忆 (Evolutionary Learning)
这是 SNIPER 模型的“灵魂”,旨在解决稀有事件被海量正常数据淹没(Over-smoothing)的问题。
- Update (更新) —— 记住事故:
- 触发条件:当网格内发生事故时。
- 操作:将当前的静态特征(XsX^sXs,包含事故现场的天气、POI等具体信息)融合进动态嵌入中。
- 目的:捕捉稀有事故的特定模式,形成“事故指纹”。
- Decay (衰减) —— 遗忘风险:
- 触发条件:当网格内无事故发生时。
- 操作:不引入新的静态特征,仅通过指数衰减函数随时间推移降低风险权重。
- 目的:防止模型在处理海量正常数据时,特征变得趋同(即避免“过平滑”),保护对稀有事故的记忆。
2. 空间架构:多图卷积网络 (Multi-GCN)
模型认为区域间的关联不仅仅是地理上的“邻居”,因此构建了三个维度的“朋友圈”:
| 图结构名称 | 关联依据 | 作用逻辑 |
|---|---|---|
| 功能相似图 (GFG_FGF) | POI 分布 (如学校、商场) | 捕捉功能属性相似区域的共性风险 |
| 事故关联图 (GAG_AGA) | 历史事故记录 (原因、伤亡) | 捕捉“同病相怜”的风险传播模式 |
| 路况设施图 (GTG_TGT) | 交通设施 (高速、公交站) | 捕捉道路基础设施对流量的影响 |
- 动态注意力机制:模型通过 SP block(空间注意力模块)动态计算不同邻居的权重,决定在特定时刻(如早高峰学校区)哪个“圈子”的信息最重要。
3. 特征工程:时空编码与偏差计算
3.1 空间编码 (Spatial Encoding)
- 网格化:将城市划分为 i×ji \times ji×j 网格。
- 正弦/余弦编码:利用经纬度的正弦/余弦函数生成向量,而非简单编号。
- 优势:捕捉相对距离的线性变换特性,具备平移不变性(无论在地图何处,相同的地理距离对应相同的编码变化规律)。
3.2 时间编码 (Temporal Encoding)
- 相对时间:计算当前时间 ttt 与初始时间 t1t_1t1 的差值,而非使用绝对时间戳。
- 优势:更好地捕捉事件间的动态内在模式(如“事故后一小时”比“周三九点”更具预测价值)。
3.3 流量偏差特征 (Grid Difference)
- 公式:Dtl=Otl−1n∑i=1nO(ti,nor)lD_{tl} = O_{tl} - \frac{1}{n}\sum_{i=1}^{n} O_{(t_i, nor)l}Dtl=Otl−n1∑i=1nO(ti,nor)l
- 逻辑:当前流量减去过去 nnn 个正常时刻的平均流量。
- 价值:过滤掉长期拥堵(如施工)等背景噪声,专注于捕捉突发的异常变化。
4. 损失函数:对抗“懒惰”模型
由于事故数据极少,模型容易通过“永远预测无事故”来获得高准确率。为此,SNIPER 设计了双重损失函数:
- 改进的焦距损失 (LFL_FLF):
- 降低易分类样本(大量正常数据)的权重,强制模型关注难分类的稀有事故样本。
- 动态损失 (LDL_DLD):
- 核心逻辑:仅在发生事故(Update)时生效。
- 惩罚机制:如果发生事故时,动态特征的变化量太小(即模型反应迟钝,特征没变),则施加惩罚。
- 目的:防止特征过平滑,确保事故特征在数学空间中能“脱颖而出”。
5. 最终预测流程
- 特征融合:将静态嵌入 (XsX^sXs) 和动态嵌入 (XdX^dXd) 拼接。
- 时序建模:通过 FC-LSTM 层聚合时空依赖,捕捉非线性关系。
- 输出:经过 Sigmoid 激活,输出下一时刻发生事故的概率 (Y^t+1\hat{Y}_{t+1}Y^t+1)。
- 关于 Update 与 Decay 的设计:Decay 阶段之所以不包含静态特征,是为了避免海量的正常数据不断修改模型的记忆,导致所有特征变得一样(过平滑)。只有在发生事故时(Update),才允许注入新的特征信息,从而保护了稀有事件的特征。
- 关于位置编码:利用三角函数处理经纬度,不仅解决了数值大小的问题,更重要的是让模型理解了“相对位置”的概念,这在处理城市边界或大范围区域时非常关键。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)