HELIX: Hybrid Encoding with Learnable Identity and Cross-dimensional Synthesis for Time Series Imputation¶
会议: ICML 2026
arXiv: 2605.02278
代码: https://github.com/milaogou/HELIX (已集成进 PyPOTS)
领域: 时间序列 / 缺失值插补 / Transformer
关键词: 特征身份嵌入, 时间序列插补, 时空 Transformer, 双螺旋编码
一句话总结¶
给每个特征学一个"身份嵌入"作为持久语义锚点,配合时间-特征双螺旋注意力,在 5 个公开多变量时序数据集 21 个缺失场景上全部拿下第一,比次优的 ImputeFormer 在 ETT-h1 等数据集上多 25% 以上的 MAE 降幅。
研究背景与动机¶
领域现状:多变量时间序列插补是医疗、气象、交通等下游任务的关键预处理,主流方法分三类:RNN 类 (BRITS, GRU-D)、Transformer 类 (SAITS, ImputeFormer)、扩散模型类 (CSDI, PriSTI)。最近 GNN 方法 (GRIN, SPIN) 也试图显式建模特征间依赖。
现有痛点:(1) 现有注意力方法每层都"重新发现"特征间关系,缺乏跨层一致的锚点——导致重度缺失时特征关系崩塌;(2) GNN 方法依赖预定义图拓扑,假设特征同质化(比如都是同类型空间传感器),无法处理特征类型混合的场景;(3) 学习邻接矩阵开销 \(O(F^2)\) 且仍受数据缺失影响;(4) Crossformer 等双向注意力方法仅靠数值 patch 做 embedding,值全缺时跨特征注意力直接退化。
核心矛盾:要做"跨特征推理",模型需要每个 token 同时具备时间和特征双重身份;但现有方案只能在一个轴上有持久锚点(要么时间 PE,要么图拓扑),另一个轴必须从数值动态推断——当数值缺失时整个推断就失效了。
本文目标:(1) 给每个特征一个跨层稳定的语义身份,(2) 设计时间和特征双向充分交互的编码结构,(3) 即使在重度缺失下也能保持稳定的跨特征推理。
切入角度:作者把 token embedding 当成 NLP 里的 soft prompt——每个特征学一个 \(d_f\) 维向量 \(f_i\) 当作"特征专用提示",无论该位置数值是否缺失,特征身份信息始终存在。再设计一种"先并行后交叉"的双螺旋注意力把时间和特征维度交替处理。
核心 idea:把每个 \((t, i)\) 位置的 embedding 写成 \(e_{t,i} = [\tilde x_{t,i}; \text{PE}(t); f_i; m_{t,i}]\),其中 \(f_i\) 是可学习身份嵌入;再用 \(L\) 层"双螺旋"编码(每层先并行做时间和特征注意力,再交叉做特征和时间注意力)让两个维度信息充分流转。
方法详解¶
整体框架¶
输入 \(\tilde X \in \mathbb{R}^{T \times F}\) 和缺失掩码 \(M\),每个位置拼出 \(e_{t,i} \in \mathbb{R}^{d_e}\)(值 + 正弦 PE + 身份 + mask),过线性层投影到隐维 \(d\) 得到 \(H^{(0)}\);接 \(L\) 个 Hybrid Encoding Layer,每层输出 4 个分支 \(H_T^{(l)}, H_F^{(l)}, H_{TF}^{(l)}, H_{FT}^{(l)}\) 平均得 \(H^{(l)}\);最后做 multi-level fusion \(\tilde H = \frac{1}{1+4L}(H^{(0)} + \sum_l \text{分支总和})\),过 LayerNorm + 线性层得 \(\hat X\)。
关键设计¶
-
特征身份嵌入 (FeatID) 作为跨特征注意力的软邻接先验:
- 功能:让每个特征拥有一个跨层、跨时间稳定的语义向量,即使该位置数值缺失也能用身份做注意力。
- 核心思路:拼接 \(e_{t,i} = [\tilde x_{t,i}; \text{PE}(t); f_i; m_{t,i}]\),其中 \(f_i \in \mathbb{R}^{d_f}\) 是可学习身份矩阵的第 \(i\) 行。注意力分数 \(s_{ij}^{(t)} = e_{t,i}^\top A e_{t,j}\) 可以分解为身份先验 \(f_i^\top A_{ff} f_j\)、身份-上下文交叉项、动态上下文 \(r_{t,i}^\top A_{rr} r_{t,j}\) 三部分。当 \(x_{t,i}\) 和 \(x_{t,j}\) 都缺失时,动态项退化,身份先验项依然完整提供跨特征兼容性。
- 设计动机:传统 Transformer 在 ImputeFormer 里学到的"静态特征嵌入"只作软空间索引,与缺失状态没有交互;SPIN 的图嵌入又绑定预定义拓扑。FeatID 既不需要图先验,也能在重度缺失下保持锚定。BeijingAir 上消融显示去掉 FeatID 后 Subseq-50% 的 MAE 从 0.166 暴涨到 0.398,可见这是最关键的组件。
-
双螺旋 Hybrid 编码层(先并行后交叉):
- 功能:让时间和特征两个维度既能独立细化,又能跨维度交换信息。
- 核心思路:每层分两阶段。Stage 1 并行做 \(H_T = \text{TimeMHA}(H^{(l-1)})\) 和 \(H_F = \text{FeatMHA}(H^{(l-1)})\),各自独立优化。Stage 2 串行交叉:\(H_{TF} = \text{FeatMHA}(H_T)\) 和 \(H_{FT} = \text{TimeMHA}(H_F)\)。最后四个分支取平均 \(H^{(l)} = \frac{1}{4}(H_T + H_F + H_{TF} + H_{FT})\)。形状像 DNA 双螺旋而得名。
- 设计动机:纯串行 Time→Feature→Time 的编码消融时("w/o Hybrid")在 Subseq-50% 上 MAE 从 0.166 飙到 0.294,说明并行+交叉的双向流通是处理长缺口的关键。串行编码会把另一维度信息压缩在前一阶段后才传播,造成信息瓶颈。
-
多层级融合:
- 功能:把每一层(包括第 0 层 embedding)的多分支输出都拿出来加权平均,避免只用最后一层导致浅层细节丢失。
- 核心思路:\(\tilde H = \frac{1}{1+4L}(H^{(0)} + \sum_{l=1}^L (H_T^{(l)} + H_F^{(l)} + H_{TF}^{(l)} + H_{FT}^{(l)}))\),故意省掉 \(H^{(l)}\) 因为它本身是四分支的平均,避免重复计数。简单平均比可学习门控更好(消融见附录 D)。
- 设计动机:插补需要精细到 \((t, i)\) 像素级重构,深层抽象往往丢失局部细节,浅层保留的"原始信号"反而对填补有帮助;这与 ResNet 直接连接更好的发现一致。
损失函数 / 训练策略¶
沿用 SAITS 的两段损失:观测重构 \(\mathcal{L}_{ORT}\) + 人工掩码插补 \(\mathcal{L}_{MIT}\),两者等权重 \(\mathcal{L} = \mathcal{L}_{ORT} + \mathcal{L}_{MIT}\)。\(d_{pe} \in [6, 24], d_f \in [6, 32], d \in [32, 576], L \in [2, 3]\)。
实验关键数据¶
主实验(基准排名)¶
| 模型 | 平均 rank ↓ | 备注 |
|---|---|---|
| HELIX (本文) | 1.00 | 21/21 全部第 1 |
| ImputeFormer | 3.29 | KDD'24 SOTA |
| SAITS | 3.76 | 88M 参数 |
| StemGNN | 5.71 | GNN |
| Linear Interpolation | 6.67 | 朴素基线居然能排第 5 |
| PatchTST | 7.24 | — |
ETT-h1 上各缺失模式 MAE(5 次平均 ± 标准差):
| 模式 | HELIX | ImputeFormer | SAITS | 朴素线性插值 |
|---|---|---|---|---|
| Point-10% | 0.128 ± 0.005 | 0.202 ± 0.044 | 0.150 ± 0.007 | 0.197 |
| Point-50% | 0.189 ± 0.012 | 0.296 ± 0.036 | 0.208 ± 0.009 | 0.267 |
| Block-50% | 0.372 ± 0.015 | 0.404 ± 0.021 | 0.422 ± 0.019 | 0.527 |
| Subseq-50% | 0.489 ± 0.014 | 0.520 ± 0.017 | 0.620 ± 0.016 | 0.722 |
参数量 803K,比 SAITS (88M) 小 100 倍。Wilcoxon 显著性 \(p < 0.001\)。
消融实验(BeijingAir)¶
| 配置 | Point-50% | Block-50% | Subseq-50% |
|---|---|---|---|
| 完整 HELIX | 0.102 ± 0.005 | 0.131 ± 0.005 | 0.166 ± 0.009 |
| w/o Fusion | 0.104 | 0.147 | 0.173 |
| w/o Sinusoidal | 0.108 | 0.142 | 0.173 |
| w/o Hybrid | 0.104 | 0.137 | 0.294 (崩) |
| w/o FeatEmb | 0.144 | 0.223 | 0.398 (大崩) |
关键发现¶
- FeatID 是命脉:去掉后所有缺失模式都大幅退化,尤其 Subseq-50% 上崩到 0.398——证明持久身份锚点在长缺口下不可替代。
- 双螺旋在长缺口下才显威力:Point-50% 上去掉 Hybrid 只掉 2%,但 Subseq-50% 上掉 77%;说明双向交叉对"上下文严重缺失"的场景最关键。
- 身份嵌入维度亚线性扩展:PeMS 862 特征只需 \(d_f = 32\)(压缩 27:1),但 ETT-h1 7 特征反而要 \(d_f = 12\)(扩展 0.6:1)——特征数少时"内在结构"反而要靠 FeatID 补足。
- 特征注意力逐层对齐物理拓扑:BeijingAir 上特征注意力与北京 12 个气象站的地理邻近度相关系数从 Layer 0 的 0.589 涨到 Layer 2 的 0.712,是完全无监督的空间结构发现。
- 结构利用度随相关性增强:HELIX 相对 ImputeFormer 的提升从低相关组的 16.5% 涨到高相关组的 22.1%,证明 FeatID 真正在"利用结构"而非只是表面拟合。
亮点与洞察¶
- "持久 token 身份"思想:把 NLP soft prompt 思路搬到时序,给每个特征发一个永不缺席的 ID 卡,让跨特征注意力即使数据全缺仍能基于身份做兼容性推理。这个想法可以推广到任何"列稀疏"的表格 / 多模态场景。
- 三项独立证据互相印证:消融退化 + 无监督空间结构发现 + 注意力跨层渐进对齐,三条独立证据共同支持 FeatID 的必要性,论证扎实。
- 小模型打大模型:803K 参数干翻 88M 的 SAITS 和 109M 的 MOMENT,证明在时序里"嵌入设计"比"堆参数"更重要。
- 双螺旋的物理隐喻:先并行后交叉的结构让人立刻想到 DNA 复制,把架构和动机绑在一起,对论文传播很有利。
局限与展望¶
- 特征身份嵌入是 per-dataset 学的,跨数据集迁移困难——例如把 BeijingAir 学到的 FeatID 迁到 PeMS 没有意义;想要做基础模型还要再想办法。
- 特征数 \(F > 10^3\) 时跨特征注意力 \(O(TF^2)\) 仍是瓶颈,作者也承认这个 scalability 问题。
- 重度缺失下首步对齐的可视化只在 BeijingAir 上做,泛化到其他时空数据需要更多实证。
- 没和扩散插补 (CSDI) 直接比,作者在文中给出了 BeijingAir 上单点对比 (HELIX 0.073 vs CSDI 0.102 提升 28.4%) 但不算系统对比。
相关工作与启发¶
- vs ImputeFormer (KDD 2024):ImputeFormer 学静态特征嵌入但与 mask 状态无交互,HELIX 把 mask 也拼进 embedding 让身份信息和缺失状态联动。
- vs SPIN (NeurIPS 2022):SPIN 用预定义图,HELIX 端到端学软邻接,无需空间先验。
- vs SAITS (ESWA 2023):SAITS 是当年的 attention 插补 SOTA,HELIX 在所有 21 个设置上都优于它且参数小 100 倍。
- vs Crossformer (ICLR 2023):同样做时间-特征两阶段注意力,但 Crossformer 的 token 由 patch 数值得到,HELIX 加上显式 FeatID 是关键差异。
评分¶
- 新颖性: ⭐⭐⭐⭐ "持久特征身份嵌入"是清晰的新增组件,双螺旋编码是新组合但单点没有特别创新。
- 实验充分度: ⭐⭐⭐⭐⭐ 5 数据集 × 5 缺失模式 = 21 个设置全部第一,16 个对照基线,5 种子均值方差全报告,可视化非常充分。
- 写作质量: ⭐⭐⭐⭐⭐ 故事清晰,把消融、可解释性、跨域可视化全包了,DNA 类比也增加可读性。
- 价值: ⭐⭐⭐⭐⭐ 已集成进 PyPOTS 开源工具包,可直接用;FeatID 思路对宽口多变量时序任务有广泛借鉴价值。