跳转至

HierLoc: Hyperbolic Entity Embeddings for Hierarchical Visual Geolocation

会议: ICLR 2026
arXiv: 2601.23064
代码: 无
领域: 扩散模型
关键词: 视觉地理定位, 双曲嵌入, 层次实体, 对比学习, 检索

一句话总结

提出HierLoc,将地理定位重新建模为双曲空间中的图像-实体对齐问题,用24万个地理实体嵌入替代500万+图像嵌入,在OSV5M上降低19.5%平均测地误差并将子区域准确率提升43%。

研究背景与动机

视觉地理定位(从图像内容推断拍摄地点)是一个跨尺度的全球挑战。现有方法分为检索式(需索引百万图像嵌入)、分类式(网格分类忽略地理连续性)和生成式(扩散模型在精细尺度力不从心)。核心矛盾:地理本身具有层次结构(国家→区域→子区域→城市),实体数量从国家到城市呈指数增长,但欧氏距离仅线性增长,导致深层实体拥挤、判别力下降。双曲空间天然提供指数级体积增长,完美匹配这种层次分支结构。HierLoc的创新切入点是将地理定位从"图像到图像检索"转为"图像到实体对齐"。

方法详解

整体框架

HierLoc 要解决的是全球尺度的视觉地理定位,但它换了个角度:不再把定位看成"图像到图像的检索",而是"图像到地理实体的对齐"。整条流水线是这样转的——一张待定位图像先经冻结的 DINOv3 编码,再映射到 Lorentz 双曲流形;与此同时,训练元数据被压缩成约 24 万个分层地理实体(国家→区域→子区域→城市),每个实体用图像、文本、坐标三模态特征预先嵌入到同一个双曲空间。图像与四级层次实体之间用跨模态注意力做对齐,整套表示用带地理加权的双曲对比损失 GWH-InfoNCE 预训练好。推理时不再扫描百万级图像库,而是在层次实体树上用 beam search 自上而下逐级细化,最后落到城市级实体。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    IMG["待定位图像"] --> ENC["DINOv3 编码(冻结)<br/>+ Lorentz 双曲映射"]
    META["训练元数据"] --> HIER["层次实体构建与嵌入<br/>国→区→子区→城<br/>图像/文本/坐标三模态"]
    ENC --> ATT["跨模态注意力<br/>仅更新图像、实体不变"]
    HIER --> ATT
    ATT --> LOSS["GWH-InfoNCE<br/>地理加权双曲对比损失"]
    LOSS -->|预训练| BEAM["beam search<br/>层次树逐级细化"]
    HIER --> BEAM
    BEAM --> OUT["城市级定位结果"]

关键设计

1. 层次实体构建与嵌入:把百万图像库压成判别原型

检索式方法的痛点是要索引数百万图像嵌入、搜索代价随库规模线性增长。HierLoc 直接把训练集的地理元数据聚合成约 24 万个分层实体(233 个国家、4946 个区域、29214 个子区域、209894 个城市),用实体原型取代海量图像样本。每个实体关联三模态特征:图像均值嵌入 \(\text{Img}_i\)(该实体下所有训练图像的 DINOv3 特征取均值)、文本嵌入 \(\text{Text}_i\)(用 CLIP 编码实体名)、坐标嵌入 \(\text{Coords}_i\)(用 SphereM+ 编码经纬度)。锚点嵌入 \(A_i\) 先在原点切空间随机初始化,再映射回双曲面,最终实体嵌入为 \(H_i = \exp_O(\log_0(A_i) + \alpha_{\text{node}} \Delta_i)\)。均值嵌入做法虽朴素,却在实体级别产生稳定、可判别的原型,把"图像到图像"的检索复杂度从 \(O(N)\) 降成层次遍历的亚线性。

2. 跨模态注意力:让图像去对齐层次实体,但只更新图像一侧

有了实体原型,还需要把图像特征对齐到正确的层次实体上。HierLoc 在切空间里做多头注意力:以图像特征为 query、实体嵌入为 key/value,四个层次级别各自独立跑 8 头注意力,再把四级的上下文拼接、经 MLP 融合后加回原始图像特征。关键之处在于这是不对称更新——注意力只更新图像流,实体嵌入始终保持不变。这样做是为了防止实体嵌入过拟合到训练图像,从而保住实体原型的泛化性,让它在面对未见图像时仍是可靠的检索目标。

3. GWH-InfoNCE 损失:把地理远近写进负样本权重

普通 InfoNCE 把所有负样本一视同仁,但在地理定位里,离正样本越近的负样本其实越难区分、判别价值越高。GWH-InfoNCE 用 haversine 公式算出每个负样本与正样本之间的大圆距离 \(g_{\ell,k}\),据此给负样本加权:

\[w_{\ell,k} = 1 + \lambda \exp(-g_{\ell,k}/\sigma)\]

地理上邻近的负样本权重更大,被推得更开。单个层次级别的损失为

\[\mathcal{L}_\ell = -\log \frac{\exp(-d_\ell^+/\tau)}{\exp(-d_\ell^+/\tau) + \sum_k w_{\ell,k} \exp(-d_{\ell,k}^-/\tau)}\]

其中 \(d\) 是双曲空间中的距离。总损失跨四个层次级别聚合:\(\mathcal{L} = \sum_{\ell} \beta_\ell \mathcal{L}_\ell\)。这套加权让模型在精细尺度(子区域、城市)上获得更强的判别力——子区域准确率提升 43% 正是这一项的直接收益。

损失函数 / 训练策略

  • 欧式参数用AdamW,流形参数用RiemannianAdam
  • 批大小16,学习率2×10⁻⁴,6×L40S GPU训练5 epoch(~60小时)
  • 推理用beam search(beam宽度10)在实体层次上逐级细化

实验关键数据

主实验(OSV5M基准)

方法 GeoScore↑ 距离(km)↓ 国家% 区域% 子区域% 城市%
SC Retrieval 3597 1386 73.4 45.8 28.4 19.9
LocDiff - - 77.0 46.3 - 11.0
HierLoc(DINOV3) 3963 861 82.9 55.0 40.7 23.3

消融实验(各组件贡献)

配置 GeoScore 说明
欧式空间 基线 深层实体拥挤
+双曲空间 提升 指数体积增长
+GWH-InfoNCE 最优 地理感知负样本加权
Laplace vs Gaussian衰减 Laplace更优 衰减核的选择有影响

关键发现

  • 国家准确率+8.8%, 区域+20.1%, 子区域+43.2%, 城市+16.8%
  • 平均测地误差降低19.5%(1386km→861km vs SC Retrieval)
  • 从~960万图像记录压缩到24万实体,搜索空间大幅缩减
  • DINOV3编码器优于ViT-L/14

亮点与洞察

  • "图像到实体对齐"将检索复杂度从O(N)降为层次遍历的亚线性
  • GWH-InfoNCE中地理距离加权负样本的设计直觉精妙——地理上近的才是强负样本
  • 不对称跨模态注意力(仅更新图像、保持实体不变)防止过拟合

局限与展望

  • 城市级实体使用图像均值可能丢失视觉多样性信息
  • beam search宽度固定为10,自适应策略可能更好
  • 需要预先构建层次结构,对缺少行政区划数据的地区可能受限

相关工作与启发

  • vs PIGEON: 基于大规模分类+语义融合,但坍塌为单级输出丢失层次信号
  • vs GeoCLIP: 直接将坐标作为预测目标,不利用层次结构

评分

  • 新颖性: ⭐⭐⭐⭐⭐ 首次将双曲嵌入用于全球层次地理定位
  • 实验充分度: ⭐⭐⭐⭐⭐ OSV5M全面评估+多个外部基准验证
  • 写作质量: ⭐⭐⭐⭐ 方法描述详细,数学推导清晰
  • 价值: ⭐⭐⭐⭐⭐ 几何感知层次嵌入对其他层次结构任务有启发意义