(论文速读)TADNet:心磁图信号去噪的时间分解和基于注意力的深度学习

****论文题目:****Temporal Decomposition and Attention-Based Deep Learning for Magnetocardiography Signal Denoising(心磁图信号去噪的时间分解和基于注意力的深度学习)

****期刊:****IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT

****摘要:****提出了一种基于时间分解和注意力的去噪网络(TADNet)用于心磁图(MCG)信号去噪。将原始时间序列数据分解为趋势分量和季节分量。趋势分量使用多层感知器(MLP)进行建模,以捕获数据的趋势。对于季节分量,采用多层卷积神经网络(CNN)进行分割,提取局部时间特征。这些细粒度的特征由基于Transformer的自我注意机制处理,以捕获长期的时间依赖关系。最后,利用反卷积运算对信号进行重构,实现了对心电数据的有效降噪。本文深入研究了时间、小波和傅立叶风格注意对模型性能的影响,增强了模型的可解释性。在不同噪声条件下对临床心电数据的大量实验表明,TADNet的性能优于传统算法,证明了其有效性和稳健性。研究结果表明,TADNet为心电信号去噪提供了一种高效、准确的解决方案。


1. 研究背景

心磁图(Magnetocardiography,MCG)通过测量心脏电活动产生的微弱磁场来获取心脏信息,具有非接触、无创等特点。随着 SERF-OPM 等高灵敏度磁传感器的发展,MCG 在临床检测中具有较大的应用潜力。

但 MCG 信号非常微弱,在医院环境中容易受到多种噪声干扰,例如:

复制代码
Baseline Wandering(BW)
Power Line Interference(PLI)
Electromyography(EMG)
Clinical Environmental Noise(CEN)
CT Machine Noise

其中部分噪声与 MCG 的有效频段存在重叠,并且具有随机、时变和非平稳特性。传统数字滤波虽然能够处理部分 PLI 和基线漂移,但当噪声和有效 MCG 信号频谱重叠时容易造成信号失真;EMD 等分解方法又存在计算复杂度较高等问题。

因此,论文关注的问题是:

如何在复杂临床噪声条件下去除噪声,同时尽可能保留 P 波、QRS 波群和 T 波等具有诊断价值的 MCG 波形特征?

针对这个问题,作者提出了 TADNet(Temporal Decomposition and Attention-Based Denoising Network)

TADNet 的主要思路可以概括为:

复制代码
原始 MCG
   ↓
Trend / Seasonal Decomposition
   ↓
┌─────────────┬────────────────────────┐
│ Trend       │ Seasonal               │
│ MLP         │ CNN Patch + Transformer│
└─────────────┴────────────────────────┘
   ↓
重新相加
   ↓
Denoised MCG

作者还进一步比较了 Time-domain Attention、Fourier Attention 和 Wavelet Attention,实验表明 Fourier Attention 的效果最好


2. TADNet 整体结构

论文 Figure 1:TADNet 整体结构。(a) MCG 去噪框架;(b) CNN Patch Transformer 结构。

论文首先将原始 MCG 信号 X(t) 分解为 Trend Component T(t) 和 Seasonal Component S(t)

这里两部分承担不同的信号特征:

复制代码
Trend Component
→ 长时间尺度、平滑变化
→ 例如 Baseline Drift

Seasonal Component
→ 周期性和局部变化
→ 包含 P、QRS、T 等主要心脏活动特征

作者认为 Attention 更适合处理 Seasonal Component,而直接处理 Trend Component 的泛化能力有限,因此将两部分分别建模。


3. Trend Component:使用 MLP 建模

Trend Component 主要包含长期、平滑的变化,因此作者没有使用 Transformer,而是直接使用 MLP:

其中 为权重矩阵, 为偏置,激活函数通常使用 ReLU。

这一部分的目的比较直接:

将低频、缓慢变化的趋势成分单独建模,避免后续 Attention 同时处理趋势和周期信息。

这也是论文 Temporal Decomposition 的核心作用。


4. Seasonal Component:CNN Patch + Transformer

Seasonal Component 是 TADNet 的主要建模部分。

首先对 S(t) 进行 Data Embedding 和 Positional Embedding:

得到:

其中 L 为序列长度,D 为 embedding dimension。

4.1 为什么要使用 CNN Patch?

普通 Transformer 直接处理长时间序列时计算量较大。

论文受到 PatchTST 的启发,将长时间序列划分成 Patch。但这里不是简单地直接切分,而是使用 Multi-layer CNN 生成 Patch:

其维度变为:

其中 为 Patch Factor。

这里 CNN 同时完成两件事:

复制代码
1. 缩短 Transformer 输入序列长度
2. 在划分 Patch 的过程中提取局部细粒度时序特征

因此后面的 Transformer 不需要直接处理全部原始采样点,而是在 CNN 提取出的 Local Features 上进一步建模 Long-range Dependency。

这也是 TADNet 将 CNN 和 Transformer 结合起来的主要原因:

复制代码
CNN
→ Local Feature

Transformer
→ Global / Long-range Dependency

5. 三种 Attention Mechanism

论文 Figure 2:Time-domain Attention、Fourier Attention 和 Wavelet Attention 的结构对比。

CNN 得到 Patch 后,首先映射得到 Query、Key 和 Value:

作者分别研究三种 Attention。

5.1 Time-domain Attention

标准 Self-Attention 直接在时域计算:

它可以直接寻找不同时间位置之间的相关性,但对于强周期信号或复杂频率结构,不一定能够充分利用信号的频谱信息。

5.2 Fourier Attention

Fourier Attention 先把 QKV 变换到频域,然后在频域计算 Attention:

其特点是直接利用 MCG 的周期性和频谱结构。

MCG 中 P 波、QRS 波群和 T 波具有明显的周期性,并主要位于较低频段。Fourier Transform 可以把信号分解到全局频率空间,因此 Transformer 可以更直接地关注对心脏活动重要的频率成分。

5.3 Wavelet Attention

Wavelet Attention 使用 Wavelet Transform:

与 Fourier 不同,Wavelet 可以同时保留时间和频率信息,因此更加适合具有非平稳、局部频率变化的数据。

三种机制可以简单理解为:

复制代码
Time Attention
→ 直接关注时间位置之间的依赖

Fourier Attention
→ 关注全局频率和周期结构

Wavelet Attention
→ 关注多尺度 Time-Frequency 特征

6. Seasonal Component Reconstruction

Transformer 输出经过 FeedForward 和 Normalization:

之后使用 Transposed CNN 恢复到原始序列长度:

最后将 Trend 和 Seasonal 两部分重新相加:

训练使用 MSE Loss:


7. 数据集与噪声设置

论文使用真实临床 MCG 数据。

采集系统由 36 个 OPM 组成,采样率为 1000 Hz,共采集 1000 名参与者,每人最多采集 3 min,得到约 36000 条信号。

经过人工筛选后,选择 619 条低噪声、高质量信号作为 reference data,并进一步使用基础 Bandpass 和 Notch Filtering 去除残余噪声。

随后每段信号切成 2048 points,最终得到:

复制代码
总数据:23143 segments

Train:18516
Validation:2312
Test:2315

数据按照 80% / 10% / 10% 划分。

论文 Figure 3:实验使用的五类噪声,包括 BW、PLI、EMG、CEN 和 CT Noise。

实验加入五种典型噪声:

复制代码
BW
PLI
EMG
CEN
CT Noise

其中 CT Noise 是论文重点关注的复杂场景,因为它同时具有时间随机性和频率变化,并且与 MCG 有效频段存在重叠。


8. 三种 Attention 的实验结果

论文 Figure 4:Time、Fourier 和 Wavelet Attention 的 MCG 去噪结果对比。

论文 Table I:不同 Attention Mechanism 的去噪指标。

结果如下:

复制代码
Time Attention
MAE:2.38
RMSE:7.39
PRD:39.90%
CC:0.93
SNRimp:27.17 dB

Fourier Attention
MAE:1.56
RMSE:4.68
PRD:25.30%
CC:0.94
SNRimp:31.13 dB

Wavelet Attention
MAE:1.75
RMSE:6.12
PRD:33.04%
CC:0.92
SNRimp:28.81 dB

整体来看:

复制代码
Fourier Attention > Wavelet Attention > Time Attention

Fourier Attention 的 MAE、RMSE 和 PRD 最低,同时 CC 和 SNRimp 最好。

作者认为主要原因在于 MCG 本身具有较明显的周期性。Fourier Attention 能够直接在频率空间建模这些周期结构,同时利用频谱差异区分生理信号与噪声。

论文 Figure 5:三种 Attention 的 Attention Map 可视化。(a) Time-domain;(b) Fourier-domain;(c) Wavelet Time-Frequency。

从 Attention Map 可以看到,Time Attention 更容易关注局部瞬时特征,而 Fourier Attention 对周期性频率结构更加敏感。


9. P、QRS、T 波形保留能力

只看整体 RMSE 并不足以评价医学信号去噪,因为去噪后如果破坏了 P 波、QRS 波群和 T 波,同样会影响诊断。

因此论文进一步评价了三个关键波形。

论文 Table II:不同 Attention Mechanism 对 P、QRS 和 T 波的保持效果。

Fourier Attention 对应的 RMSE 为:

复制代码
P Wave:0.745
QRS:0.444
T Wave:0.812

CC 为:

复制代码
P Wave:0.98
QRS:0.93
T Wave:0.99

在三种 Attention 中均为最佳结果,说明 Fourier Attention 不只是整体去噪误差更小,同时也能够较好地保留具有临床意义的波形特征。


10. 与其他去噪方法对比

论文将 TADNet 与多种传统方法和深度学习方法进行比较:

论文 Table III:不同去噪方法在 PLI、EMG、BW、CT Noise 和 CEN 五种噪声条件下的对比。

在相对简单的 PLI 和 EMG 下,大部分方法都能够取得较高 CC。

真正能拉开差距的是 BW、CT Noise 和 CEN 等复杂噪声。

尤其在 CT Noise 下,TADNet 达到:

复制代码
SNRimp:40.2 dB
PRD:32.10%
CC:0.77

说明模型在噪声与 MCG 有效频率发生重叠时仍然具有较强的信号恢复能力。

论文 Figure 6:CT Noise 条件下不同方法的去噪波形对比。

从图中可以看到,传统方法和部分深度学习模型仍存在明显残余噪声或波形失真,而 TADNet 的输出与 Ground Truth 更接近。

论文 Table IV:不同方法对 P、QRS、T 关键波形的恢复能力。

TADNet 在 CT Noise 下 P、QRS、T 的 RMSE 分别为:

复制代码
P:0.21
QRS:0.61
T:0.95

对应 CC:

复制代码
P:0.97
QRS:0.99
T:0.98

11. 模型复杂度

论文 Table V:不同模型的 Parameters、FLOPs、Training Time 和 Inference Time。

TADNet:

复制代码
Params:0.278M
FLOPs:20.5M
Training Time:2104 s
Inference Time:6.89 ms

对比:

复制代码
WCNN:0.628M / 279M FLOPs / 7.28 ms
WaveCRN:0.109M / 29.6M FLOPs / 5.88 ms
LUNet:0.152M / 20.8M FLOPs / 5.72 ms

虽然 Transformer 会带来额外计算,但 CNN Patch 先缩短了序列长度,因此整体计算量仍然保持在较低水平。

论文进一步估算:1 min、1000 Hz 的 MCG 数据约有 60000 points,按照 2048 points 分段后,TADNet 总处理时间约为 0.1 s,具备实时处理潜力。


12. 不同 SNR 下的鲁棒性

论文 Figure 7:不同输入 SNR 下 TADNet 的去噪性能。

论文 Table VI:不同 SNR 下的评价指标。

作者在 CEN 上进一步测试了从 5 dB 到 -30 dB 的噪声环境。

即使在 -30 dB 的极强噪声环境下,模型仍然保持一定的信号恢复能力,说明 TADNet 对不同噪声强度具有较好的鲁棒性。


13. 消融实验

论文 Figure 8:完整 TADNet 与三个消融版本在 CEN 下的输出对比。

论文 Table VII:Temporal Decomposition、Patch、CNN Layers 和 Attention Heads 的消融实验。

完整模型配置为:

复制代码
8 Attention Heads
4 CNN Layers
CNN Patch

结果:

复制代码
MAE:1.56
RMSE:4.68
PRD:25.2%
CC:0.93
SNRimp:31.1 dB

13.1 去掉 Trend Decomposition

去掉 TD 后:

复制代码
PRD:30.78%
SNRimp:29.42 dB

并且 Figure 8 中 T Wave 出现更明显的失真。

说明先把 Trend 和 Seasonal Component 分开建模是有效的。

13.2 去掉 Patch

不进行 Patch Division 时:

复制代码
MAE:3.992
SNRimp:26.30 dB

说明直接让 Transformer 处理长序列,不利于模型提取稳定的局部特征。

13.3 不使用 CNN 生成 Patch

直接进行普通 segmentation:

复制代码
PRD:56.8%
SNRimp:24.1 dB

明显比 CNN Patch 差。

这说明 CNN Patch 并不仅仅是在"切序列",其卷积过程本身承担了重要的 Local Feature Extraction。

13.4 Attention Heads

复制代码
4 Heads:PRD 25.7%,SNRimp 30.9 dB
8 Heads:PRD 25.2%,SNRimp 31.1 dB
16 Heads:PRD 25.4%,SNRimp 30.1 dB

Attention Head 数量影响相对较小,8 Heads 最优。

13.5 CNN Layers

论文最终采用 4 Layers。

当 CNN 增加到 6 Layers 时:

复制代码
PRD:74.0%
SNRimp:21.8 dB

性能出现明显下降,因此 CNN 并不是越深越好。


14. 总结

这篇论文的核心不是简单地"给 MCG 加一个 Transformer",而是针对 MCG 的时序特征做了三层处理:

复制代码
第一层:
Temporal Decomposition
→ 分离 Trend 和 Seasonal

第二层:
CNN Patch
→ 提取 Local Fine-grained Feature
→ 缩短 Transformer Sequence

第三层:
Fourier Attention
→ 建模 Global Periodicity
→ 利用 MCG 的频谱先验

从实验结果看,几个设计都是有效的。

其中比较值得关注的是 Fourier Attention。MCG 的 P、QRS、T 等心脏活动具有明显周期结构,因此直接在 Frequency Domain 计算 Attention,比完全在 Time Domain 中寻找相关性更加适合这一任务。

同时,CNN Patch 解决了两个问题:一方面降低 Transformer 的序列长度和计算量;另一方面通过卷积提前提取局部时序特征。

最终,TADNet 在 PLI、EMG、BW、CT Noise 和 CEN 五类噪声下均表现出较强的去噪能力,并且在复杂 CT Noise 条件下达到 SNRimp 40.2 dB。模型每个 2048-point segment 的推理时间为 6.89 ms,也具备进一步用于临床实时 MCG 去噪的潜力。

论文最后也指出了当前方法的局限:目前没有利用多通道 MCG 之间的空间信息,也没有引入 R-wave Position 等多模态先验。后续如果进一步建模不同 OPM Channel 之间的相关性,可能还有继续提升的空间。

相关推荐
hyuk的AI工坊1 小时前
从 Demo 到生产:LangChain4j 工程化落地全指南
人工智能
小小测试开发1 小时前
AI Agent 回归测试:Replay 录一次、CI 跑千遍,像 Jest 一样给非确定性系统写断言
人工智能·ci/cd
csdn_aspnet1 小时前
开源人工智能编码代理列表
人工智能·continue·cline·goose·aider·opencode·openhands
正经教主1 小时前
AI提示词工程(高阶)第20课:编程领域专项提示词设计
人工智能
程序员-李俞1 小时前
Mistral OCR 4真正改变的不是“识字”:文档AI正在变成Agent的数据入口
人工智能·windows·ai作画·aigc·ocr·ai编程·ai写作
新知图书1 小时前
7.1 User特质的周期提取与自进化(智能体工程)
人工智能·agent·ai agent·智能体
阿里云大数据AI技术1 小时前
免费领票!9月22日-24日,2026云栖大会杭州见
大数据·人工智能·agent
circuitsosk1 小时前
AI输出的“质检员”:构建智能体质量评估、异常检测与人工兜底的三层防线
人工智能·python·microsoft·正则表达式·langchain
IvanCodes1 小时前
我做了一个软著 Skill,可以一键生成申请材料
人工智能·agent