时间序列对于 LLM 来说并没有那么不同

利用 LLM 的力量进行时间序列建模基础模型推动了计算语言学和计算机视觉领域的最新进步,并在人工智能 (AI) 中取得了巨大成功。成功的基础模型的关键思想包括:海量数据:庞大而多样的训练数据涵盖了全面的分布,使模型能够近似任何潜在的测试分布。可转移性:记忆和回忆所学信息的机制,例如提示 [1] 和自我监督的预训练 [2],使模型能够有效地适应新任务。在 LLM 成功之后,时间序列基础模型的开发变得更加密集。图片来自论文 https://arxiv.org/pdf/2403.14735.大型时间序列基础模型 (LTSM)随着基础模型在计算语言学领域的成功,越来越多的研究工作旨在在另一种类型的序列数据中复制这种成功:时间序列。与大型语言模型 (LLM) 类似,大型时间序列基础模型 (LTSM) 旨在从大量不同的时间序列数据中学习以进行预测。然后可以针对各种任务(例如异常值检测或时间序列分类)对经过训练的基础模型进行微调。尽管时间序列基础模型的概念已经存在了一段时间,并且已经探索了各种神经架构(MLP、RNN、CNN),但没有一个能够实现零样本预测

来源:走向数据科学

6. 将所有这些要点捆绑在一起,创建一个 LTSM 模型 (LTSM-Bundle),其性能优于所有现有的为时间序列和基于变压器的时间序列预测模型重新编程 LLM 的方法。

将捆绑包与现有框架进行比较。图片来自作者。
将捆绑包与现有框架进行比较。图片来自作者。

自己重新编程 LTSM!

想尝试重新编程自己的 LTSM 吗?这是 LTSM-bundle 的教程:https://github.com/daochenzha/ltsm/blob/main/tutorial/README.md

https://github.com/daochenzha/ltsm/blob/main/tutorial/README.md

步骤 1:创建虚拟环境。克隆并安装要求和存储库。

步骤 1:创建虚拟环境。克隆并安装需求和存储库。
conda create -n ltsm python=3.8.0conda activate ltsmgit clone git@github.com:daochenzha/ltsm.gitcd ltsmpip3 install -e .pip3 install -r requirements.txt
conda create -n ltsm python=3.8.0conda activate ltsmgit clone git@github.com:daochenzha/ltsm.gitcd ltsmpip3 install -e .pip3 install -r requirements.txt

步骤 2:准备数据集。确保您的本地数据文件夹如下所示:

步骤 2:准备数据集。确保您的本地数据文件夹如下所示:
- ltsm/ - datasets/ DATA_1.csv/ DATA_2.csv/ DATA_3.csv/ ...
- ltsm/ - datasets/ DATA_1.csv/ DATA_2.csv/ DATA_3.csv/ ...

步骤 3:从训练、验证和测试数据集生成时间序列提示

步骤 3:从训练、验证和测试数据集生成时间序列提示
python3 prompt_generate_split.py
python3 prompt_generate_split.py

步骤 4:在‘./prompt_data_split’文件夹中找到生成的时间序列提示。然后运行以下命令来完成提示:

步骤 4:在“./prompt_data_split”文件夹中找到生成的时间序列提示。然后运行以下命令来完成提示:

最后一步:在 gpt2-medium 上使用时间序列提示和线性标记化训练您自己的 LTSM。