【时序大模型总结】学习记录(1)

1.TimeGPT-1

思路:在来自不同领域的大量数据上训练模型,然后对未见过的数据产生零样本的推断。
作者对TimeGPT进行了超过1000亿个数据点的训练,这些数据点都来自开源的时间序列数据。该数据集涵盖了广泛的领域,从金融、经济和天气,到网络流量、能源和销售。
在这里插入图片描述

TimeGPT 是一个基于 Transformer 的时间序列模型,具有基于 [Vaswani et al., 2017] 的自注意力机制。 TimeGPT 采用历史值窗口来生成预测,并添加本地位置编码来丰富输入。该架构由多层编码器-解码器结构组成,每层都有残差连接和层归一化。最后,线性层将解码器的输出映射到预测窗口维度。一般的直觉是,基于注意力的机制能够捕获过去事件的多样性并正确推断未来潜在的分布。

TimeGPT模型结构:

  • 架构基础:TimeGPT基于Transformer架构,使用自注意力机制,类似于在自然语言处理(NLP)中使用的模型。
  • 输入:模型接受历史值窗口作为输入,并添加局部位置编码以丰富输入信息。
    编码器-解码器结构:包含多层,每层都有残差连接和层归一化。
  • 输出:最后,一个线性层将解码器的输出映射到预测窗口维度。

损失函数和评价指标:

  • 损失函数:文章没有明确指出用于训练TimeGPT的具体损失函数,但通常时间序列预测模型会使用均方误差(MSE)或其变体作为损失函数。
  • 评价指标:
    相对平均绝对误差 (rMAE):用于衡量模型预测与实际值之间的误差,是平均绝对误差(MAE)与基线模型(如季节性天真模型)性能的比值。
    相对均方根误差 (rRMSE):与rMAE类似,但基于均方根误差(RMSE)计算。
  • 其他关键点:
    训练数据集:TimeGPT在超过1000亿数据点的公开可用时间序列数据集上进行训练,涵盖金融、经济、医疗保健、天气等多个领域。
    applicable to a dataset with n time series and a forecast horizon of h, are described in Equation 2

不确定性量化:

TimeGPT使用基于历史错误的一致性预测来估计预测区间,这有助于风险评估和决策制定。
零样本推断 (Zero-shot inference):TimeGPT能够在未经微调的情况下直接在新的预测任务上表现良好。
微调 (Fine-tuning):通过在特定任务的数据集上进一步训练,可以调整模型参数以适应新任务的需求。

https://blog.csdn.net/fengdu78/article/details/134301864

Chronos模型

注意:内容由kimi大模型生成,未做完全的校正,请辨别使用。

这篇文章介绍了一个名为Chronos的时间序列预测框架。Chronos利用了预训练的概率时间序列模型,并通过以下方式进行操作:

模型结构:

  • Chronos通过缩放和量化将时间序列值转换为固定词汇表中的离散标记(tokens)。
  • 它使用现有的基于Transformer的语言模型架构来训练这些标记化的时间序列,不需要对模型架构进行任何改变。
  • Chronos选用了T5家族的变体作为其主要架构,这些变体的参数量从20M到710M不等。

损失函数:

  • Chronos使用交叉熵损失函数来训练模型,该损失函数衡量的是量化的真实标签分布与模型预测分布之间的差异。

评价指标:

  • 文章使用了加权分位数损失(WQL)来评估概率预测的质量,这是一种与连续排序概率分数(CRPS)相关的度量,常用于评估概率预测。
  • 为了评估点预测性能,文章使用了平均绝对缩放误差(MASE),这是一种考虑了时间序列季节性的误差度量。

数据增强技术:

  • Chronos结合了数据增强策略,包括TSMixup和KernelSynth,以增强训练数据的多样性,提高模型的鲁棒性和泛化能力。
  • TSMixup通过随机采样基础时间序列,并基于它们进行凸组合来生成新的时间序列。
  • KernelSynth使用高斯过程通过随机组合核函数来生成合成时间序列。

实验结果:

  • Chronos在包含42个数据集的综合基准测试中表现出色,这些数据集既包括了训练语料库中的数据集,也包括了新的未见数据集。
  • Chronos模型在训练语料库中的数据集上显著优于其他方法,在新的未见数据集上也展现出了可比性,甚至是更好的零样本(zero-shot)性能。

结论:

  • Chronos证明了预训练的语言模型架构在时间序列预测任务上的有效性,即使是在没有特定于时间序列的设计或特征的情况下。
  • Chronos作为一个通用的时间序列模型,其准确性和相对较小的模型尺寸使其成为零样本预测应用的首选工具。
  • 通过进一步的微调,Chronos模型的性能还有望得到提升。

文章还讨论了Chronos的未来发展方向,包括扩展到多变量预测、考虑共变量的时间序列预测,以及其他时间序列分析任务。此外,文章还探讨了提高模型推理速度和处理更高频数据的可能性。最后,文章强调了高质量公共时间序列数据集的需求,以及合成数据生成方法的进步,这些对于发展和改进像Chronos这样的预训练模型至关重要。

回归函数评价指标

MSE均方误差
MSE(Mean Square Error):
在这里插入图片描述

    均方误差描述了样本真实值与预测值差方求和的平均值,在机器学习中,利用均方误差最小化优化模型的方法称为“最小二乘法”

RMSE
在这里插入图片描述

    RMSE(Root Mean Square Error)即对MSE开平方根:

MAE平均绝对误差
在这里插入图片描述
MAE(Mean Absolute Erroe)即真实值与预测值差的绝对值和求平均:

带归一化的误差求解方法
MAPE
MAPE(Mean Absolute Percentage Error):
在这里插入图片描述

    即求所有样本真实值与预测值差绝对值与真实值的比例的和求平均。

MSPE
MASE(Mean Scaled Percentage Error)平均平方百分比误差:
在这里插入图片描述
即求所有样本的真实值与预测值的差与真实值的比例求平方的和求平均。

MASE(chronos大模型中使用)
mean absolute scaled error (MASE, Hyndman & Koehler (2006))
平均绝对比例误差(Mean Absolute Scaled Error,简称MASE)是一种用于评估时间序列预测模型性能的指标。与其他误差指标不同,MASE 可以用于比较不同时间序列数据集的模型性能,因为它可以归一化误差值。
在这里插入图片描述
通常,MASE的值越小,表示预测的准确度越高。MASE的值可以为任何正实数,因此没有固定的范围或取值区间。


简单理解方式:本模型的MAE与naive模型或者说基线模型的比值。
在这里插入图片描述

  1. MASE 表示预测算法相对于基线模型预测的有效性。其值大于1表示该算法与天真预测相比表现较差。

  2. 当任何时间步的实际时间序列输出为零时,MASE 可避免平均绝对百分比误差 (MAPE) 所面临的问题。在这种情况下,MAPE 的输出是无限的,没有意义。不过,我们注意到,对于在所有时间步长上所有值都等于零的时间序列,MASE 输出也将是不确定的,但这种时间序列并不现实。

  3. MASE 与预测规模无关,因为它是用预测误差比来定义的。这意味着,如果我们预测的是每小时通过路由器的互联网流量包数等高价值时间序列,与预测每小时通过繁忙交通灯的行人数相比,MASE 值将是相似的。

Mean squared scaled error (MSSE) or root mean squared scaled error (RMSSE).
与MASE类似。

sktime里有各种评价指标的实现。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
MAE(平均绝对误差): MAE 值为 1.468。它表示预测值和实际值之间误差的平均值。在本例中,平均误差幅度为 1.468 度。MAE 值越低,表示准确度越高,因为这意味着模型的预测值平均更接近实际值。
MSE(平均平方误差): MSE 值为 2.805。它衡量的是预测值和实际值之间平方差的平均值。与 MAE 相比,MSE 更重视较大的误差。在本例中,平均平方误差为 2.805。需要强调的是,该指标的单位是原始量级的平方单位,在本例中为平方度。MSE 越低,表示精度越高。
RMSE(均方根误差): RMSE 值为 1.675。它是 MSE 的平方根,用于衡量误差的标准偏差。RMSE 与预测值和实际值的单位相同。在本例中,误差的平均标准偏差为 1.675 度。同样,RMSE 越低,表示精度越高。
MAPE(平均绝对百分比误差): MAPE 值为 8.42%。它表示预测值和实际值之间相对于实际值的平均百分比差异。当您想了解以百分比表示的相对误差时,MAPE 非常有用。在本例中,平均百分比差异为 8.42%。在这种情况下,较低的 MAPE 也表示较高的准确度。
SMAPE(对称平均绝对百分比误差): SMAPE 值为 8.15%。它与 MAPE 类似,但使用的是绝对差值的平均值以及预测值和实际值的总和。SMAPE 提供了预测值与实际值之间百分比差异的对称视图。在本例中,平均对称百分比差异为 8.15%。SMAPE 越低,说明准确度越高。
MASE(平均绝对缩放误差): MASE 值为 0.333。它衡量的是相对于天真基线模型( naive baseline model)平均绝对误差的预测准确度。MASE 是比较不同时间序列数据集预测准确性的有用指标。在本例中,该模型的预测准确度约为天真基线的 0.333 倍。MASE 越低,表示准确度越高,因为这意味着与基线相比,模型预测的准确度更高。因此,MASE 值越低越好。

参考

  • Another look at measures of forecast accuracy 【推荐】
  • https://mlpills.dev/time-series/error-metrics-for-time-series-forecasting/ [推荐,说明了指标的优劣]
  • https://www.sktime.net/en/latest/api_reference/auto_generated/sktime.performance_metrics.forecasting.mean_squared_scaled_error.html
  • https://en.wikipedia.org/wiki/Mean_absolute_scaled_error
  • https://blog.csdn.net/weixin_43786241/article/details/109626631

TILDE-Q:让时间序列预测结果更真实的损失函数

解决问题:常用的损失函数MSE、MAE是让预测结果与每个真实值的差距最小。所以训练的模型可能无法预测出准确的形状,而只是找到一种最简单的方法让点预测结果误差最小。
下述这篇文章为了解决这个问题,文中提出了一种新的时间序列预测损失函数,能够更加关注时间序列预测结果的形状和真实序列是否匹配,弥补了MSE等点误差损失函数的缺陷。

论文标题:TILDE-Q: A TRANSFORMATION INVARIANT LOSS FUNCTION FOR TIME-SERIES FORECASTING
下载地址:https://arxiv.org/pdf/2210.15050v1.pdf
源码:https://github.com/HyunWookL/TILDE-Q (备注:没太多人使用,目前效果存疑)

https://cloud.tencent.com/developer/article/2195702

相关性度量

MSE用来评估预测值与真值间误差的绝对值,但是无法度量相关性,因此常用PCC(皮尔逊相关)计算二者相关性作为补充的评价指标。
一致性度量: CCC则既能够体现相关性(趋势),又能够体现误差值。

一致性相关系数Concordance Correlation Coefficient

CCC结合了MSE和PCC的特点,提供了一种可以同时度量相关性和绝对插值的指标,具体定义如下:
在这里插入图片描述
其中
ρ表示相关系数。绝对差值越小,CCC值越大,相关性越强CCC值也越大,因此该值越接近1,则算法的表现越好。

主要应用于:衡量多种方法的一致性

详细理解
用于评价两份定量资料的一致性或可靠性,它在Pearson相关系数的基础上进行了改进,用Pearson相关系数描述一致性的缺点是,无法考查两个变量的差距有多大,而CCC还同时考察了两个变量偏离45°线的程度,可以反映两个变量的差距大小,如果两个变量的Pearson相关系数较大,且偏离45°线很小,则说明一致性较好。 ( https://www.bilibili.com/read/cv11060862/ )
在这里插入图片描述

有个疑问,PCC可以作为回归的衡量指标吗?
个人思考:PCC主要是衡量两个变量之间的线性相关,如果使用这个,仅能去评价预测值和真实值的线性相关性,但无法去衡量预测值与真实值之间实际的差异还有多少,即无法学习或者衡量真实分布的量纲。
而且,PCC也不是衡量分布一致性的指标,常常衡量两个概率分布之间的差异性指标有:KL(Kullback-Leibler divergence)散度、JS(Jensen-Shannon divergence)散度、交叉熵(cross entropy)、Wasserstein距离等。

参考:
https://blog.csdn.net/Avery123123/article/details/102681688
https://en.wikipedia.org/wiki/Concordance_correlation_coefficient
https://www.cnblogs.com/duduheihei/articles/14088547.html

PCC与CCC的区别联系

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

https://www.alexejgossmann.com/ccc/

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv8原理解析[目标检测理论篇]

接下来是我最想要分享的内容,梳理了YOLOv8预测的整个流程,以及训练的整个流程。 关于YOLOv8的主干网络在YOLOv8网络结构介绍-CSDN博客介绍了,为了更好地介绍本章内容,还是把YOLOv8网络结构图放在这里,方便查看。 1.YOL…

AI讲师大模型培训老师叶梓:大模型应用的方向探讨

大模型应用的关键方向及其落地案例可以从多个角度进行探讨,结合最新的研究和实际应用案例,我们可以更全面地理解这些技术如何推动社会和经济的发展。 Agent(数字代理): 方向说明:Agent方向的AI技术旨在创建能够独立执行任务、做出…

对于SOMP算法的测试

刚开始只上传了SOMP算法的代码,并没有过多介绍。 所以本篇文章对SOMP算法用法进行一个介绍 SOMP算法代码 function [X_hat] MMV_SOMP(Y, PHI, s)% SOMP:同时正交匹配追踪 simultaneous orthogonal matching pursuit% 论文:J. Determe, J. Lo…

若依plus 某些接口(用户信息等)响应突然变慢

今天一大早起来发现我的接口突然响应变慢了! 就什么都没动,啥也没改,但是一些接口又很快。 百度了很多,都说叫我改sql查询方式,又怀疑是过滤器的问题,很遗憾都不是! 一个响应40秒!…

[译文] 恶意代码分析:1.您记事本中的内容是什么?受感染的文本编辑器notepad++

这是作者新开的一个专栏,主要翻译国外知名安全厂商的技术报告和安全技术,了解它们的前沿技术,学习它们威胁溯源和恶意代码分析的方法,希望对您有所帮助。当然,由于作者英语有限,会借助LLM进行校验和润色&am…

IOT-9608I-L ADC端口的使用(连续采样ADC值)

目录 概述 1 硬件介绍 1.1 认识硬件 1.2 引脚信号定义 2 软件功能实现 2.1 查看iio:device0下的接口信息 2.2 实现连续采样ADC 2.2.1 功能描述 2.2.2 代码实现 2.2.3 详细代码 3 测试 概述 本文主要讲述IOT-9608I-L ADC端口的使用方便,其内容包括板卡上的…

密室逃脱游戏-第12届蓝桥杯省赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第58讲。 密室逃脱游戏&…

2024年第九届数维杯数学建模B题思路分享

文章目录 1 赛题思路2 比赛日期和时间3 竞赛信息4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间:2024…

分布式模式让业务更高效、更安全、更稳定

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 🚀 转载自热榜文章🔥:探索设计模式的魅力:分布式模…

Ubuntu添加网络映射路径

参考资料 linux挂在阿里云盘(webdav协议)给服务器扩容、备份数据等_davfs2-CSDN博客 Linux将WebDAV为本地磁盘 - 夏日冰菓 (lincloud.pro) systemd系统开机运行rc.local_rc-local.service: failed to execute command: exec -CSDN博客 系统版本&#xff…

word格式技巧

文章目录 论文格式技巧论文交叉引用怎么弄论文的页码怎么弄 论文格式技巧 论文交叉引用怎么弄 1.取消文献原有的编号 2.定义新编号 3.具体编号设置 4.在引用的地方插入,具体引用选项卡–>交叉引用–>选择后插入 2. 4. 论文的页码怎么弄 假设我们有这样一…

List的两种实现

前置知识: 数组 baseAddress:数组的首地址 dataTypeSize:数组中元素类型的大小,如int为4字节 为什么数组索引从0开始,假如从1开始不行吗? 在根据数组索引获取元素的时候,会用索引和寻址公式来计…

HBase 读写流程

HBase 读写流程 1. 读流程 Client先访问zookeeper,从zookeeper获取meta region的位置从meta region中读取meta表中的数据,meta中存储了用户表的region信息;根据namespace、表名和rowkey在meta表中找到对应的region信息;找到这个r…

[Kotlin]创建一个私有包并使用

1.创建Kotlin项目 创建项目: 在Android Studio或其他IDE中选择“Create New Project”。选择Kotlin和Gradle作为项目类型和构建系统。指定项目名称和位置,完成设置。 添加依赖: 如果你的库需要额外的依赖,可以在 build.gradle (Module: app…

文件各种上传,离不开的表单 [html5]

作为程序员的我们,经常会要用到文件的上传和下载功能。到了需要用的时候,各种查资料。有木有..有木有...。为了方便下次使用,这里来做个总结和备忘。 利用表单实现文件上传 最原始、最简单、最粗暴的文件上传。 前端代码: //方…

oracle 清理 trace 和 alert 日志文件

某天,发现磁盘空间被占满了,继续查询发现是 oracle 的日志文件占满了磁盘空间 其中: trace文件有35G, alert 有23G 目录地址是: diag/rdbms/orcl/orcl/trace, diag/rdbms/orcl/orcl/alert 都是在 oracle 目录下的 diag 目录内部 # 可以使用 以下命令对目录大小进行排…

Git与GitHub交互

注册 https://github.com/ 本地库与远程库交互方式 创建本地库并提交文件 创建远程库 在本地库创建远程库地址别名 查看现有远程库地址的别名 git remote -v 创建远程库地址别名 git remote add [别名] [远程地址] 远程路地址位置 示例 成员1推送 git push [别名] [分支…

视频剪辑图文实例:一键操作,轻松实现视频批量片头片尾减时

视频剪辑是现代媒体制作中不可或缺的一环,而批量处理视频更是许多专业人士和爱好者的常见需求。在剪辑过程中,调整视频的片头片尾时长可以显著提升视频的质量和观感。本文将通过图文实例的方式,向您展示如何一键操作,轻松实现视频…

借助Aspose.SVG图像控件,在线将 PNG 转换为 Base64 字符串

Aspose.SVG for .NET 是用于SVG文件处理的灵活库,并且与其规范完全兼容。API可以轻松加载,保存和转换SVG文件,以及通过其文档对象模型(DOM)读取和遍历文件的元素。API独立于任何其他软件,使开发人员无需使用…

jenkins+gitlab+ansible-tower实现发布

前提准备: gitlab中上传相应的jenkinsfile文件和源码。 安装和破解ansible-tower。 安装jenkins。 大致流程:从gitlab中拉取文件,存放到windows机器上,使用nuget等进行打包到windows中,使用sshPublisher语句传输到远程…