【论文阅读笔记】序列数据的数据增强方法综述

【论文阅读笔记】序列数据的数据增强方法综述

摘要

 这篇论文探讨了在深度学习模型中由于对精度的要求不断提高导致模型框架结构变得更加复杂和深层的趋势。随着模型参数量的增加,训练模型需要更多的数据,但人工标注数据的成本高昂,且由于客观原因,获取特定领域的数据可能变得困难。为了缓解数据不足的问题,作者提出了数据增强的概念,通过人为生成新的数据来增加数据量。

 论文指出,数据增强方法在计算机视觉领域取得了显著的成果,并探讨了这些方法是否可以应用在序列数据上。除了在时间域进行增强的方法(如翻转、裁剪)外,论文还描述了在频率域实现数据增强的方法。此外,除了基于经验或知识设计的方法,还详细论述了一系列基于生成对抗网络(GAN)的通过机器学习模型自动生成数据的方法。

 论文对应用在自然语言文本、音频信号和时间序列等多种序列数据上的数据增强方法进行了介绍,并涉及了它们在医疗诊断、情绪判断等问题上的表现。尽管这些数据类型不同,论文总结了应用在它们上的数据增强方法背后的相似设计思路。最后,论文以这一思路为线索,梳理了应用在各类序列数据类型上的多种数据增强方法,并进行了一定的讨论和展望

Introduction

  • 线下增强:训练之前,将整个数据集进行整体操作,再把增强之后的数据集喂入模型中
  • 线上增强:更为常用的是线上增强(online augmentation),对即将送入到模型的每一批(batch)数据执行转换,不必显式地占用磁盘空间

基础方法

  • 如变换取值维度的翻转、缩放(scaling)或 变 换 时 间 维 度 的 窗 口 规 整

  • 窗口切片:滑动窗口在时序数据不断采样,切片需要随机性

  • 添加噪声:对于数值型序列数据,可以对每一个取值随机地添加一定的噪声来生成新的序列[4,8],且不影响序列的整体性质和标签信息

在这里插入图片描述

  • 通过对时间域数据进行傅里叶变换得到频率域的振幅谱和相位谱
  • 在振幅谱上随机选择区间,用基于原始振幅的统计参数重新生成一段信号替换,如图2[9](b)所示;在相位谱上随机选择区间并添加白噪声

在这里插入图片描述

频率域变换

  • 首先对时序数据进行短时傅里叶变换,得到时序关系的谱特征,
  • 再在普特征上面使用两种数据增强的方法,一种是对每一个属性做局部平均,将局部平均序列接在原始序列的后面
  • 二是打乱顺序,以增加数据的方差,这种方法会使得数据尺寸发生变化
  • 由于STFT变换得到的普特征仍然是具有时序关系,这种数据增强方法也被认为是时间-频率域进行的
  • AAFT:赋值调整傅里叶变换可以实现只在频率域进行数据增强

基于分解或混合的方法


STL方法的应用:使用STLSeasonal and Trend Decomposition using Loess)方法将时间序列分解为基础项、趋势项、季节项和残差项。
基础项、趋势项和季节项被认为是确定性部分,包含了原始序列的绝大部分信息。
Kegel等人基于相似矩阵和最近邻搜索等方法为不同成分分配权重,以组合新的时间序列。
随机的残差项通过重新建模生成,利用其分布特征和自相关特征。Bergmeir等人的简单方法:对时间序列信号进行分解,得到趋势项和季节项之外的剩余项。
对剩余项进行有放回的重复采样(bootstrap),生成新的剩余项序列,然后与前两者混合成新的时间序列。
在M3数据集上的实验证明,这种方法在月频数据上对预测精度的提升较为显著,但在长度较短的序列数据上表现一般。
  • 第一种方法以数据集为单位产生新的序列,而第二种方法以序列为单位产生新的序列。

  • 第一种方法更能利用数据集整体的分布特征进行数据增强,避免可能发生在第二种方法中对不典型序列进行增强的情况。

异常标签扩展

  • 对异常检测任务的数据增强方法,称为异常标签扩展(label expansion)。该方法旨在解决类别不平衡的问题,尤其是为了增加数量较少的异常标签。
    在这里插入图片描述

基于深度学习的序列数据增强方法

  • 使用生成对抗网络生成数据

  • GAN由生成器和判别器组成

  • 判别器判断样本是原始数据集的还是模型生成的,而生成器尽可能地最大化判别器判断错误的概率,整个模型的优化是一个二元极大极小博弈

在这里插入图片描述

总结

在这里插入图片描述

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

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

相关文章

将RK3399的挖掘机开发板在Android10下设置系统默认为24小时制

将RK3399的挖掘机开发板在Android10下设置系统默认为24小时制 2023/12/9 22:07 应该也可以适用于RK3399的Android12系统 --- a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml -2…

MagicAnimate

简介 新加坡国立大学 Show 实验室和字节联合做了一项类似的研究。他们提出了一个基于扩散的框架 MagicAnimate,旨在增强时间一致性、忠实地保留参考图像并提升动画保真度。并且,MagicAnimate 项目是开源的,目前推理代码和 gradio 在线 demo …

python程序大全(9)——鼠标乱动恶搞小病毒(有资源)

目录 🏆一、前言 🏆二、程序第一版 🏆三、程序大魔改 🚩1、基础改动 🚩2、打包 🚩3、F12保护机制 🚩4、添加开机自启项 🚩5、自己也不懂的线程魔改 🏆四、最终代码 &…

排列游戏 --- 动态规划 --- 题解

目录 排列游戏 题目描述 输入描述: 输出描述: 输入 输出 备注: 思路: 代码: 排列游戏 K-排列游戏_牛客竞赛动态规划专题班习题课 (nowcoder.com) 时间限制:C/C 1秒,其他语言2秒 空间限制:C/C 262144K&#…

外包干了三年,我承认我确实废了……

没错,我也干过外包,一干就是三年,三年后,我废了…… 虽说废的不是很彻底,但那三年我几乎是出差了三年、玩了三年、荒废了三年,那三年,我的技术能力几乎是零成长的。 说起这段三年的外包经历&a…

vue中滚轮缩放事件

在Vue中&#xff0c;可以使用原生JS的滚轮事件监听来实现滚轮缩放&#xff1a; 首先在模板中给需要监听滚轮事件的元素添加一个ref属性&#xff0c;用于在Vue中获取元素节点。 <template><div ref"scale"><!-- 需要缩放的内容 --></div> &…

Ubuntu中编译出Windows的可执行程序(.exe)

1、前言 在嵌入式开发中&#xff0c;交叉编译是很常见的情况&#xff0c;如果你把Windows电脑也看做一块高性能的开发板&#xff0c;那在Ubuntu中编译出Windows上运行的可执行程序也是很好理解的行为。 2、安装mingw64环境 sudo apt-get install mingw-w64 3、测试编译链是否安…

【力扣100】5.盛水最多的容器

添加链接描述 我的题解&#xff1a; class Solution:def maxArea(self, height: List[int]) -> int:# 两层for循环&#xff0c;保存最大值temp0res0for i in range(len(height)-1):for j in range(i1,len(height)):tempmin(height[i],height[j])*(j-i)# print(temp)resmax…

Linux压缩命令tar之排除不需要的文件或者目录(--exclude)

tar 中–exclude的简单用法 # 首先创建一个如下的目录结构和测试文件 mydir/ ├── myfile ├── zidir1 │ ├── file1 │ └── file2 ├── zidira │ └── filea └── zidirA├── fileA└── fileB3 directories, 6 files# 上面在 mydir 目录下有三个子…

C++知识点总结(8):尺取法

尺取法 一、复习枚举算法1. 算法三要素2. 最小公倍数公式3. 时间复杂度 二、算法优化初级1. 概念2. 例题(1) 最长小写子串Ⅰ 初步算法Ⅱ 认识尺取法Ⅲ 尺取法程序 (2) 最长递增子串(3) 最小子串和Ⅰ 伪代码Ⅱ 完整代码 (4) 最短字符串包含Ⅰ 伪代码 Ⅱ 代码 一、复习枚举算法 …

打破常规思维:Scrapy处理豆瓣视频下载的方式

概述 Scrapy是一个强大的Python爬虫框架&#xff0c;它可以帮助我们快速地开发和部署各种类型的爬虫项目。Scrapy提供了许多方便的功能&#xff0c;例如请求调度、数据提取、数据存储、中间件、管道、信号等&#xff0c;让我们可以专注于业务逻辑&#xff0c;而不用担心底层的…

MongoDB简介与安装

目录 1. MongoDB简介 2. 安装MongoDB 3. 基本命令行操作 4. Java代码实践 MongoDB是一种NoSQL数据库&#xff0c;以其灵活的文档存储模型和高度可扩展性而闻名。这篇文章将简单介绍一下MongoDB的基本概念&#xff0c;包括其特点和优势&#xff0c;并提供安装MongoDB的步骤。…

MapReduce的执行过程(以及其中排序)

Map阶段(MapTask)&#xff1a; 切片(Split)-----读取数据(Read)-------交给Mapper处理(Map)------分区和排序(sort) Reduce阶段(ReduceTask): 拷贝数据(copy)------排序(sort)-----合并(reduce)-----写出(write) 1、Map task读取&#xff1a; 框架调用InputFormat类的子类读取…

Vue2与Vue3的语法对比

Vue2与Vue3的语法对比 Vue.js是一款流行的JavaScript框架&#xff0c;通过它可以更加轻松地构建Web用户界面。随着Vue.js的不断发展&#xff0c;Vue2的语法已经在很多应用中得到了广泛应用。而Vue3于2020年正式发布&#xff0c;带来了许多新的特性和改进&#xff0c;同时也带来…

rpc原理与应用

IPC和RPC&#xff1f; RPC 而RPC&#xff08;Remote Procedure Call&#xff09;&#xff0c;又叫做远程过程调用。它本身并不是一个具体的协议&#xff0c;而是一种调用方式。 gRPC 是 Google 最近公布的开源软件&#xff0c;基于最新的 HTTP2.0 协议&#xff0c;并支持常见…

【SQLite】SQLite3约束总结

前面学习了SQLite数据库的常见使用方法&#xff0c;其中包含许多约束&#xff0c;常见的如NOT NULL、DEFAULT、UNIQUE、PRIMARY KEY&#xff08;主键&#xff09;、CHECK等 本篇文章主要介绍这些约束在SQLite中的使用 目录 什么是约束NOT NULL 约束DEFAULT约束UNIQUE约束PRIMA…

【设计模式-3.2】结构型——适配器模式

说明&#xff1a;本文介绍设计模式中结构型设计模式中的&#xff0c;适配器模式&#xff1b; 插头转换器 适配器模式属于结构型设计模式&#xff0c;设计思想体现在结构上的。以插头转换器为例&#xff0c;当你需要给手机充电&#xff0c;但是眼前只有一个三孔插座&#xff0…

Java基本类型的高级使用方法详解

引言 Java中的基本数据类型&#xff08;primitive types&#xff09;是构建程序的基础&#xff0c;包括整型、浮点型、字符型、布尔型等。除了直接使用这些基本类型外&#xff0c;Java还提供了一些高级的使用方法&#xff0c;使得我们能够更灵活地处理基本类型数据。本文将深入…

二叉树结点个数、叶子结点个数、树的高度、第k层结点个数的计算(C语言)

目录 前言 分治算法 模拟二叉树代码 结点个数计算 错误方法 不便利方法 基于分治思想的方法 叶子结点个数 树的高度 第k层结点的个数 前言 在链式二叉树的前序、中序、后续遍历中我们模拟了一棵二叉树&#xff0c;并实现了它的前、中、后序遍历&#xff0c;现在我们来…

UE4 .ini文件使用

在需要给配置文件的类中加上config标签&#xff0c;当然变量也要加 在项目的Config下&#xff0c;新建一个Default类的UCLASS中config等于的名字&#xff0c;这里结合上面截图就是DefaultTest 在下面写入 [/Script/项目名/类名] 然后写变量以及对应的值即可