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

23- TIME-LLM: TIME SERIES FORECASTING BY REPRO- GRAMMING LARGE LANGUAGE MODELS

解决问题

用LLM来解决时序预测问题,并且能够将时序数据映射(reprogramming)为NLP token,并且保持backbone的大模型是不变的。解决了时序序列数据用于大模型训练数据稀疏性的问题。

方法

Input Embedding

输入: X N ∗ T X^{N*T} XNT,首先对 X i X_i Xi进行均方差归一化,再对 X i X_i Xi进行类似卷积操作的分块,每个分块长度为 L p L_p Lp, 滑动步长为 s s s,那么分块后新的序列长度为
在这里插入图片描述
再将 X p ∈ P ∗ L p X_{p}\in{P*L_p} XpPLp通过线性映射层映射为 X p ∈ P ∗ d m X_{p}\in{P*d_m} XpPdm(相当于将每个段时序信息的数据映射为一个embeding,来描述该时段的信息)。

Patch Reprogramming

将时序数据进行数据对齐,为nlp能理解的信息
文中学习一个 E ′ ∈ V ′ ∗ D E'\in{V'*D} EVD, 其中 V ′ V' V远小于原词典大小,这样可以提升效果。 E ′ E' E在模型中进行学习,学习词典与path的相关性信息。
在这里插入图片描述

再将 E ′ E' E作为attention中的V和K,path embedding作为attention中的Q,这样就可以得到path与每个nlp token之间的相关性。
在这里插入图片描述

Prompt-as-Prefix.

同时在序列特征前面构造一些提示词信息,来帮助学习。

在打包和前馈时,prompt and patch嵌入 O i O_i Oi, 通过如图2所示的冻结LLM,我们丢弃前置Prompt-as-Prefix部分并获得输出表示。在此之后,将它们展平并线性投影,以得出最终预测 Y i Y_i Yi. (丢弃指得是只用他们来计算attention吗,最终输出的embedding表示丢弃掉?)
在这里插入图片描述

整体结构

其中LLM是冻结的
在这里插入图片描述

实验

在few-shot(减少训练集数量)和zero-shot(训练集和测试集不同)都进行了评估,都获得了很好的效果

Reprogramming Interpretation

可以看出,在经过充分的学习之后,不同的patch有不同的语意含义,需要不同的原型来表示。
key

在这里插入图片描述

可以借鉴的点

  • 对序列特征进行滑动窗口的划分,每段有不同的含义,生成对应的embedding
  • 通过学习与nlp词典的相关性来减少词表大小,加速训练

http://www.kler.cn/a/507763.html

相关文章:

  • Python语言的数据类型
  • python学opencv|读取图像(三十七 )截断处理
  • C# OpenCV机器视觉:区域生长算法
  • 数据库事务隔离级别
  • 网络信息安全技术研究
  • maven常见知识点
  • Python操作Excel——openpyxl使用笔记(3)
  • Spring Web MVC综合案例
  • unity学习19:unity里用C#脚本获取 gameobject 和 Componenet
  • 【ComfyUI专栏】Git Clone 下载自定义节点的代理设置
  • 运维巡检报告,运维巡检检查单,服务器系统及数据库性能检查,日常运维检查记录表格,信息系统日常运维检查(原件)
  • 【数据分享】1929-2024年全球站点的逐月平均气温数据(Shp\Excel\免费获取)
  • 【华为OD-E卷 - 计算疫情扩散时间 100分(python、java、c++、js、c)】
  • 三种文本相似计算方法:规则、向量与大模型裁判
  • 去哪儿kafka优化案例
  • 广播网络实验
  • VSCode 的部署
  • 【Flink系列】5. DataStream API
  • Solidity01 Solidity极简入门
  • Node.js 完全教程:从入门到精通