论文笔记: One Fits All:Power General Time Series Analysis by Pretrained LM

1 intro

  • 时间序列领域预训练模型/foundation 模型的研究还不是很多
    • 主要挑战是缺乏大量的数据来训练用于时间序列分析的基础模型
  • ——>论文利用预训练的语言模型进行通用的时间序列分析
    • 为各种时间序列任务提供了一个统一的框架

 

  • 论文还调查了为什么从语言领域预训练的Transformer几乎不需要任何改动就可以适应时间序列分析
    • —预训练Transformer中的自注意模块通过训练获得了执行某些非数据相关操作的能力
    • 这些操作与输入模式上的主成分分析(PCA)密切相关

2 模型

2.1 模型架构

  •  利用自然语言处理预训练的Transformer的参数进行时间序列分析
    • 重点关注GPT-2模型
  • 还尝试了其他模型,如BERT和BEiT,以进一步证明跨领域知识传递的通用性存在于广泛的预训练模型中

2.1.1 冻结的预训练块

  • 由于自注意层和前馈神经网络(FFN)包含了来自预训练语言模型的大部分学习知识,因此我们选择在微调时冻结他们

2.1.2 位置嵌入和层归

        

  • 为了以最小的努力增强下游任务,我们微调了位置嵌入和layer normalization层
    • layer normalization 计算均值和方差也是用神经网络计算的,所以也需要微调
  • 机器学习笔记:神经网络层的各种normalization_relu 和 batchnorm的神经元数目一样吗_UQI-LIUWJ的博客-CSDN博客

2.1.3  输入embedding

  • 重新设计和训练输入嵌入层,以将NLP预训练模型应用于各种任务和新的模态
    • 将时间序列数据投影到特定预训练模型所需的维度
    • 使用linear probing

2.1.4 归一化

  • 数据归一化对于各种模态的预训练模型至关重要
    • 除了预训练LM中使用的Layer Normalization外,还加入了一个简单的数据归一化块,即反向实例归一化(reverse instance norm)
    • 简单地使用均值和方差对输入时间序列进行归一化,然后将它们添加回输出中

2.1.5 patching

  • 为了提取局部语义信息,论文利用分块(Patching)
    • 通过聚合相邻的时间步骤来形成一个基于Patch的Token
    • 在normalization 后进行patching

4 实验

4.1 主要结论

4.2 补全

 4.3 分类

 4.4 异常检测

 4.5 长期预测

 4.6 短期预测

 4.7 few shot 预测

只使用很少的一部分训练数据(10%,5%)

 4.8 zero-shot 预测

在A数据集上训练,在B数据集上测试

 5 消融实验

5.1 模型的选择

  • 分析了GPT2层数和微调参数的选择。
  • 附录H中的结果表明,与完整或少量层数相比,具有6层的GPT2是一个合理的选择,并且部分冻结可以避免灾难性遗忘,使微调能够在不过拟合的情况下进行。

5.2 预训练的有效性

  • GPT2(6)在时间序列任务中表现优于GPT2(0)和GPT2随机初始化
    • ——>具有预训练参数的GPT2可以在时间序列任务上取得改进
  • 此外,GPT2(6)的表现也优于GPT2非冻结,表明部分冻结也有所帮助。

  • 附录H.2中的结果显示,随机初始化的GPT2(6)在冻结情况下表现不佳,预训练知识对于时间序列任务至关重要。

 6  预训练模型在跨领域知识转移方面的普遍性

  • 对BERT和图像预训练领域的BEiT进行了实验
    • 知识转移的能力不仅限于基于GPT2的预训练语言模型

 7 预训练模型中的Transformer和PCA 对应

证明略

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

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

相关文章

【ag-grid-vue】column

网格中的每一列都使用列定义(ColDef)来定义。列根据在网格选项中指定的列定义的顺序在网格中定位。 列定义 下面的例子展示了一个定义了3列的简单网格: <template><ag-grid-vuestyle"height: 300px; width: 1000px"class"ag-theme-balham":colum…

get√接口自动化核心知识点浓缩,为面试加分

日常接触到的接口自动化从实际目标可以划分为两大类&#xff1a; 1、为模拟测试数据而开展的接口自动化 这种接口自动化大多是单次执行&#xff0c;目的很明确是为了功能测试创造测试数据&#xff0c;节约人工造数据的时间和人工成本&#xff0c;提高功能测试人员的测试效率。…

chain of thought (思维链, cot)

定义 思维链 (Chain-of-thought&#xff0c;CoT) 的概念是在 Google 的论文 "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models" 中被首次提出。思维链&#xff08;CoT&#xff09;是一种改进的提示策略&#xff0c;用于提高 LLM 在复杂推理…

【UE5】给模型指定面添加自定义材质

实现步骤 1. 首先我们向UE中导入一个简单的模型&#xff0c;可以看到目前该模型的材质插槽只有一个&#xff0c;当我们修改材质时会使得模型整体的材质全部改变&#xff0c;如果我们只想改变模型的某些面的材质就需要继续做后续操作。 2. 选择建模模式 3. 在模式工具栏中点击…

Linux学习之Ubuntu 20使用systemd管理OpenResty服务

sudo cat /etc/issue可以看到操作系统的版本是Ubuntu 20.04.4 LTS&#xff0c;sudo lsb_release -r可以看到版本是20.04&#xff0c;sudo uname -r可以看到内核版本是5.5.19&#xff0c;sudo make -v可以看到版本是GNU Make 4.2.1。 需要先参考我的博客《Linux学习之Ubuntu 2…

SpringBoot Mybatis 多数据源 MySQL+Oracle

一、背景 在SpringBoot Mybatis 项目中&#xff0c;需要连接 多个数据源&#xff0c;连接多个数据库&#xff0c;需要连接一个MySQL数据库和一个Oracle数据库 二、依赖 pom.xml <dependencies><dependency><groupId>org.springframework.boot</groupId&…

【Golang】go条件编译

交叉编译只是为了能在一个平台上编译出其他平台可运行的程序&#xff0c;Go 作为一个跨平台的语言&#xff0c;它提供的类库势必也是跨平台的&#xff0c;比如说程序的系统调用相关的功能&#xff0c;能根据所处环境选择对应的源码进行编译。让编译器只对满足条件的代码进行编译…

【Linux】centos8安装cmake3.27.4

第一步&#xff0c;去官网下安装包&#xff0c;一定不要下错了 下好了之后&#xff0c;用ftp软件传到云服务器或者虚拟机上&#xff0c;我用的是centos8系统&#xff0c;安装之前先准备好这些依赖项 yum install -y gcc gcc-c make automake yum install -y openssl openssl-…

多线程应用——单例模式

单例模式 文章目录 单例模式一.什么是单例模式二.如何实现1.口头实现2.利用语法特性 三.实现方式&#xff08;饿汉式懒汉式&#xff09;1.饿汉式2.懒汉式3.线程安全的单例模式4.双重检查锁5.禁止指令重排序 一.什么是单例模式 单例模式&#xff08;Singleton Pattern&#xff…

LLM本地知识库问答系统(二):如何正确使用LlamaIndex索引

推荐阅读列表&#xff1a; LLM本地知识库问答系统&#xff08;一&#xff09;&#xff1a;使用LangChain和LlamaIndex从零构建PDF聊天机器人指南 上一篇文章我们介绍了使用LlamaIndex构建PDF聊天机器人&#xff0c;本文将介绍一下LlamaIndex的基本概念和原理。 LlamaIndex简介…

视频分割合并工具说明

使用说明书&#xff1a;视频分割合并工具 欢迎使用视频生成工具&#xff01;本工具旨在帮助您将视频文件按照指定的规则分割并合并&#xff0c;以生成您所需的视频。 本程序还自带提高分辨率1920:1080&#xff0c;以及增加10db声音的功能 软件下载地址 https://github.com/c…

FPGA原理与结构——时钟IP核原理学习

一、前言 在之前的文章中&#xff0c;我们介绍了FPGA的时钟结构 FPGA原理与结构——时钟资源https://blog.csdn.net/apple_53311083/article/details/132307564?spm1001.2014.3001.5502 在本文中我们将学习xilinx系列的FPGA所提供的时钟IP核&#xff0c;来帮助我们进一…

TCP/IP五层模型、封装和分用

1.网络通信基础2.协议分层OSI七层协议模型TCP/IP五层/四层协议模型【重点】 3. 封装&分用 1.网络通信基础 IP地址&#xff1a;表示计算机的位置&#xff0c;分源IP和目标IP&#xff1b;举个例子&#xff1a;买快递&#xff0c;商家从上海发货&#xff0c;上海就是源IP&…

理虚实一体化全栈全场景云计算应用实训室解决方案

一、 云计算应用统概述 云计算应用系统是指基于云计算技术构建的应用系统&#xff0c;它将软件、数据、计算和存储资源部署在云服务器上&#xff0c;通过网络根据应用按照一定策略为用户提供相关服务。云计算应用系统广泛应用于各个领域&#xff0c;包括但不限于金融、教育、政…

Windows 系统彻底卸载 SQL Server 通用方法

Windows 系统彻底卸载 SQL Server 通用方法 无论什么时候&#xff0c;SQL Server 的安装和卸载都是一件让我们头疼的事情。因为不管是 SQL Server 还是 MySQL 的数据库&#xff0c;当我们在使用数据库时因为未知原因出现问题&#xff0c;想要卸载重装时&#xff0c;如果数据库…

零基础如何使用IDEA启动前后端分离中的前端项目(Vue)?

一、在IDEA中配置vue插件 点击File-->Settings-->Plugins-->搜索vue.js插件进行安装&#xff0c;下面的图中我已经安装好了 二、搭建node.js环境 安装node.js 可以去官网下载&#xff1a;安装过程就很简单&#xff0c;直接下一步就行 测试是否安装成功&#xff1a;要…

[JDK8下的HashMap类应用及源码分析] 数据结构、哈希碰撞、链表变红黑树

系列文章目录 [Java基础] StringBuffer 和 StringBuilder 类应用及源码分析 [Java基础] 数组应用及源码分析 [Java基础] String&#xff0c;分析内存地址&#xff0c;源码 [JDK8环境下的HashMap类应用及源码分析] 第一篇 空构造函数初始化 [JDK8环境下的HashMap类应用及源码分…

Java基础 数据结构一【栈、队列】

什么是数据结构 数据结构是计算机科学中的一个重要概念&#xff0c;用于组织和存储数据以便有效地进行访问、操作和管理。它涉及了如何在计算机内存中组织数据&#xff0c;以便于在不同操作中进行查找、插入、删除等操作 数据结构可以看作是一种数据的组织方式&#xff0c;不…

React + Next.js 搭建项目(配有对比介绍一起食用)

文章标题 01 Next.js 是什么02 Next.js 搭建工具 create-next-app03 create-react-app 与 create-next-app 的区别04 快速构建 Next.js 项目05 App Router 与 Pages Router 的区别 01 Next.js 是什么 Next.js 是一个 React 框架&#xff0c;它允许你使用 React 框架建立超强的…

Python(Web时代)—— Django数据库(多表)

两表联查 常见的两表关系&#xff1a; 一对多&#xff1a;ForeignKey 举例&#xff1a;一个学生对应多个地址 一般通过外键实现 需要在“多”的那个模型中使用ForeignKey 使用on_delete指定级联删除策略&#xff1a; CASCADE&#xff1a;当父表数据删除时&#xff0c;相对…