顶会ICLR2024论文Time-LLM:基于大语言模型的时间序列预测

在这里插入图片描述

文青松
松鼠AI首席科学家、AI研究院负责人

美国佐治亚理工学院(Georgia Tech)电子与计算机工程博士,人工智能、决策智能和信号处理方向专家,在松鼠AI、阿里、Marvell等公司超10年的技术和管理经验,近100篇文章发表在人工智能相关的顶会与顶刊,多篇文章被AI顶会(NeurIPS, ICLR等)评选为Oral/Spotlight论文,两次入选IJCAI最具影响力论文并排名第一,两次获得AAAI人工智能系统部署应用奖,获得ICASSP Grand Challenge冠军。近期研究兴趣为智能时序与AI教育, 也是AI顶会 (AAAI, IJCAI, KDD, ICDM等) Workshop on AI for Time Series, Workshop on AI for Education的主要组织者之一。个人主页为: https://sites.google.com/site/qingsongwen8

论文:
Time-LLM: Time Series Forecasting By Reprogramming Large Language Models
Time-LLM:通过重编程大型语言模型进行时间序列预测
论文链接
论文(arXiv):https://arxiv.org/abs/2310.01728
论文(ICLR’24):https://openreview.net/forum?id=Unb5CVPtae
代码:
https://github.com/KimMeen/Time-LLM


以下内容是根据松鼠AI首席科学家、AI研究院负责人文青松团队成员在2023 CCF国际AIOps挑战赛决赛暨“大模型时代的AIOps”研讨会闪电论文分享环节上的演讲整理成文。

大家好,我是来自莫纳什大学的博士生金明(个人主页:https://mingjin.dev/),今天很荣幸能和大家分享我们团队的研究成果,介绍的内容是Time-LLM,主要探讨的是如何重编程大语言模型来实现时间序列预测。

背 景

在这里插入图片描述

和传统的任务导向学习与基准模型预训练相比,模型重编程所需要的训练样本和待学习的参数都很少。与典型的迁移学习相比,模型重编程在域内和跨域泛化等方面,都显示出了较好的有效性。在技术层面模型重编程只需要训练外部的输入变换层和输出映射层,而不涉及任何对预训练模型本身的更新。

目 的

在这里插入图片描述

我们的工作内容主要是研究如何从编程大语言模型时期可以轻松的用于时间序列相关任务。

比方说预测,我们将大语言模型重编程定义为两部分,第一是Adaptation,目的在于打通两个短链之间的隔阂,使大语言模型能够将时间序列作为输入和对应输出。其次是Alignment,也就是我们常说的对齐,目的是进一步消除短链之间的间隔。

此外我们还发现重编程大语言模型可以让其在时间序列任务上更有效。比如通过Prompts的形式引入外部的专家知识和具体的任务描述。

架 构

在这里插入图片描述

上图中展示的是我们方法的架构图,其中第1、第2、第5步是Adaptation相关的设计,然后第3、第4步是对齐相关的设计。在第3步里也就是Patch Reprogramming,我们通过使用Word Embedding来表示不同时间序列,进而对齐两个不同的模态即自然语言和时间序列。

第4步,我们通过将外部知识做前缀这个方法,进一步帮助大语言模型在时序数据上做有效的推理,外部知识可以是一些专家知识或者具体的实训任务的描述。

图片

图片中的a部分,我们进一步描述了Patch reprogramming的核心思想。在这个例子中,我们展示了如何使用自然语言刻画时间序列片段 (Patch),比如Patch 5的语义信息其实可以描述成两个具体过程:先短暂上升再平稳下降。因此我们可以用绿色和紫色两个不同的Text prototypes来表示它,进而打通如图所示的两个不同的数据模态/信息域。

图片

在图片中的b部分,我们对比了两种结合文本Prompt的范式,其中我们提出来的Prompt-as-Prefix(PaP)方法具有两个比较直接的优势:一是无需构建特定的多模态指令训练集,二是规避了大语言模型本身在生成输出时间序列方面存在的一些挑战,例如有限的上下文窗口,较低的高精度数字敏感度,和不同分词策略对结果产生的未知影响。

结 果

在这里插入图片描述

接下来展示实验的结果。如图所示,我们的Time-LLM方法显示出了非常好的有效性。上图是标准的长程预测结果在8个基准数据集上的对比,下图是标准短程预测在M4比赛数据集上的结果对比。

图片

图片中上半部分展示的是部分Few-shot和Zero-show的预测结果的对比,下半部分展示的是主要的消融实验和训练效率相关的实验结果,均显示了本文提出方法的有效性。

总 结

在这里插入图片描述

最后是一个简短的总结。

我们的研究工作一是探索使用大语言模型做时序分析任务的可能性,提出了对大语言模型做重编程的概念。二是发现和验证了时序任务本身可以抽象成一种能够被大语言模型解决的特殊语言任务。最后是我们的一些启发和展望,比如说做多模态的时序分析,以及通用的时序GPT。

我的分享到此结束,谢谢大家。


更多LLM for Time Series相关资料:

  1. (时序与时空大模型, 综述): Large Models for Time Series and Spatio-Temporal Data: A Survey and Outlook, in arXiv, Oct. 2023.

Authors: Ming Jin, Qingsong Wen*, Yuxuan Liang, Chaoli Zhang, Siqiao Xue, Xue Wang, James Zhang, Yi Wang, Haifeng Chen, Xiaoli Li (IEEE Fellow), Shirui Pan*, Vincent S. Tseng (IEEE Fellow), Yu Zheng (IEEE Fellow), Lei Chen (IEEE Fellow), Hui Xiong (IEEE Fellow)

Link: https://arxiv.org/abs/2310.10196

2.(LLM for Time Series, Position Paper): What Can Large Language Models Tell Us about Time Series Analysis, in arXiv, Feb. 2024.

Authors: Ming Jin, Yifan Zhang, Wei Chen, Kexin Zhang, Yuxuan Liang*, Bin Yang, Jindong Wang, Shirui Pan, Qingsong Wen*

Link: https://arxiv.org/abs/2402.02713

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

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

相关文章

Cloud整合Zookeeper代替Eureka

微服务间通信重构与服务治理笔记-CSDN博客 Zookeeper是一个分布式协调工具,可以实现注册中心功能 安装Zookeeper 随便 就用最新版本吧 进入Zookeeper 包目录 cd /usr/local/develop/ 解压 tar -zxvf apache-zookeeper-3.9.1-bin.tar.gz -C /usr/local/develop 进入配置文件…

uniapp 获取页面来源

获取当前页面栈的实例,以数组形式按栈的顺序给出,数组中的元素为页面实例,第一个元素为首页,最后一个元素为当前页面。 let pages getCurrentPages(); if (pages.length > 1) { // 若页面栈长度大于1则表示不止一个页面被打开…

在 JavaScript 中用 var, let, 以及 const 有什么差别?什么时候该用哪个?

「在 JavaScript 中用 var, let, 以及 const 有什么差别?」是在前端、JavaScript 面试中常见的考题。在面试时可以先大方向地列点说出异同之处,然后再针对每一个点进行深入说明。以下是以第一人称撰写的参考拟答。 var, let, 以及 const 都是在 JavaScript 用来做变数宣告的…

前端导入导出

1、将后端excel二进制文件导出excel下载 import { read, utils, writeFileXLSX } from "xlsx";const useExportExcel (excelData: string, fileName: string) > {const wb read(excelData);const ws wb.Sheets[wb.SheetNames[0]];// 从工作表生成数据行const …

Android 将图片网址url转化为bitmap

1. 图片网址url转化为bitmap 1.1. 方法一 通过 HttpURLConnection 请求 要使用一个线程去访问,因为是网络请求,这是一个一步请求,不能直接返回获取,要不然永远为null,在这里得到BitMap之后记得使用Hanlder或者EventBu…

React之useState hook

实现useState js实现一个useState,简单的原理就是赋值然后更新渲染,大概伪代码如下: function useState(initValue) {let value initValue;function setValue(v) {if (typeof v "function") {value v(initValue);} else {value…

StarRocks实战——首汽约车实时数仓实践

目录 前言 一、引入背景 二、OLAP引擎选型 三、架构演进 四、实时数仓构建 五、业务实践价值未来规划 原文大佬的这篇首汽约车实时数仓实践有借鉴意义,这里摘抄下来用作学习和知识沉淀。 前言 首汽约车(以下简称“首约”)是首汽集团打造…

物体检测-系列教程20:YOLOV5 源码解析10 (Model类前向传播、forward_once函数、_initialize_biases函数)

😎😎😎物体检测-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Pycharm中进行 本篇文章配套的代码资源已经上传 点我下载源码 14、Model类 14.2 前向传播 def forward(self, x, augmentFalse, profileFalse):if augm…

MySQL 8.0 架构 之错误日志文件(Error Log)(2)

文章目录 MySQL 8.0 架构 之错误日志文件(Error Log)(2)MySQL错误日志文件(Error Log)错误日志相关参数log_errorlog_error_services过滤器(Filter Error Log Components)写入/接收器…

Vue+SpringBoot打造大学计算机课程管理平台

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 实验课程档案模块2.2 实验资源模块2.3 学生实验模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 实验课程档案表3.2.2 实验资源表3.2.3 学生实验表 四、系统展示五、核心代码5.1 一键生成实验5.2 提交实验5.3 批阅实…

131. 分割回文串(力扣LeetCode)

文章目录 131. 分割回文串题目描述回溯代码 131. 分割回文串 题目描述 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入&#xf…

Android 架构MVI、MVVM、MVC、MVP

目录 一、MVC(Model-View-Controller) 二、 MVP(Model-View-Presenter) 三. MVVM(Model-View-ViewModel) 四. MVI(Model-View-Intent) 五.MVI简单实现 先简单了解一下MVC、MVP和…

索引使用规则6——单列索引联合索引

1、单列索引 单列索引:即一个索引只包含单个列 举个例子 1.1、给phone和那么建立索引 create index index_name on tb_qianzhui(name); create index index_phone on tb_qianzhui(phone);1.2、查询发现可能的索引有好几个,但是最终选择了phone的索引…

软考 系统分析师系列知识点之详细调查(2)

接前一篇文章:软考 系统分析师系列知识点之详细调查(1) 所属章节: 第10章. 系统分析 第2节. 详细调查 在系统规划阶段,通过初步调查,系统分析师已经对企业的组织结构、系统功能等有了大致的了解。但是&…

萝卜大杂烩 | 提高数据科学工作效率的 8 个 Python 库

本文来源公众号“萝卜大杂烩”,仅用于学术分享,侵权删,干货满满。 原文链接:提高数据科学工作效率的 8 个 Python 库 在进行数据科学时,可能会浪费大量时间编码并等待计算机运行某些东西。所以我选择了一些 Python 库…

Vue3中的Hooks详解

vue3带来了Composition API,其中Hooks是其重要组成部分。之前我写过一篇关于vue3 hooks的文章比较简单 Vue3从入门到删库 第十一章(自定义hooks) 所以本文将深入探讨Vue3中Hooks,帮助你在Vue3开发中更加得心应手。 一、Vue3 Hoo…

贪吃蛇(C语言)步骤讲解

一:文章大概 使用C语言在windows环境的控制台中模拟实现经典小游戏 实现基本功能: 1.贪吃蛇地图绘制 2.蛇吃食物的功能(上,下,左,右方向控制蛇的动作) 3.蛇撞墙死亡 4.计算得分 5.蛇身加…

[C语言]——C语言常见概念(1)

目录 一.C语言是什么、 二.C语言的历史和辉煌 三.编译器的选择(VS2022为例) 1.编译和链接 2.编译器的对比 3.VS2022 的优缺点 四.VS项目和源文件、头文件介绍 五.第⼀个C语言程序 ​​​​​​​ 一.C语言是什么、 ⼈和⼈交流使⽤的是⾃然语⾔&…

【python】爬取链家二手房数据做数据分析【附源码】

一、前言、 在数据分析和挖掘领域中,网络爬虫是一种常见的工具,用于从网页上收集数据。本文将介绍如何使用 Python 编写简单的网络爬虫程序,从链家网上海二手房页面获取房屋信息,并将数据保存到 Excel 文件中。 二、效果图&#…

【JS】解构赋值注意点,解构赋值报错

报错代码 const 小明 { email: 6, pwd: 66 } const 小刚 { email: 9, pwd: 99 }const { email } 小明 const { email } 小刚 报错图 原因 2个常量重复,重复在同一个作用域内是不能重复的,例如大括号内{const a 1; const a 2} 小伙伴A提问 问&…