大模型做时序预测也很强!华人团队激活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

相关文章

Java实现检查多个时间段是否有重合

《Java实现检查多个时间段是否有重合》这篇文章主要为大家详细介绍了如何使用Java实现检查多个时间段是否有重合,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录流程概述步骤详解China编程步骤1:定义时间段类步骤2:添加时间段步骤3:检查时间段是否有重合步骤4:输出结果示例代码结语作

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

如何通过Python实现一个消息队列

《如何通过Python实现一个消息队列》这篇文章主要为大家详细介绍了如何通过Python实现一个简单的消息队列,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录如何通过 python 实现消息队列如何把 http 请求放在队列中执行1. 使用 queue.Queue 和 reque

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2