Lesson 0003 · 约 15 分钟 · 可直接开工
目标不是「完美刷榜」,而是:跑通官方代码 / 对齐数据管线, 并能在进度会上用 3 分钟讲清问题—方法—结果—局限—下一步。
prepare_splits.py 生成 train/val/testTemporalIncidentImpactDecay 对应论文 Eq.14–16| 项 | 值 |
|---|---|
| 优化器 | Adam, lr=0.002, early stop patience=20 |
| batch | Alameda/CC=48, Orange=24 |
| 事件类型 / 描述 embedding | 6 类→8 维;30 描述→32 维 |
| ST 解耦块 | 5 层;节点/时间 emb dim=12 |
| TIID σ_t | 1.0 固定 |
| 任务 | 12→12(5min × 12 = 1h) |
| 硬件(论文) | V100 32GB |
文件:src/models/igstgnn.py → 类 TemporalIncidentImpactDecay。
逻辑与论文一一对应(你汇报时可投屏这几行):
调用链:forward 里先 icsf_module(...) 得到
incident_context,ST 骨干出 forecast_hidden,
再 tiid_module(forecast_hidden, incident_context)。
进度会更认「机制对齐」而不是「数字完全复现」。备选:
omega_tau=exp(-tau^2/(2*sigma^2)) 让冲击随预测步衰减,
再加法残差叠回 H_pred。不是特征拼接,是过程力迫。
| 问题 | 短答 |
|---|---|
| 和简单 concat 事件特征有何不同? | ICSF 有拓扑掩码+上下文注意力;TIID 显式衰减,不是静态通道。 |
| 为什么 σ 不学? | 即插即用、稳定;我们后续可学 σ_m / 分类型核作为扩展。 |
| 历史事件呢? | 论文假设已进近期流量;我们若要长时外生,需多事件年龄堆叠。 |
| 和 ConFormer 比? | 同属事件感知;ConFormer 偏事故图传播+GLN;IGSTGNN 偏广义事件+衰减残差。 |
| 和你方向的关系? | TIID 是「外生长窗演化 / 衰减核」样板;我们要补多模态与多事件力迫。 |
| 复现卡在数据? | Kaggle 单独发布;可先机制复现再对齐数字,不阻塞设计讨论。 |
| TIID 原型 | 你的扩展方向 |
|---|---|
| 固定高斯 σ=1 | 分类型可学习 σ_m / γ_m |
| 单新事件 | 多事件 age + horizon 累积 |
| 时间核为主 | 时间 × 空间 footprint 乘积 κ |
| 加法残差 forcing | 保持 forcing 哲学,可选 Need Gate |
| 结构化事件属性 | 后续接文本 / 多模态外生 |
进度会上如果被问「你做 TIID 干什么」,答: 借一个已被 KDD 验证的衰减残差接口,校准我们自己的力迫通道,而不是停在复现。
官方仓库 clone 后立刻能训练吗?
今晚最优先的验证是?
数据下不动时,汇报应强调?
代码与数据说明: fanlixiang/IGSTGNN · 数据 Kaggle data4igstgnn · 论文 arXiv:2602.02528