TimeDistill:通过跨架构蒸馏的MLP高效长期时间序列预测

原文地址:https://arxiv.org/abs/2502.15016

发表会议:暂定(但是Star很高)

代码地址:无

作者:Juntong Ni (倪浚桐), Zewen Liu (刘泽文), Shiyu Wang(王世宇), Ming Jin(金明), Wei Jin(金卫)

团队:埃默里大学(Emory),格里菲斯大学(Griffith)

同时本文在实验部分我也结合了这篇文章的借鉴:TimeDistill:跨架构知识蒸馏,使用 MLP 实现高效长程时间序列预测-腾讯云开发者社区-腾讯云https://cloud.tencent.com/developer/article/2503439


摘要

本文提出了一种跨架构知识蒸馏(KD)框架TimeDistill,用于提高轻量级多层感知机(MLP)模型在长期时间序列预测任务上的性能。作者观察到,尽管先进的架构如Transformer和CNN在性能上表现出色,但由于计算和存储需求高,在大规模部署中面临挑战。相比之下,简单的MLP模型具有更高的效率,但性能较低。TimeDistill的关键思想是从教师模型(如Transformer、CNN)中提取补充模式,特别是时间和频域中的多尺度和多周期模式,并将其蒸馏到学生MLP模型中。作者从理论上分析了TimeDistill的优势,表明所提出的蒸馏过程可以视为一种特殊的mixup数据增强策略。实验结果表明,TimeDistill在所有数据集上都能显著优于独立的MLP模型,最高可提升18.6%,并且在大多数情况下也优于教师模型,同时实现了高达7倍的推理加速和高达130倍的参数减少。

此外,作者还探讨了TimeDistill的versatility,包括使用不同的教师模型、学生模型以及不同的历史窗口长度。结果表明,TimeDistill能够从各种教师模型中有效地学习知识,并且能够显著提升其他轻量级模型(如TSMixer和LightTS)的性能。同时,TimeDistill在不同历史窗口长度下都能保持优于教师模型的性能。

总之,本文提出的TimeDistill框架为长期时间序列预测任务提供了一种高效且通用的解决方案,在保持轻量级模型架构的同时,能够显著提升预测性能,并且具有良好的适应性。

科普

  1. KD(知识蒸馏)的概念:一种将知识从更大更复杂的模型(教师)转移到更小更简单的模型(学生)的技术,同时保持可比的性能。
  2. transformer的做法:利用了捕捉成对依赖关系和提取顺序数据中的多级表示的强大能力

教师模型里的什么“知识”应该提炼到MLP?

利用不同架构的互补能力的价值,主要聚焦于两个关键的时序模式:

  • 多尺度模式 : 现实世界的时间序列通常在多个时间尺度上显示变化。表现良好的模型在最细粒度尺度上也能准确地在更粗糙的尺度上表现, 而 MLP 在大多数尺度上都失败。
  • 多周期模式 : 时间序列通常表现出多个周期性。表现良好的模型能够捕捉与真实数据相似的周期性, 但 MLP 无法捕捉这些周期性。
性能比较

TimeDistill和传统KD的区别,以及它的处理办法和优点?

TIMEDISTILL专注于对齐MLP和教师之间的多尺度和多周期模式,而不是仅仅匹配传统KD中的预测:首先对时间序列进行下采样以进行时间多尺度对齐,并应用快速傅立叶变换(FFT)来对齐频域中的周期分布。KD过程可以离线进行,将繁重的计算从延迟关键的推理阶段(毫秒级问题)转移到对时间不太敏感的训练阶段,在那里可以接受更长的处理时间。

ECL数据集所有预测长度(96、192、336、720)的平均模型效率比较。

​与之前只关注预测输出的LightTS(另一篇KD论文)不同

 1️⃣ LightTS(旧方法):就像专门给「学霸小组」(集成分类器)设计的教学大纲,只能让组内学霸互相学习。

但问题是:

- 只适用于特定班级(集成模型)

- 无法推广到其他类型的学生(比如普通学生MLP)

2️⃣ 本文方法(新方法):更像针对「时间科目」的定制教学,专门攻克两类难题:

- 多尺度题(比如同时分析每小时+每天的交通数据变化)

- 多周期题(比如识别天气中的日循环+年循环规律)

并且允许:

✅ 跨班级教学(如让Transformer学霸教MLP学渣)

✅ 提炼学科专用技巧(而非通用解题套路)

为什么选择蒸馏?

        MLP(多层感知机)在效率上的优势以及其在性能上的局限性,并提出知识蒸馏(KD)作为一种可能的解决方案。尽管MLP在整体性能上可能不如Transformer或CNN等复杂模型,但它在特定样本上可能表现更好。通过分析MLP与教师模型的预测误差,可以发现MLP在某些子集上具有优势,这为知识蒸馏提供了潜在的价值。

        关键点 MLP的效率与性能权衡: MLP在效率上表现优异,但在整体性能上通常不如Transformer和CNN模型。 尽管如此,MLP在某些样本上可能优于教师模型,这表明它们在特定任务上具有不同的优势。

        胜率的计算: 通过比较MLP和教师模型的预测误差,计算MLP优于教师模型的比例(胜率)。 实验表明,尽管MLP总体上不如教师模型,但它在某些数据集(如Traffic)上表现出较高的胜率(81.19%),说明不同模型在不同子集上的表现存在差异。

        知识蒸馏的潜力: 从教师模型中提取互补知识到MLP中,可以弥补MLP的不足,同时利用其在特定样本上的优势。

知识蒸馏的局限性:

  1. 过拟合噪声:直接对齐预测可能过拟合教师模型中的噪声,导致知识不稳定。
  2. 复杂模式的复制困难:MLP可能难以直接复制教师模型预测中的复杂模式(如季节性、趋势等)。
  3. 忽略中间特征:仅对齐预测忽略了教师模型中间特征的有价值知识。
MLP的成功率(%)在输入-720predict-96设置下跨数据集的教师模型。成功率通常很高(平均值:49.92%,中位数:49.96%),这表明MLP和教师模型在不同的样本上表现出色,重叠最少。

KD应该提取什么?

MLP因难以捕获时间序列的多尺度趋势和周期性模式导致预测偏差。实验显示,教师模型在粗粒度趋势(如尺度3)和主频周期性上表现优异,而MLP显著落后。因此,需通过知识蒸馏将教师模型的这些互补模式引入MLP,以提升其时间序列预测能力。

在ECL数据集的不同下采样尺度上模型预测的可视化。MLP在多个尺度下的性能一直很差,而其他模型的性能很好,这突出了捕捉多尺度模式的重要性。

时间序列中的周期性在频域中通过将时间序列转换为频谱图来显现,其中x轴表示频率,周期性计算为时间序列长度 S 除以频率。

ECL数据集上各种模型的预测谱图与地面真实值。MLP无法匹配地面真实情况中几个主要频率的振幅,红色数字表示最重要频率的振幅差异。

下采样(Downsampling) 是指通过降低时间序列的分辨率(如减少数据点的数量),提取更粗粒度的数据表示。其核心目的是捕捉数据的宏观趋势或长期依赖,同时过滤掉高频噪声或细节波动。常用方法包括:

  1. 平均池化:将相邻多个数据点取平均,合并为一个点。
  2. 最大/最小池化:取相邻点的最大值或最小值。
  3. 卷积操作:使用低通滤波器(如移动平均)平滑数据后,按步长跳过部分点。

知识蒸馏(KD)在时间序列中的演进

1️⃣ 传统KD(Hinton, 2015): 核心:将复杂教师模型的知识迁移至轻量学生模型 局限:依赖输出分布对齐,未针对时序特性设计

2️⃣ 时序领域现有方法: CAKD(Xu等, 2022):结合对抗学习+对比学习的两阶段蒸馏(特征级+预测级) LightTS(Campos等, 2023):专为集成分类器设计,架构兼容性差 ❗ 共性缺陷:未聚焦时序特有模式(如多尺度、多周期)

3️⃣ 本文创新: 时序模式蒸馏:显式提取多尺度(时间域)与多周期(频域)关键模式 跨架构突破:首次实现异构模型间KD(如Transformer→MLP),解决架构差异挑战 (对比:传统KD通用但粗放 → 本文定向提炼时序核心规律 + 跨架构兼容性)

方法

背景与目标

        提出了一个新颖的知识蒸馏(KD)框架 TIMEDILL,用于时间序列。其核心思想是将知识从一个固定的、预训练的教师模型 f_{t}转移到学生 MLP 模型 f_{s}​。

模型结构

优化目标

整个框架的优化目标是通过监督损失L_{sup}和知识蒸馏损失L_{KD}^{Y}L_{KD}^{H}来最小化学生模型的预测误差和特征误差。

pipeline

在特征和预测级别上使用(a)多尺度蒸馏和(b)多周期蒸馏将知识从教师模型蒸馏到学生MLP。
(a)多尺度蒸馏涉及将原始时间序列下采样为多个较粗尺度,并在学生和教师之间调整这些尺度。
(b)多周期蒸馏应用FFT将时间序列转换为谱图,然后在应用softmax之后匹配周期分布。

解释图(a)

        多尺度蒸馏的过程,用于将教师模型的多尺度模式知识转移到学生模型中 教师模型和学生模型的比较:

  1. 教师模型(蓝色曲线)在所有尺度上都能较好地捕捉时间序列的趋势和模式。
  2. 学生模型(棕色曲线)在较细的尺度(如Scale 0)上可能表现较好,但在较粗的尺度(如Scale 3)上表现较差,显示出其在处理多尺度模式上的局限性。

多尺度蒸馏

核心概念

TimeDistill 的核心组件之一是多尺度蒸馏,通过不同采样率表示同一时间序列,使 MLP 能有效捕捉粗粒度和细粒度模式。通过预测级别和特征级别的联合蒸馏,确保 MLP 不仅复现教师模型的多尺度预测,还能对齐其中间层的内部表示。

多周期蒸馏

预测层面

特征层面

总体优化与理论分析

总体训练损失

理论解释

        从数据增强的角度理解多尺度和多周期蒸馏损失,其类似于mixup策略。这种蒸馏方法通过混合真实值和教师预测来增强数据,为时间序列预测带来以下好处:增强泛化能力、显式整合模式、稳定训练动态。这些优势有助于减轻过拟合、提供隐藏模式见解,并支持更平滑的优化和更好的收敛。

  1.         通过同时优化监督损失(学生直接学真实值)和多尺度蒸馏损失(学生学教师的多尺度特征),实际上就相当于在优化这些“增强样本”上的损失。
  2.         通过同时优化监督损失(学生直接学真实值的周期分布)和多周期蒸馏损失(学生学教师的周期分布),实际上就相当于在优化这些“增强样本”上的KL散度损失。 好处:这种混合策略让学生的训练目标更平滑,帮助它更好地捕捉周期性模式,从而提高预测的稳定性。

想象一下,你在教一个学生做数学题,但直接教他可能会有些吃力。于是,你决定用一种特别的方法来辅助教学:把原题(原始数据)和标准答案(教师模型的预测)混合起来,形成一个“增强版”的题目。同时,你希望学生不仅能做对原题(监督损失),还能从标准答案里学到解题思路(周期蒸馏损失)。

实验

效果全面领先

TimeDistill在8个时序数据集上进行实验,其中7个数据集的MSE指标优于基线教师模型,在所有数据集的MAE指标上均取得最佳表现,展现出卓越的预测能力。

兼容多种教师模型

TimeDistill适用于多种教师模型,能够有效蒸馏知识并提升MLP学生模型的性能,同时相较教师模型本身也有显著提升。

兼容多种学生模型

TimeDistill不仅适用于 MLP 结构,还可以增强轻量级学生模型的性能。例如,在以ModernTCN作为教师模型的实验中,TimeDistill使两个轻量模型TSMixer和LightTS的MSE分别降低6.26%和8.02%,验证了其在不同学生模型上的适应性。

兼容多种回溯窗口长度

时序模型的预测性能往往随回溯窗口(历史观测长度)变化而波动,而 TimeDistill在所有窗口长度下均能提升MLP表现,甚至超越教师模型,体现出对不同时间依赖模式的强大适应能力。

ETTh1蒸馏前后时间尺度和光谱图的预测比较。MLP、Teacher(ModernTCN)和TIMEDISTILL的MSE分别为0.790、0.365和0.366,表明TIMEDISTILL通过多尺度和多周期提取来桥接时域和频域间隙。

消融实验

TimeDistill通过消融实验进一步验证了模型设计的合理性。值得注意的是,即使去掉Ground Truth监督信号(w/o sup),TimeDistill仍然能够显著提升MLP预测精度,表明其可以从教师模型中有效学习到丰富的知识。

idea

从先进的时间序列模型中提取,例如时间序列基础模型,并结合多变量模式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/81071.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DeepSeek最新大模型发布-DeepSeek-Prover-V2-671B

2025 年 4 月 30 日,DeepSeek 开源了新模型 DeepSeek-Prover-V2-671B,该模型聚焦数学定理证明任务,基于混合专家架构,使用 Lean 4 框架进行形式化推理训练,参数规模达 6710 亿,结合强化学习与大规模合成数据…

如何用AI生成假期旅行照?

以下是2025年最新AI生成假期旅行照片的实用工具推荐及使用指南,结合工具特点、研发背景和适用场景进行综合解析: 一、主流AI旅行照片生成工具推荐与对比 1. 搜狐简单AI(国内工具) • 特点: • 一键优化与背景替换&…

ElaticSearch

ElaticSearch: 全文搜索 超级强,比如模糊查询、关键词高亮等 海量数据 高效查询,比传统关系数据库快得多(尤其是搜索) 灵活的数据结构(Schema灵活,可以动态字段) 分布式高可用,天…

Android开发,实现一个简约又好看的登录页

文章目录 1. 编写布局文件2.设计要点说明3. 效果图4. 关于作者其它项目视频教程介绍 1. 编写布局文件 编写activity.login.xml 布局文件 <?xml version"1.0" encoding"utf-8"?> <androidx.appcompat.widget.LinearLayoutCompat xmlns:android…

机器学习:【抛掷硬币的贝叶斯后验概率】

首先,抛硬币的问题通常涉及先验概率、似然函数和后验概率。假设用户可能想通过观察一系列的正面(H)和反面(T)来更新硬币的偏差概率。例如,先验可能假设硬币是均匀的,但随着观察到更多数据,用贝叶斯定理计算后验分布。 通常,硬币的偏差可以用Beta分布作为先验,因为它…

Echarts 问题:自定义的 legend 点击后消失,格式化 legend 的隐藏文本样式

文章目录 问题分析实现步骤代码解释问题 如下图所示,在自定义的 legend 点击后会消失 分析 我把隐藏的图例字体颜色设为灰色,可以借助 legend.formatter 和 legend.textStyle 结合 option.series 的 show 属性来达成。以下是具体的实现步骤和示例代码: <!DOCTYPE ht…

光谱相机如何提升目标检测与识别精度

光谱相机&#xff08;多光谱/高光谱&#xff09;通过捕捉目标在多个波段的光谱特征&#xff0c;能够揭示传统RGB相机无法感知的材质、化学成分及物理特性差异。以下是提升其目标检测与识别精度的核心方法&#xff1a; ‌1. 硬件优化&#xff1a;提升数据质量‌ ‌(1) 光谱分辨…

springboot项目配置nacos,指定使用环境

遇到这样一个问题&#xff0c;在开发、测试、生成环境之间切换的问题。 大多数的操作是通过修改spring.profiles.active来确定指向使用的环境配置文件&#xff0c;对应项目中需要增加对应的配置文件。 但是现在几乎所有公司都会有代码管理不管是SVN、git&#xff0c;这样就会涉…

AI代码审查的落地实施方案 - Java架构师面试实战

AI代码审查的落地实施方案 - Java架构师面试实战 本文通过模拟一位拥有十年Java研发经验的资深架构师马架构与面试官之间的对话&#xff0c;深入探讨了AI代码审查的落地实施方案。 第一轮提问 面试官&#xff1a; 马架构&#xff0c;请介绍一下您对AI代码审查的理解。 马架…

TDengine 订阅不到数据问题排查

简介 TDengine 在实际生产应用中&#xff0c;经常会遇到订阅程序订阅不到数据的问题&#xff0c;总结大部分都为使用不当或状态不正确等问题&#xff0c;需手工解决。 查看服务端状态 通过 sql 命令查看有问题的 topic 和consumer_group 组订阅是否正常。 select * from inf…

二、UI自动化测试02--元素定位方法

目录 一、定位⼀组元素⽅法二、XPath 定位⽅法1. 路径策略1.1 路径值获取⽅法 2. 利⽤元素属性策略利⽤元素属性策略的注意事项 3. 属性和逻辑结合4. 层级和属性结合策略5. XPath 延伸⽅法 三、CSS 定位⽅法1. CSS 策略: id选择器/class选择器/元素选择器/属性选择器2. 属性选择…

HotSpot的算法细节

可达性分析算法 以一系列“GC Roots”根对象作为起始节点集&#xff0c;从这些节点开始&#xff0c;根据引用关系向下搜索&#xff0c;搜索过程所走过的路径称为“引用链”&#xff08;Reference Chain&#xff09;&#xff0c;如果某个对象到GC Roots间没有任何引用链相连&am…

Transformer数学推导——Q27 证明时序注意力(Temporal Attention)在视频模型中的帧间依赖建模

该问题归类到Transformer架构问题集——注意力机制——跨模态与多模态。请参考LLM数学推导——Transformer架构问题集。 在视频理解任务中&#xff0c;捕捉帧与帧之间的时间依赖关系&#xff08;如动作的连贯性、物体的运动轨迹&#xff09;是核心挑战。时序注意力&#xff08…

服务器和数据库哪一个更重要

在当今数字化的时代&#xff0c;服务器和数据库都是构建和运行各种应用系统的关键组成部分&#xff0c;要说哪一个更重要&#xff0c;其实很难简单地给出定论。 服务器就像是一个强大的引擎&#xff0c;为应用程序提供了稳定的运行环境和高效的计算能力。它负责接收和处理来自…

【Android】四大组件之Service

目录 一、什么是Service 二、启停 Service 三、绑定 Service 四、前台服务 五、远程服务扩展 六、服务保活 七、服务启动方法混用 你可以把Service想象成一个“后台默默打工的工人”。它没有UI界面&#xff0c;默默地在后台干活&#xff0c;比如播放音乐、下载文件、处理…

pytest 技术总结

目录 一 pytest的安装&#xff1a; 二 pytest有三种启动方式&#xff1a; 三 用例规则&#xff1a; 四 配置框架&#xff1a; 一 pytest的安装&#xff1a; pip install pytest # 安装 pip install pytest -U # 升级到最新版 二 pytest有三种启动方式&#xff1a; 1…

redis 有序集合zrange和zrangebyscore的区别

起因是查询数据&#xff0c;用了zrangebyscore 但是一直显示没数据 具体命令zrangebyscore key 0 -1 withscores, 原有印象中一直是这么用的&#xff0c;但是突然查不出来了&#xff0c; 于是搜了下问题所在。 通过分数查看 不能用0和-1表示最小和最大&#xff0c;只能用分数来…

Tableau 基础表制作

目录 1.数据连接 2. 数据可视化 3. 基础表制作 3.1 对比分析&#xff1a;比大小 1. 柱状图 2. 条形图 3. 热力图 4. 气泡图 5. 词云 3.2 变化分析&#xff1a;看趋势 1. 折线图 2. 面积图 3.3 构成分析&#xff1a;看占比 1. 饼图 2. 树地图 3. 堆积图 3.4 关…

反序列化漏洞1

一、PHP类与对象 1. 类 概念理解: 类是共享相同结构和行为的对象的集合&#xff0c;可以理解为特征的提取。例如将耳朵长、尾巴短、红眼睛、吃胡萝卜、蹦跳行走的动物特征抽象为"兔子"类。代码结构: 使用class关键字定义类类名遵循大驼峰命名法包含成员变量(属性)和…