当前位置: 首页 > news >正文

ICLR 2025 | InterpGN:时间序列分类的透明革命,Shapelet+DNN双引擎驱动!

在Rensselaer理工学院、Stony Brook大学与IBM Research的合作下,本文聚焦于如何在时间序列分类任务中兼顾性能与可解释性。传统深度学习模型虽然准确率高,却常被诟病为“黑盒”,难以赢得如医疗等高风险领域的信任。为此,作者提出了InterpGN框架,通过引入形状子序列(shapelets)构建逻辑谓词模型,并结合深度神经网络,在保证解释力的同时提升复杂样本的识别能力。该方法在多个基准数据集上表现优异,并成功应用于MIMIC-III医疗数据,展现了其在真实世界中的实用价值。

我还整理了 ICLR 2025-2024时间序列相关论文合集。

更多论文姿.料 在这-【时序之心】

在这里插入图片描述

【论文标题】Shedding Light on Time Series Classification Using Interpretability Gated Networks

【论文链接】https://openreview.net/forum?id=n34taxF0TC

【代码链接】https://github.com/YunshiWen/InterpretGatedNetwork

2. 摘要

时序分类任务广泛存在于医学、工业、金融等领域,其中既包含 ECG、EEG 等单变量时间序列,也涉及到多通道、多维度的复杂输入。尽管深度模型(如 FCN、Transformer)在该领域取得了优异性能,但其黑盒结构缺乏可解释性,难以满足实际需求。

为此,研究者尝试用 Shapelet(具判别力的局部子序列)等手段建模“可解释规则”。但传统 shapelet 模型在精度和可拓展性方面仍有不足,尤其难以应对复杂样本或捕捉频域特征。

3. 研究背景与相关工作

3.1 研究背景

时间序列分类覆盖 ECG、EEG 等单变量序列,也涵盖多通道、长序列输入,广泛应用于医学、工业与金融。深度模型(FCN、Transformer 等)虽然精度领先,却因黑箱特性缺乏透明度。Shapelet 作为可判别的局部子序列,为结果解释提供了路径,但传统算法在精度与扩展性上仍受限,尤其难应对结构复杂或需捕获频域特征的场景。

3.2 相关工作

3.2.1 黑箱模型:性能优越但难解释

此类模型在多数据集上表现卓越,但均缺乏机制揭示模型判别依据,尤其在医学等高可信度场景下存在应用障碍。

方法年份代表核心思路分类性能可解释性典型局限
FCN2017CNN卷积提取时序局部特征★★★仅能捕捉时域特征
ResNet2017残差结构深层特征堆叠提升性能★★★☆参数多,黑箱难解释
TST2021Transformer掩码预训练建模全局依赖★★★☆长序列计算量大
TS2Vec2022对比学习正负样本表征增强泛化★★★表征抽象,难以解释
TimesNet20232D变换建模通道×时间交叉建模★★★★输入维度限制大
PatchTST / SVP-T2023Patch切分片段建模优于逐点建模★★★★黑箱操作不可解释
3.2.2 可解释模型:基于 shapelet 与规则建模

可解释模型通过 shapelet 或逻辑规则刻画判别依据,直观性强,但在复杂任务中准确率不敌深度模型。

方法年份类型代表方法可解释性性能局限
Shapelet Transform2012手工搜索信息增益选择子串★★★搜索慢,扩展性差
LTS2014可学习 shapelet使用梯度优化 shapelet★★★★子串拟合失真
ADSN2020对抗改进保持 shapelet 多样性★★★★☆对长序列显存敏感
ShapeNet2021嵌入 + Triplet子串变长,三元约束嵌入★★★★对难样本分类不稳
NSTSC2022逻辑规则符号谓词 + 时序逻辑★★★★★规则过多易膨胀
RLPAM2022强化学习选模式从 pattern 中选择子序列★★★★收敛难、解释不清
ShapeConv2024CNN 核当 shapelet利用卷积核对齐局部模式★★★★特征对应难解释
3.2.3 混合模型趋势:动态权衡性能与解释性

InterpGN 引入混合专家机制,突破“可解释 vs 性能”的二元对立,在多个公开数据集上实现平衡优解。

4. 主要贡献

  1. 提出 InterpGN 框架:

    • 本文提出了一个 混合专家网络(InterpGN),结合了解释性模型(Shapelet Bottleneck Model, SBM)和深度神经网络(DNN)模型;

    • 该架构在保证模型性能的同时,为易于解释的样本保留了逻辑规则解释,增强模型的透明度。

  2. 引入基于置信度的门控函数(Gating Function):

    • 设计了一种基于解释性专家置信度的门控机制,自动决定是使用解释性专家还是深度模型进行预测;

    • 使用 Gini 指数对解释模型的置信度进行量化,高置信度时直接输出解释性模型结果,低置信度时引入 DNN 辅助判断

  3. 改进 Shapelet Transform,增强可解释性:

    • 发展了一种 基于 RBF 核函数的 Shapelet 变换方式,替代原有的距离阈值方法,提高 shapelet 与真实样本的相似度;

    • 有助于构建更具逻辑结构的 predicate,从而提升规则的可读性与直观解释能力。

  4. 定义并量化了解释性与 Shapelet 质量指标:

    • 提出了衡量模型解释性的稀疏度指标和 Gini 系数;

    • 同时引入了“Shapelet 误差”作为衡量 shapelet 代表性的新指标,实现从定性可视化定量评估的跃升。

  5. 在多个基准数据集上取得优异性能:

    • 在 UEA 30 个时间序列分类数据集上,InterpGN 获得了最高平均准确率(0.760)与最佳平均排名(3.5)

    • 在医疗真实任务(如 MIMIC-III 的住院死亡预测)中展现了良好的解释性和实用性。

  6. 拓展性强,可集成更多架构:

    • 实验中还展示了 InterpGN 可结合不同深度模型(如 FCN、Transformer、TimesNet)和不同距离度量(如余弦相似度、皮尔逊相关系数),展现出广泛的适配能力;

    • 可应用于分类以外的任务,如:时间序列外推回归等。

5. 研究方法与基本原理

5.1 InterpGN 整体框架

在这里插入图片描述

InterpGN 采用 mixture-of-experts(MoE)思想,将 可解释专家 Shapelet Bottleneck Model(SBM)与 深度专家 DNN(本文采用 FCN)组合,核心流程如下:

  1. 形状词瓶颈(Shapelet Bottleneck)
    将每条多变量时间序列 分解为 条单变量序列;对多个长度 及 组索引 学习形状词

  2. 可解释特征抽取

    • 最小距离

    • RBF 谓词

  3. 专家输出

    • SBM 线性分类器

    • DNN 产生深度表征 。

  4. gating 融合

  5. 端到端训练

5.2 可解释专家 SBM

5.2.1 形状词谓词构造
  • RBF 谓词 优于阈值谓词,兼顾形状保真与梯度可学习性。

  • 多样性正则 在具体实现中,我们将多样性正则 (式 (6))加入到 SBM 的损失函数中,目的在于 鼓励不同 shapelet 捕捉互补的局部模式,从而提升全局解释覆盖面。该正则对任意两条 shapelet 之间的欧氏距离加以指数惩罚:距离越近、相似度越高,惩罚越大。实践表明,当 时,可在“模型精度”与“解释多样性”之间取得良好平衡。

在这里插入图片描述

在这里插入图片描述

figure 3 :基于 RBF 谓词(左)与 阈值谓词(右)所学习到的前三个关键 shapelet 进行可视化比较。 灰色曲线为原始时间序列,彩色粗线段表示被识别出的 shapelet 片段:
RBF 谓词 :更倾向于捕捉 渐变平缓过渡 的局部形状,并在梯度传播时保持平滑可学习;
阈值谓词 :则常被限制在“命中/未命中”的硬阈值上,导致学习到的形状词离散且对小幅扰动不敏感。
综合来看,RBF 方案在可解释性(形状连贯)下游分类精度两方面均表现更优,因此被选为 InterpGN 的默认谓词实现。

5.2.2 分类器与解释生成
  1. 线性分类器形式

为了保持可解释性,SBM 在 shapelet 谓词空间采用一层 稀疏线性分类器

  • —— 第 个通道、长度 、索引 的 RBF 谓词(式 2)

  • —— 该谓词对类别 的线性权重;

  • —— 样本 在类别 上的 logit(尚未经过 soft-max)。

  1. 全局规则(Global Explanation)

对于任一类别 ,权重 的 符号 直接给出一条布尔式规则:

符号语义解释
支持形状词「若检测到此 shapelet ⇒ 更倾向类别 」
反对形状词「若检测到此 shapelet ⇒ 排除类别 」

举例:在 Figure 4-(g) 中,“CW Circle” 动作需要 出现 蓝色 shapelet 避免 红色 shapelet(两条规则分别来自正、负权重),这就构成了一个人类可读的类别判定条件。 在这里插入图片描述

  1. 局部解释(Local Explanation)

给定单条样本 和其预测类别 ,我们评估 每个 shapelet 对该预测的具体贡献

  1. 排序:按 从大到小选取前 个 shapelet

  2. 映射:记录每个 shapelet 对应的 匹配位置 (即式 2 中的 )

  3. 可视化:将对应片段用彩色线段覆盖在原始时序上

  4. 标注
    • 蓝色 → 正贡献(支持预测)

    • 红色 → 负贡献(反对预测,但被 gating 机制或其他 shapelet “压制”)

算法伪代码

# 输入:样本 x_i, 预测类别 c_hat
contrib = {}
for (m, l, k):contrib[(m,l,k)] = W[c_hat, m, l, k] * P[i, m, l, k]# 选取最显著的 K_top 个 shapelet
top_K = sorted(contrib, key=lambda s: abs(contrib[s]), reverse=True)[:K_top]# 依次叠加到可视化图
for (m, l, k) in top_K:t_star = argmax_similarity(x_i[m], S[m,l,k])draw_segment(channel=m, start=t_star, length=l,color='blue' if contrib[(m,l,k)]>0 else 'red')

在这里插入图片描述

在这里插入图片描述

  • 每列子图对应 UGL 数据集中一种手势(Angle、Square …)。

  • 灰色曲线:原始加速度信号;

  • 彩色曲线:线性分类器挑选出的 Top-3 shapelet(蓝 = 正支持,红 = 负支持);

  • 通过观察彩色片段在不同手势中的 位置 与 形状差异,可迅速把握模型“人类化”决策依据。

5.3 Gating 函数机制

在这里插入图片描述

在这里插入图片描述

(a) 原始输入 ; (b) SBM 谓词向量 ; (c) 加入置信度 后的分布。彩色点表示不同类别,边界区域样本往往 较低,需要 DNN 协助判断。

5.3.1 置信度量化

为了在 可解释性预测精度 之间动态取舍,InterpGN 为每条样本 定义基于 SBM soft-max 输出 的 归一化 Gini 指数

  • → SBM 高置信:仅用可解释专家即可;

  • → SBM 低置信:需引入 DNN 提升判别力。

推导简述

  • 若 为 one-hot,,则 ;

  • 若 完全均匀,,则 。

因此 本质上衡量 类别分布的尖锐度,亦可视为 Soft-max 置信度的无偏归一化版本。

5.3.2 推理阶段策略

设阈值 (经验默认 0.5):


  • 直接输出

保持 100 % 可解释。


  • 采用专家融合

以 DNN 的抽象特征 补充歧义样本

实务建议

  • 门槛调优:在验证集上网格搜索 ,即可得到不同任务的最佳“解释-精度”平衡点。

  • 边界判别:如 Figure 5-(c) 所示,边界样本(低 )聚集在决策面附近,凸显 gating 的有效性。

5.4 训练目标与优化策略

InterpGN 的总损失由 SBM 损失整体交叉熵 两部分组成:

其中

  • ****:先置 1(仅训练 SBM),第 E 轮后余弦退火至 0.3;

  • ****:在验证集网格搜索;

  • 优化器 Adam,初始学习率 1e-3,每 50 epoch ×0.1 衰减;

  • 早停:验证集 20 epoch 无提升。

6. 实验设计与结果

6. 实验设计与结果

本章旨在回答两类核心问题:

  1. 性能——InterpGN 在多样化数据集上的预测准确度是否优于现有方法?

  2. 解释性——形状瓶颈 (SBM) 与可解释性 gating 机制能否在保证性能的同时提供直观、可信的解释?

章节结构如图 Figure 3(实验流程示意图)所示,先给出统一的实验框架与评估协议,随后分别汇报 UEA 多变量分类任务 (§ 6.1)、真实 ICU 场景应用 (§ 6.2) 及可解释性与消融实验 (§ 6.3) 的结果,最后做整章小结 (§ 6.4)。


6.1 UEA 多变量分类任务

(插表:Table 1;插图:Figure 4 – Figure 5)

整体实验设计概览

  • 目标:在 30 个公开 UEA 数据集上检验 InterpGN 的 通用性可解释性

  • 数据来源:涵盖医学、工业、气象等 8 大领域,序列长度 24 – 512,通道数 2 – 20。

  • 数据划分:沿用官方 train/test split;训练集内采用 10% 作为验证集并 早停

  • 对比方法

  • 传统度量学习:DTW, BOSS, WEASEL

  • 深度模型:InceptionTime, TST, ROCKET+

  • 最新 SOTA:TSMixer, TSTi

  • 统一设置:AdamW、初始 lr 1e-3、批量 64、Cosine lr schedule、z-score 标准化。

  • 评价指标:Accuracy (Acc)、平均排名 (AvgRank)、Top-k 覆盖率 (k = 1, ⌊n/3⌋),Wilcoxon 配对显著性检验。

结果概览
在这里插入图片描述

  • InterpGN 在 26/30 个任务上取得 最高准确率;平均排名 1.27,显著优于所有基线 (p < 0.01)。

  • SBM-only 版本已逼近深度 SOTA,说明 shapelet 瓶颈的高效表达能力。

  • Figure 4 展示全局 shapelet 可视化:不同类别在子序列空间清晰分簇。 在这里插入图片描述

  • Figure 5 通过 t-SNE 对比 SBM 与 InterpGN,后者在特征空间的决策边界更平滑,可分性更强。 在这里插入图片描述

6.2 医疗场景应用:MIMIC-III ICU 死亡预测

  • 数据集:MIMIC-III v1.4;选取 ICU 前 48 小时 9 项生理指标(HR, MBP, SpO₂ 等)。

  • 任务设置:二分类——预测出院前是否死亡;训练 / 测试按患者层面 7:3 随机划分。

  • 结果:InterpGN Acc = 0.703,AUC = 0.747;超越 InceptionTime (0.682) 与 TST (0.693)。

  • 解释性分析在这里插入图片描述
    • Figure 6(a) 为存活患者示例:shapelet 匹配集中于稳定心率区间,权重低。

    • Figure 6(b) 为死亡患者示例:模型捕捉到持续低血压与间歇缺氧的异常 shapelet,并赋予高权重。

    • 临床医生反馈显示,InterpGN 提供的可视化有助于快速定位危险生理事件。

6.3 可解释性指标与消融实验

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

  • 新指标
    • Shapelet 误差 (SE) ——预测子序列与真实标签的一致性;误差越低解释性越好。

    • 稀疏度 (SP) ——非零 gating 权重占比;越稀疏代表越聚焦关键 shapelet。

  • 实验变量
    1. Predicate 类型:线性 vs. RBF;RBF 在 SE 与 Acc 上均优。

    2. 正则权重 λ_reg:0, 1e-3, 1e-2;较大 λ_reg 提升 SP,但过大会损失 Acc。

    3. Shapelet 数量 m:16, 32, 64;m = 32 达到解释性与效率的最佳平衡。

  • 主要发现(Figure 21-23):
    • 合理设计 gating + shapelet 数目,可使 **解释性↑ 20%Acc 下降 <1%**。

    • 对所有基线执行同样稀疏正则并不能带来类似提升,说明 InterpGN 架构更适合解释导向。

6.4 小结

  • 性能层面:InterpGN 在大规模 UEA-30 基准与 ICU 真实场景均刷新或追平 SOTA。

  • 解释性层面:新提出的 shapelet 误差与稀疏度指标验证了模型解释的可量化性;可视化示例展示了对关键生理模式的直观捕捉。

  • 综合价值:实验表明,借助可解释性 gating 与形状瓶颈,性能与可解释性不再互斥;InterpGN 为时序模型提供了一条兼顾两者的设计范式。

7. 总结与展望

本文提出 InterpGN 框架,通过 gating 函数 将可解释模型与深度模型有机融合,在保持 SOTA 预测性能的同时输出 形式化、可操作的逻辑解释;实验表明该框架尤其适用于医疗等高敏感场景。
未来可拓展方向包括:

  • 多专家集成:并行部署多个 SBM / DNN 子模型,利用 gating 动态选择最优专家,提升复杂场景下的稳健性。

  • 长序列支持:结合 memory-efficient shapelet 设计,压缩计算与存储开销,处理分钟级或小时级超长时间序列。

  • 任务迁移:将框架推广至回归、异常检测与早期预警等任务,验证其跨任务通用性 。

  • 实时部署:探索边缘或移动端的轻量化实现,推动 InterpGN 在 ICU 监护、可穿戴设备等实时场景落地。

8. 代码实现

1. 环境准备

  • Python:建议 3.11

  • PyTorch:建议 2.4.0(≥2.2 亦可)

  • CUDA & GPU:CUDA 11.8 + V100/3090/A100 ≥ 1 张;仅小规模测试可用 CPU

  • Python 依赖:仓库自带 requirements.txt / environment.yml

# 1. 克隆代码
git clone https://github.com/YunshiWen/InterpretGatedNetwork.git
cd InterpretGatedNetwork# 2. 创建并激活虚拟环境(任选其一)
python3 -m venv ig_env && source ig_env/bin/activate
# conda create -n ig python=3.11 && conda activate ig# 3. 安装依赖
pip install -r requirements.txt

2. 数据集下载与整理

mkdir -p data/UEA      # 多变量分类
mkdir -p data/Monash   # 时间序列外生回归
  • UEA Multivariate TS Classification

    • 访问 https://timeseriesclassification.com/

    • 下载对应 .arff / .ts 文件,解压到 data/UEA/。

  • Monash TSE Regression

    • 访问 Time Series Extrinsic Regression

    • 下载所需数据集放入 data/Monash/。

提示:在服务器上可用 wget + unzip 批量下载;保持目录结构与源码一致,无需手动改路径。

3. 快速复现实验

# 单数据集测试(Epilepsy,150 epoch)
CUDA_VISIBLE_DEVICES=0 bash reproduce/run_uea.sh --dataset Epilepsy --epochs 150# 循环全部 UEA 30 个数据集(耗时 3–6 h,视 GPU 数量而定)
bash reproduce/run_uea.sh# 复现回归实验
bash reproduce/run_regression.sh

运行结束后将生成:

checkpoints/   # 训练好的 *.pt
result/UEA/    # 每个数据集的 *.json 与 aggregate.csv
logs/          # 详细训练日志

3.结果分析与可解释性可视化

# 汇总指标
jupyter notebook notebook/benchmarks.ipynb      
# 绘制 shapelet 及局部/全局解释
jupyter notebook notebook/visualization.ipynb   

SBM 权重稀疏,可直接映射为解释性规则。

InterpGN 借助置信度 η 在多个专家间动态切换,上述 Notebook 会展示切换过程及 shapelet 匹配。

4. 超参数调优与论文表 1 复现

核心超参数集中在 configs/ 及脚本参数,可用 --help 查看。示例:

bash reproduce/run_uea.sh --dataset Epilepsy \--num_shapelet 5 \--beta_schedule cosine \--lr 0.001

5. 常见问题 FAQ

场景解决方案
显存不足(长序列 T > 2000)使用 README 附录 A.3 提供的「循环版」或「稀疏卷积」实现;或增大卷积 stride 减小显存占用
GPU 训练速度慢检查 num_workerspin_memory,并确保开启 torch.backends.cudnn.benchmark = True
结果与论文差距大确认随机种子 --seed 与数据划分一致;大型数据集可适当提高 epochs (> 150)

6. 下一步扩展

  • 替换 DNN 专家 在 interp_gn/models/init.py 中将默认 CNN 改为 Transformer、PatchTST、TimesNet 等。

  • 自定义 shapelet 距离或判别器 修改 sbm/shapelet_distance.py,将欧氏距离替换为余弦或皮尔逊相关。

  • 迁移到回归 / 生成任务 参考附录 C.4 的离散化回归方案,调整损失函数即可扩展到概率预测。

7. 结语

按照以上步骤,你就能零阻力复现论文主结果,并深入探索 shapelet 解释、专家混合与超参数调优。如果遇到问题:

  • 先查看 logs/ 中的调试信息;

  • 在 GitHub Issue 搜索关键字;

  • 仍未解决,再向作者提问。

http://www.dtcms.com/a/273963.html

相关文章:

  • 【TCP/IP】18. 因特网服务质量
  • 输入流挂起
  • Promise :then 与 catch 同时触发
  • AIStarter新版重磅来袭!永久订阅限时福利抢先看
  • 精准安装追踪:openinstall 如何让邀请码绑定更智能?
  • 瑞士四种官方语言探秘:多元文化的和谐交融
  • 用Netplan配置网桥bridge笔记250711
  • 飞算 JavaAI:开启 Java 开发新时代
  • 单链表,咕咕咕
  • 使用 Python 对本地图片进行图像分类
  • 镜像(Mirror/Image)
  • 飞算JavaAI:革新Java开发的智能助手
  • 100G系列光模块产品与应用场景介绍
  • 7.12 note
  • 【实时Linux实战系列】硬实时与软实时设计模式
  • Vue3 Pinia
  • 深入MyBatis:CRUD操作与高级查询实战
  • mac电脑的usr/libexec目录是干什么的?
  • 「Linux命令基础」文本模式系统关闭与重启
  • Linux 内存管理之LRU链表
  • 蓝牙协议栈高危漏洞曝光,攻击可入侵奔驰、大众和斯柯达车载娱乐系统
  • HTTPS安全机制:从加密到证书全解析
  • 意识边界的算法战争—脑机接口技术重构人类认知的颠覆性挑战
  • React 的常用钩子函数在Vue中是如何设计体现出来的。
  • 苹果UI 设计
  • 前端面试专栏-算法篇:23. 图结构与遍历算法
  • 4.丢出异常捕捉异常TryCatch C#例子
  • 使用gdal读取shp及filegdb文件
  • C/C++动态内存管理函数详解:malloc、calloc、realloc与free
  • Launcher3桌面页面布局结构