TSMamba:基于Mamba架构的高效时间序列预测基础模型

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: TSMamba通过其创新的架构设计和训练策略,成功解决了传统时间序列预测模型面临的多个关键问题。

在当今数据驱动的世界中,时间序列预测在多个领域扮演着关键角色。从医疗保健分析师预测患者流量,到金融分析师预测股市趋势,再到气候科学家预测环境变化,准确的时间序列预测都至关重要。然而,传统的预测模型面临着三个主要挑战:

  1. 数据获取难度:对于新兴模式的预测,相关训练数据往往难以获取或收集。例如,LOTSA(最大的公开时间序列数据集)仅包含约270亿个时间点,而相比之下,NLP领域的数据集如RedPajama-Data-v2包含数十万亿个标记。
  2. 泛化能力受限:传统模型难以在不同领域和应用场景之间迁移,每个新场景都需要重新训练模型。
  3. 数据效率低下:在训练数据有限的情况下容易出现过拟合现象。

论文创新与改进

1. 架构创新

TSMamba对传统Transformer架构进行了重大改进:

  1. 线性复杂度实现:- 传统Transformer:输入长度的二次方复杂度- TSMamba:实现线性复杂度,显著提升处理效率- 通过选择性状态空间实现信息的高效过滤与保留
  2. 双向编码器设计:- 前向编码器:捕捉因果关系依赖- 后向编码器:提取反向时间关系- 时间卷积模块:对齐前向和后向表示

2. 两阶段迁移学习方法

TSMamba采用创新的两阶段迁移学习方法,有效解决了训练数据不足的问题:

第一阶段 - 骨干网络训练:

  • 利用预训练的Mamba语言模型初始化
  • 通过分片式自回归预测优化骨干网络
  • 训练输入嵌入以适应时间序列数据

第二阶段 - 长期预测优化:

  • 恢复完整TSMamba架构
  • 加载第一阶段训练的骨干网络和嵌入层
  • 使用差异化学习率策略进行训练

3. 通道压缩注意力机制

为处理多变量时间序列的复杂性,TSMamba引入了创新的通道压缩注意力模块:

该模块包含四个关键步骤:

  1. 时间卷积:对齐不同通道的时间维度
  2. 通道压缩:将通道数从D压缩到⌈log₂(D)⌉
  3. 注意力计算:在压缩通道维度上提取依赖关系
  4. 通道恢复:将压缩表示映射回原始通道数

这种设计既保证了对跨通道依赖关系的有效捕捉,又避免了过度拟合的风险。

实验评估与性能分析

实验设置

TSMamba在实验中采用以下配置:

  • 3层编码器
  • 768维嵌入大小
  • 固定512长度的输入序列

实验评估分为两个主要场景:零样本预测和全量数据训练。

零样本预测结果

基准数据集评估

在ETTm2和Weather两个标准数据集上进行了全面测试:

  1. 预测周期:- 短期:96小时- 中期:192小时- 长期:336小时、720小时
  2. 评估指标:- 均方误差(MSE)- 平均绝对误差(MAE)

关键发现

  • 在长期预测(336和720小时)场景表现突出
  • 与使用更大规模预训练数据的模型相比保持竞争力
  • 在平均性能上达到领先水平,尤其是在数据效率方面

全量数据训练结果

实验数据集

在三个主要数据集上进行了详细评估:

  • ILI (流感数据集)
  • ETTm2 (电力负载数据集)
  • Weather (气象数据集)

性能对比

主要结果:

  1. 整体性能:- 相比GPT4TS提升了15%的性能- 超越了专门的时间序列预测模型PatchTST- 在大多数预测长度上保持最优表现
  2. 分数据集表现:- ETTm2数据集:平均MSE降低至0.257,MAE降低至0.317- Weather数据集:平均MSE达到0.222,MAE达到0.258- ILI数据集:显著优于所有基准模型
  3. 稳定性分析:- 在不同预测长度下保持稳定表现- 预测结果的方差较小,显示出较高的可靠性

消融研究

为验证各个模块的有效性,进行了详细的消融实验:

  1. 通道压缩注意力模块的影响:- 完整模型vs去除压缩机制- 不同压缩比率的效果对比
  2. 两阶段训练策略的贡献:- 单阶段vs两阶段训练的效果对比- 不同预训练策略的影响
  3. 双向编码器的作用:- 仅使用前向编码器的效果- 双向编码器带来的性能提升

这些实验结果证实了TSMamba各个创新组件的必要性和有效性。

技术细节

论文没给源代码,我们按照论文的思路进行一个简单的复现

关键技术实现

1. 模型核心组件

预处理模块

 classPreprocessModule(nn.Module):
     def__init__(self):
         super().__init__()
         # 实例归一化
         self.norm=ReverseInstanceNorm()
         # 1D卷积实现输入嵌入
         self.embedding=nn.Conv1d(
             in_channels=1,
             out_channels=model_dim,
             kernel_size=patch_length,
             stride=patch_length
         )

通道压缩注意力模块

 classChannelCompressedAttention(nn.Module):
     def__init__(self, dim, num_channels):
         super().__init__()
         # 时间卷积层
         self.temporal_conv=nn.Conv1d(dim, dim, kernel_size=3, padding=1)
         # 通道压缩
         compressed_channels=ceil(log2(num_channels))
         self.channel_compress=nn.Conv1d(num_channels, compressed_channels, 1)
         # 注意力层
         self.attention=nn.MultiheadAttention(dim, num_heads=8)
         # 通道恢复
         self.channel_expand=nn.Conv1d(compressed_channels, num_channels, 1)

2. 优化策略

  1. 两阶段训练流程:- 第一阶段:优化骨干网络- 第二阶段:微调预测头- 使用差异化学习率
  2. 损失函数设计
 defhuber_loss(y_pred, y_true, delta=1.0):
     residual=torch.abs(y_pred-y_true)
     quadratic_loss=0.5*residual.pow(2)
     linear_loss=delta*residual-0.5*delta.pow(2)
     returntorch.mean(torch.where(residual<=delta, 
                                 quadratic_loss, 
                                 linear_loss))

总结

TSMamba通过其创新的架构设计和训练策略,成功解决了传统时间序列预测模型面临的多个关键问题。其主要贡献包括:

  1. 实现了线性复杂度的计算效率
  2. 提出了有效的两阶段迁移学习方法
  3. 设计了创新的通道压缩注意力机制

这些创新为时间序列预测领域提供了新的研究方向和实践指导。随着技术的不断发展,我们期待看到更多基于TSMamba的改进和应用,推动时间序列预测技术继续向前发展。

论文:

https://avoid.overfit.cn/post/7813f935a8584f4199d146bce348f787

目录
相关文章
|
2月前
|
人工智能 测试技术 数据处理
首个Mamba+Transformer混合架构多模态大模型来了,实现单卡千图推理
【10月更文挑战第18天】《LongLLaVA: Scaling Multi-modal LLMs to 1000 Images Efficiently via Hybrid Architecture》提出了一种新型多模态大模型LongLLaVA,结合了Mamba和Transformer架构,通过系统优化实现在单张A100 80GB GPU上处理近千张图像的突破。该模型在视频理解、高分辨率图像分析和多模态智能体任务中表现出色,显著提升了计算效率。
163 64
|
1月前
|
机器学习/深度学习 自然语言处理 分布式计算
大规模语言模型与生成模型:技术原理、架构与应用
本文深入探讨了大规模语言模型(LLMs)和生成模型的技术原理、经典架构及应用。介绍了LLMs的关键特点,如海量数据训练、深层架构和自监督学习,以及常见模型如GPT、BERT和T5。同时,文章详细解析了生成模型的工作原理,包括自回归模型、自编码器和GANs,并讨论了这些模型在自然语言生成、机器翻译、对话系统和数据增强等领域的应用。最后,文章展望了未来的发展趋势,如模型压缩、跨模态生成和多语言多任务学习。
130 3
|
2月前
|
存储 分布式计算 API
大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构
大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构
105 0
|
13天前
|
机器学习/深度学习 测试技术 定位技术
新扩散模型OmniGen一统图像生成,架构还高度简化、易用
近期,一篇题为“OmniGen: Unified Image Generation”的论文介绍了一种新型扩散模型OmniGen,旨在统一图像生成任务。OmniGen架构简洁,无需额外模块即可处理多种任务,如文本到图像生成、图像编辑等。该模型通过修正流优化,展现出与现有模型相当或更优的性能,尤其在图像编辑和视觉条件生成方面表现突出。OmniGen仅含3.8亿参数,却能有效处理复杂任务,简化工作流程。尽管如此,OmniGen仍存在对文本提示敏感、文本渲染能力有限等问题,未来研究将继续优化其架构与功能。
41 16
|
27天前
|
网络协议 网络架构
TCP/IP协议架构:四层模型详解
在网络通信的世界里,TCP/IP协议栈是构建现代互联网的基础。本文将深入探讨TCP/IP协议涉及的四层架构,以及每一层的关键功能和作用。
128 5
|
28天前
|
机器学习/深度学习 存储 人工智能
【AI系统】模型演进与经典架构
本文探讨了AI计算模式对AI芯片设计的重要性,通过分析经典模型结构设计与演进、模型量化与压缩等核心内容,揭示了神经网络模型的发展现状及优化方向。文章详细介绍了神经网络的基本组件、主流模型结构、以及模型量化和剪枝技术,强调了这些技术在提高模型效率、降低计算和存储需求方面的关键作用。基于此,提出了AI芯片设计应考虑支持神经网络计算逻辑、高维张量存储与计算、灵活的软件配置接口、不同bit位数的计算单元和存储格式等建议,以适应不断发展的AI技术需求。
36 5
|
2月前
|
机器学习/深度学习 网络架构 计算机视觉
目标检测笔记(一):不同模型的网络架构介绍和代码
这篇文章介绍了ShuffleNetV2网络架构及其代码实现,包括模型结构、代码细节和不同版本的模型。ShuffleNetV2是一个高效的卷积神经网络,适用于深度学习中的目标检测任务。
106 1
目标检测笔记(一):不同模型的网络架构介绍和代码
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
【AI大模型】BERT模型:揭秘LLM主要类别架构(上)
【AI大模型】BERT模型:揭秘LLM主要类别架构(上)
|
3月前
|
机器学习/深度学习 数据采集
详解Diffusion扩散模型:理论、架构与实现
【9月更文挑战第23天】扩散模型(Diffusion Models)是一类基于随机过程的深度学习模型,通过逐步加噪和去噪实现图像生成,在此领域表现优异。模型分正向扩散和反向生成两阶段:前者从真实数据加入噪声至完全噪音,后者则学习从噪声中恢复数据,经由反向过程逐步还原生成清晰图像。其主要架构采用U-net神经网络,实现过程中需数据预处理及高斯噪声添加等步骤,最终通过模型逆向扩散生成新数据,具有广泛应用前景。
121 0
|
20天前
|
弹性计算 API 持续交付
后端服务架构的微服务化转型
本文旨在探讨后端服务从单体架构向微服务架构转型的过程,分析微服务架构的优势和面临的挑战。文章首先介绍单体架构的局限性,然后详细阐述微服务架构的核心概念及其在现代软件开发中的应用。通过对比两种架构,指出微服务化转型的必要性和实施策略。最后,讨论了微服务架构实施过程中可能遇到的问题及解决方案。