大模型做时序预测也很强!华人团队激活LLM新能力,超越一众传统模型实现SOTA

本文主要是介绍大模型做时序预测也很强!华人团队激活LLM新能力,超越一众传统模型实现SOTA,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

蔚明 投稿自 凹非寺
量子位 | 公众号 QbitAI

大语言模型潜力被激发——

无需训练大语言模型就能实现高精度时序预测,超越一切传统时序模型。

来自蒙纳士大学、蚂蚁、IBM研究院提出了一种通用框架,结果成功激活大语言模型跨模态处理时序数据的能力。

图片

时序预测有益于城市、能源、交通、遥感等典型复杂系统的决策制定。

自此,大模型有望彻底改变时序/时空数据挖掘方式。

通用大语言模型重编程框架

简单来说,研究团队提出了一个通用框架,将大语言模型轻松用于一般时间序列预测,而无需做任何训练。

主要提出两大关键技术:时序输入重编程;提示做前缀。

Time-LLM首先使用文本原型(Text Prototypes)对输入的时序数据进行重编程,通过使用自然语言表征来表示时序数据的语义信息,进而对齐两种不同的数据模态,使大语言模型无需任何修改即可理解另一个数据模态背后的信息。

为了进一步增强LLM对输入时序数据和对应任务的理解,作者提出了提示做前缀(Prompt-as-Prefix,PaP)的范式,通过在时序数据表征前添加额外的上下文提示与任务指令,充分激活LLM在时序任务上的处理能力。

主要贡献包括:

1、提出了通过重编程大型语言模型用于时序分析的全新概念,无需对主干语言模型做任何修改。

2、提出一个通用语言模型重编程框架Time-LLM,它包括将输入时序数据重新编程为更自然的文本原型表示,并通过声明性提示(例如领域专家知识和任务说明)来增强输入上下文,以指导LLM进行有效的跨域推理。

图片

3、在主流预测任务中的表现始终超过现有最好的模型性能,尤其在少样本和零样本场景中。此外,Time-LLM在保持出色的模型重编程效率的同时,能够实现更高的性能。大大释放LLM在时间序列和其他顺序数据方面尚未开发的潜力。

具体来看这一框架,首先,输入时序数据先通过RevIN归一化操作,然后被切分成不同patch并映射到隐空间。

时序数据和文本数据在表达方式上存在显著差异,两种属于不同的模态。

时间序列既不能直接编辑,也不能无损地用自然语言描述。因此,我们需要将时序输入特征对齐到自然语言文本域上。

图片

而对齐不同模态的一个常见方式是cross-attention,但是LLM固有的词汇表很大,因此无法有效直接将时序特征对齐到所有词上,而且也并不是所有词都和时间序列有对齐的语义关系。

为了解决这个问题,这项工作对词汇表进行了线形组合来获取文本原型,其中文本原型的数量远小于原始词汇量,组合起来可以用于表示时序数据的变化特征。

而为了充分激活LLM在指定时序任务上的能力,这项工作提出了提示做前缀的范式。

通俗点说,就是把时间序列数据集的一些先验信息,以自然语言的方式,作为前缀prompt,和对齐后的时序特征拼接喂给LLM,是不是能够提升预测效果?

图片

在实践中,作者确定了构建有效提示的三个关键组件:

(1)数据集上下文;(2)任务指令,让LLM适配不同的下游任务;(3)统计描述,例如趋势、时延等,让LLM更好地理解时序数据的特性。

图片

团队在长程预测上经典的8大公开数据集上进行了全面的测试。

结果Time-LLM在基准比较中显著超过此前领域最优效果,比如对比直接使用GPT-2的GPT4TS,Time-LLM有明显提升,表明了该方法的有效性。

图片

此外,在zero-shot场景中也表现了很强的预测能力。

图片

本项目获得蚂蚁集团智能引擎事业部旗下AI创新研发部门NextEvo支持。

感兴趣的小伙伴可戳下方链接了解论文详情~

这篇关于大模型做时序预测也很强!华人团队激活LLM新能力,超越一众传统模型实现SOTA的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/897743

相关文章

python设置环境变量路径实现过程

《python设置环境变量路径实现过程》本文介绍设置Python路径的多种方法:临时设置(Windows用`set`,Linux/macOS用`export`)、永久设置(系统属性或shell配置文件... 目录设置python路径的方法临时设置环境变量(适用于当前会话)永久设置环境变量(Windows系统

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

PyCharm中配置PyQt的实现步骤

《PyCharm中配置PyQt的实现步骤》PyCharm是JetBrains推出的一款强大的PythonIDE,结合PyQt可以进行pythion高效开发桌面GUI应用程序,本文就来介绍一下PyCha... 目录1. 安装China编程PyQt1.PyQt 核心组件2. 基础 PyQt 应用程序结构3. 使用 Q

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

go动态限制并发数量的实现示例

《go动态限制并发数量的实现示例》本文主要介绍了Go并发控制方法,通过带缓冲通道和第三方库实现并发数量限制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录带有缓冲大小的通道使用第三方库其他控制并发的方法因为go从语言层面支持并发,所以面试百分百会问到

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

java如何实现高并发场景下三级缓存的数据一致性

《java如何实现高并发场景下三级缓存的数据一致性》这篇文章主要为大家详细介绍了java如何实现高并发场景下三级缓存的数据一致性,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 下面代码是一个使用Java和Redisson实现的三级缓存服务,主要功能包括:1.缓存结构:本地缓存:使