跳转至

Urban Incident Prediction with Graph Neural Networks: Integrating Government Ratings and Crowdsourced Reports

会议: AAAI 2026
arXiv: 2506.08740
代码: GitHub
领域: 时间序列 / 图神经网络
关键词: 城市事件预测, GNN, 众包数据偏差, 多视图学习, 潜在状态估计

一句话总结

提出 URBAN(多视图多输出GNN模型),联合利用稀疏但无偏的政府检查评级数据和密集但有偏的众包报告数据来预测城市事件的真实潜在状态,在纽约市960万+报告和100万+检查数据上验证,预测相关性比仅用报告数据高5.3倍。

研究背景与动机

领域现状:城市管理中,政府需要知道哪些街区存在坑洞、鼠患等事件以分配资源。GNN已被广泛用于城市时空预测。

现有痛点:两种数据源各有缺陷——(a) 政府检查评级(ratings)无偏但极度稀疏(如纽约街道每年仅检查一次);(b) 众包报告(reports)密集但存在系统性偏差(高收入社区报告率更高,相同情况下不同社区的报告倾向不同)。

核心矛盾:仅用报告数据训练会导致有偏预测,但仅用评级数据又面临稀疏性问题。两者之间存在根本的不可识别性(identifiability)问题:报告多是因为确实有问题,还是该社区更爱报告?

本文目标 (a) 联合两种数据源预测真实事件状态;(b) 量化报告中的人口统计偏差。

切入角度:将评级和报告建模为潜在真实状态的不同观测,通过GNN学习节点嵌入捕获空间相关性,通过类型嵌入捕获事件类型间的关联。

核心 idea:用多输出损失函数连接稀疏无偏评级和密集有偏报告两个视图,通过GNN同时估计真实状态和报告偏差。

方法详解

整体框架

输入:城市图(节点=Census tract街区,边=相邻关系)+ 人口统计特征 \(X_i\) + 稀疏评级 \(r_{ikt}\) + 密集报告 \(T_{ikt}\)。输出:所有节点/类型/时间的预测评级 \(\hat{r}_{ikt}\) 和报告概率 \(\hat{P}(T_{ikt})\),以及人口统计偏差系数 \(\theta_k\)

关键设计

  1. 双嵌入评级预测

    • 功能:预测节点 \(i\) 上类型 \(k\) 的真实检查评级
    • 核心思路:用 GCN 学习节点嵌入 \(e_n[i]\)(捕获空间相关性),同时学习类型嵌入 \(e_\tau[k]\)(捕获类型间关系),预测评级为内积 \(\hat{r}_{ikt} = e_n[i]^\top e_\tau[k]\)
    • 设计动机:类似矩阵分解的思路,节点嵌入和类型嵌入的内积自然地编码了"某地区某类事件的严重程度"
  2. 分情况报告概率建模(三种case)

    • 功能:根据评级数据的可用性,用不同策略建模报告概率
    • Case 1(有评级):\(\hat{P}(T_{ikt}) = \sigma(\alpha_k r_{ikt} + \theta_k^\top X_i)\),直接用真实评级
    • Case 2(该节点无评级但同类型有):用预测评级 \(\hat{r}_{ikt}\) 替代,报告系数 \([\alpha_k, \theta_k]\) 从有评级节点学得
    • Case 3(该类型完全无评级):使用所有有评级类型的平均报告系数 \([\bar\alpha, \bar\theta]\)
    • 设计动机:解决不可识别性问题——不能同时学习评级和报告系数,必须利用有标注数据锚定
  3. 多输出加权损失函数

    • 功能:联合优化评级预测和报告预测
    • \(\mathcal{L} = \mathcal{L}_{\text{unobs}} + \gamma_1 \mathcal{L}_{\text{obs}} + \gamma_2 \mathcal{L}_{\text{rating}} + \gamma_3 \mathcal{L}_{\text{reg}}\)
    • 包含:无评级点的报告BCE、有评级点的报告BCE、评级MSE、正则化防止预测评级过大
    • 设计动机:通过多输出损失连接两个数据视图,使模型在预测报告时隐式利用评级信息

损失函数 / 训练策略

四部分加权损失,权重 \(\gamma_1, \gamma_2, \gamma_3\) 通过超参搜索在验证集上最小化预测RMSE。时间划分:前18个月训练,后6个月测试。

实验关键数据

主实验(真实数据,纽约市)

模型 评级预测相关性 \(r\) 报告预测相关性 \(r\) 说明
URBAN (full) 0.53 0.24 联合两种数据
Reports-only 0.10 - 仅用报告数据
Ratings-only 依稀疏度而定 - 仅用评级数据
Gaussian Process 0.03 - 报告数据+GP
测试集报告直接预测评级 0.018 - 报告与真实评级天然弱相关

消融实验(半合成数据)

配置 评级预测相关性 说明
Full model 0.62 完整模型
Reports-only 0.33 掉 47%,无法恢复真实报告系数
Ratings-only (稀疏时) → 0 评级极稀疏时趋于随机
报告系数恢复 \(r \approx 1.0\) 准确恢复真实报告参数

关键发现

  • Full模型的评级预测是仅报告模型的5.3倍(0.53 vs 0.10),证实联合建模的价值
  • 当评级数据极度稀疏时,full模型仍能利用报告数据维持预测性能,而ratings-only趋于随机
  • 高收入社区条件性报告率更高\(\theta_{\text{income}} = 0.173\)),高人口密度、高学历、高比例白人社区也更倾向报告
  • 模型学到的评级在空间上高度相关,聚类后形成有意义的地理分区

亮点与洞察

  • 不可识别性的优雅解决:通过三种case分别处理有/无评级的情况,巧妙绕开了"评级-报告系数"的同时学习困难。这种分情况建模策略可迁移到其他存在标注稀疏+有偏代理的场景。
  • 实用性极强的数据集:960万众包报告+100万政府检查覆盖139种事件类型和2292个Census tract,且提供了完整的代码和数据。
  • 偏差量化的政策意义:定量证明了仅基于311报告的资源分配会系统性地歧视低收入/少数族裔社区。

局限与展望

  • 无时间动态建模:当前模型对每个节点/类型学习固定评级,未显式建模时间演变(虽作者讨论了可扩展到时空GNN)
  • 报告概率的logistic假设过于简单,真实报告生成过程远更复杂
  • 政府检查无偏性假设需要仔细验证——虽然作者过滤了响应性检查,但仍可能存在选择偏差
  • 可以引入注意力机制让不同类型共享更灵活的报告系数

相关工作与启发

  • vs Agostini et al. 2024 (AAAI):他们用贝叶斯空间模型纠正欠报,但仅处理少数事件类型且强假设;本文用GNN统一处理100+类型
  • vs Casey et al. 2018:他们发现DC市311报告不能预测鼠患检查结果;本文通过联合建模解决了这一问题
  • 这种"稀疏真值+密集有偏代理"的范式可扩展到疫情预测(搜索数据+官方报告)等领域

评分

  • 新颖性: ⭐⭐⭐⭐ 多视图GNN处理偏差数据的思路新颖实用
  • 实验充分度: ⭐⭐⭐⭐⭐ 真实和半合成数据都有,960万级数据规模,偏差分析深入
  • 写作质量: ⭐⭐⭐⭐ 问题描述清晰,但符号稍密
  • 价值: ⭐⭐⭐⭐ 对城市治理有直接影响,方法可推广到其他领域