时间序列新范式:通过合成数据将时间序列与大语言模型对齐,以增强理解和推理

1. ChatTS概述 ChatTS: Aligning Time Series with LLMs via Synthetic Data for Enhanced Understanding and Reasoning 这篇文章是清华大学、字节跳动与必示科技三方共同创作而成。 在实际的工作中,时间序列在运维领域中占据着非常重要的地位,尤其是近些年大语言模型(LLM)的发展,极大地推动了时间序列这一领域的发展。这篇论文介绍了一个叫做ChatTS的模型,它是专为时间序列分析设计的新型多模态大语言模型(MLLMs)。为缓解训练数据稀缺问题,作者们提出基于属性的合成时间序列生成方法,可自动生成具有详细属性描述的时序数据。同时,作者们创新性地提出时间序列演化式指令生成方法(Time Series Evol-Instruct),通过生成多样化时序问答对来增强模型的推理能力。ChatTS是首个以多元时间序列作为输入,并进行理解和推理的时间序列多模态大语言模型,且完全基于合成的数据集微调。作者们在包含真实数据的基准数据集上开展评估,涵盖6项对齐任务和4项推理任务。 实验结果表明,ChatTS在对齐任务中提升46.0%,在推理任务中提升25.8%,其代码的官方链接是: https://github.com/NetManAIOps/ChatTS,HuggingFace的官方链接是:https://huggingface.co/bytedance-research/ChatTS-14B/tree/main ,模型的权重都可以在HuggingFace上面直接下载并使用。 用一个实际的例子来说明这个情况,那就是用户可以针对某个KPI曲线进行提问,并咨询是否有其他曲线存在了波动,然后并提问根因,大语言模型(LLM)进行了回答。 从图2的描述来看,如果要将多条时间序列进行输入,其实可以至少有四种方法可以执行: Text-Based:将多条时间序列整理成具体的数值,然后一次性输入给大模型进行分析和输出; Agent-Based:不同的时间序列输入给不同的大模型,然后一次性汇总之后进行汇总大模型LLM的处理和输出; Multimodal Vision-Based:将时间序列处理成图片信息,然后通过多模态大模型进行处理和分析,然后输出结果; Multimodal TS-Based:将多条时间序列的数值直接输入大模型,开发一个Time Series Multimodal LLM并做输出。 ChatTS的亮点是将多维时间序列直接作为输入,然后进行推理和分析。目前是一个14B的模型,它是在QWen2.5-14B-Instruct的基础上进行微调的,其开源代码使用也很简单,可以参考下面的代码: 如果是使用vLLM推理的话,可以参考这份代码: 2 ChatTS方法论 2.1 模块划分 从论文的介绍来看,ChatTS的数据模块大概可以分成以下几个情况: Attribute Selector:属性选择器,主要用于精准的属性选择,方便生成满足这些属性的时间序列;属性包括趋势类(稳定趋势、上升趋势、下降趋势等),周期类(三角函数、正方形、无周期等),局部波动类,是否存在噪声等类别。 Attribute-Based Time Series Generator:基于属性的时间序列生成器,可以使用规则的方法进行生成; Time Series Evol-Instruct:时间序列演化式指令,用于生成大量的、多样的、精准的时间序列,并且有相应的文本回答,属于一个(time series,text question-answer)的信息; 模型设计(model design):使用了多维时间序列作为数据的输入; 模型训练(model … Continue reading 时间序列新范式:通过合成数据将时间序列与大语言模型对齐,以增强理解和推理