NLP的数据增强技术总结

news2025/1/14 10:12:53

文章目录

    • 一、简单的数据增强技术 EDA (Easy Data Augmentation) 即Normal Augmentation Method
      • 1、`同义词替换`(Synonym Replacement, SR):
      • 2、`随机插入`(Random Insertion, RI):
      • 3、`随机交换`(Random Swap, RS):
      • 4、`随机删除`(Random Deletion, RD):
      • 5、`字符编辑`:
      • 6、`基于模板生成`:
    • 二、Normal Augmentation Method
      • 1、`回译 (Back Translation)`:
      • 2、`生成法`:
      • 3、`文本对抗(Text Attack)`:
      • 以下详细介绍一种无监督的数据增强技术(可以先不看):
      • 损失
      • 参考:

浅层的文本数据增强技术,主要是在词汇与字符上做变换。具有代表性的是 Easy Data Augmenter

一、简单的数据增强技术 EDA (Easy Data Augmentation) 即Normal Augmentation Method

EDA 的4个数据增强操作:

1、同义词替换(Synonym Replacement, SR):

从句子中随机选取n个不属于停用词集的单词,并随机选择其同义词替换它们;

2、随机插入(Random Insertion, RI):

随机的找出句中某个不属于停用词集的词,并求出其随机的同义词,将该同义词插入句子的一个随机位置。重复n次;

3、随机交换(Random Swap, RS):

随机的选择句中两个单词并交换它们的位置。重复n次;

4、随机删除(Random Deletion, RD):

以 p的概率,随机的移除句中的每个单词;

使用EDA需要注意:控制样本数量,少量学习,不能扩充太多,因为EDA操作太过频繁可能会改变语义,从而降低模型性能。

5、字符编辑

在单词中随机删除、插入、替换字符或者交换两个字符次序,用于模拟输入错误。

6、基于模板生成

这种方法需要从语料中挖掘一些模板。最简单的就是主被动句式变换、命名实体替换等。

二、Normal Augmentation Method

深层的数据增强技术,涉及到语义保持,主要是通过深度模型的语义编码实现的,常见方法有

1、回译 (Back Translation)

用机器翻译的方法将句子翻译成另外一种语言,然后再翻译回来。回译能够在保存语义不变的情况下,生成多样的句式,是无监督学习方法中常使用的语言增强技术。

2、生成法

可以通过一些基于Transformer的比较好的语言模型去生成句子或者替换句子中的词,例如Fast Cross-domain Data Augmentation through Neural Sentence Editing先用一个编码器生成句子的的向量表示,然后基于这个向量生成新的句子。

3、文本对抗(Text Attack)

这种方法的初衷是通过生成增强的数据干扰分类器,让生成器与分类器对抗学习,从而提升分类器的鲁棒性。省略部分由于看不懂,所以跳过了,链接在此。

以下详细介绍一种无监督的数据增强技术(可以先不看):

无监督的数据增强技术UDA (Unsupervised Data Augmentation) 即一个半监督的学习方法,减少对标注数据的需求,增加对未标注数据的利用。

UDA关键解决的是如何根据少量的标注数据来增加未标注数据的使用。

Google在2019年提出了UDA方法(Unsupervised Data Augmentation 无监督数据增强),这是一种半监督学习方法。问世后,就击败了市面上其他的把深度半监督方法,该方法通过很少量的标记样本,便可以达到跟大数据样本一样的效果。

在UDA论文中,效果体现在IMDb数据集上,通过仅仅20个标记样本与约7万余个无标记样本(经过数据增强)的UDA算法学习,最终达到了与有2.5W标记数据集更好的效果,十分令人兴奋。

在这里插入图片描述

损失

如上面图,损失分为两部分:标记数据的损失未标记的数据的损失

有标注样本:一部分为有标注样本的,计算交叉熵损失。 目标是最小化有标签数据的损失。
在这里插入图片描述

无标签样本:另一部分为无标签的损失

1、目标是什么?
目标是最小化无标签增广数据与无标签数据的KL散度

2、那么这部分无标签样本怎么得到的呢?
2.1 通过数据增强得到,何为数据增强呢?
数据增强就是,在样本x的标签L不变的情况下,对x进行转换,得到新的训练样本x’, 新样本x’的标签也是L。
2.2 转换方法都有哪些?
回译、TF-IDF word替换等等

3、损失定义
新旧数据有相同的数据标签。通常为了得到的增强数据与原始数据相似,使用的是最大似然估计方法。这里采用KL散度,算两个分布的损失:
在这里插入图片描述
最终的损失为:
在这里插入图片描述
前面部分为有标签的损失部分,后半部分为无标签增强样本损失。

训练技巧
这个简书作者也没写

应用
在实际的场景下,UDA代表的半监督学习有十分广大的应用场景。例如,在某个细分领域,如金融领域,涵盖了大量的财经新闻、公司财报、法律文书、客户沟通记录等等,在该领域下没有标记的原始文本数据非常的庞大。而如果使用传统的监督学习方法,则需要十分昂贵而且专业的人员来进行数据样本的标记,这样的话,它的成本与项目进度将非常巨大与缓慢。但UDA类似的半监督学习恰好能近乎完美的解决这个问题。

参考:

NLP中常用的数据增强技术
NLP数据增强
UDA(Unsupervised Data Augmentation 无监督数据增强)

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

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

相关文章

JS中判断数据类型的几种方法

目录 1.typeof 2.constructor 3.instanceof 4.Object.prototype.toString.call 1.typeof 📙 语法 : typeof(需要判断的数据变量) 📙 特点: 🍀 对于基本数据类型,除了null外都可以返回正确的结果;对于null,返回的是Object &#x1f34…

FL Studio21中文版本新增功能FL2023完整版

FL Studio水果简称FL,全称:Fruity Loops Studio,国人习惯叫它水果萝卜。FL软件现有版本是 FL Studio 21,已全面升级支持简体中文语言界面 。 FL Studio 21水果工具更新、新功能和插件FL Studio 21已经发布,并且有许多…

[附源码]java毕业设计日常饮食健康推荐系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

迭代器C11

迭代器 迭代器失效 容器使用迭代器时,不要改变容器的大小 /在操作迭代器的过程中(使用了迭代器这种循环体),千万不要改变vectori容器的容量,也就是不要增加或者删除vectori容器中的元素 /往容器中增加或者从容器中删…

python基于百度sdk语音转文字

python基于百度sdk语音转文字 1.安装baidu-aip 这样pip install aip; 2.要是不行的话下载"识别、合成 RESTful API Python SDK ",解压到某个文件夹下面如:d:\AI 百度智能云-管理中心https://console.bce.baidu.com/ai/#/ai/speech/overview/…

【面试题】深入理解Cookie、Session、Token的区别

【面试题】深入理解Cookie、Session、Token的区别 Cookie与Session Cookie Session Cookie与Session之前的联系 Cookie与Session的在请求中的工作流程 Cookie与Session存在问题 Token 什么是Token? 为什么要有token? token认证机制 Token流…

灵界的科学丨五、心灵与意识的科学奥祕

摘自李嗣涔教授《灵界的科学》 每个人都有「自我意识」, 每天睡觉时「我」就不见了, 每天早上醒来时,「我」又回来了, 好像没有太大的改变, 这个「我」的物理现象是什么? 探索科学的最后疆界──意识 …

【感恩系列】:说点事儿 以及 我把所有的粉丝放到了中国地图上啦~

文章目录💞许久不见,甚是想念💘初次相遇💘为什么写博客?💘写博客的收获💘此可已无言💘中国版图里的我们💖设计思路:💖具体实现💕爬取粉…

【毕业设计】56-辅助驾驶系统的视觉检测\超声波\图像识别\装置研究与设计(原理图工程、仿真工程、低重复率设计文档、答辩PPT、开题报告)

【毕业设计】56-辅助驾驶系统的视觉检测\超声波\图像识别\装置研究与设计(原理图工程、仿真工程、低重复率设计文档、答辩PPT、开题报告) 文章目录【毕业设计】56-辅助驾驶系统的视觉检测\超声波\图像识别\装置研究与设计(原理图工程、仿真工…

HCIP实验2-1:IS-IS 配置实验

实验 2-1 IS-IS 配置实验 实验目标 掌握IS-IS协议基本配置掌握IS-IS协议DIS优先级修改方式掌握IS-IS协议网络类型修改方式掌握IS-IS协议外部路由引入掌握IS-IS接口cost修改方式掌握IS-IS路由渗透配置方式 拓扑图 场景 使用IS-IS协议作为某网络的IGP,R1和R5运行在…

操作系统:操作系统概论

目录前言1. 操作系统概观1.1 操作系统与计算机系统1.1.1 操作系统1.1.2 硬件软件1.1.2.1 硬件1.1.2.2 软件1.1.2.2.1 系统软件(操作系统层)1.1.2.2.2 支撑软件1.1.2.2.3 应用软件1.2 操作系统资源管理技术1.2.1 资源管理1.2.1.1 资源复用1.2.1.2 资源虚化…

线性代数---第五章特征值和特征向量

1特征值的和等于a11加上a22,特征值的积等于行列式 2利用|λE-A|0求特征值,代入特征值求基础解系,利用基础解系求特征向量 3如果两个特征值相等,那么它们的特征向量也相等 当特征值是二重根时,有可能有一个线性无关的特…

EndNote安装与使用

一、安装 1、双击ENX9Inst.msi安装 2、进入安装目录,使用CHS或ENG里的文件替换安装目录文件 CHS 中文版 ENG 英文版 二、软件优化 1、EndNote Import.enf 此文件用于导入中文文献时期刊名解析错误的问题,右击使用EndNoteX9打开后关闭即可 2、geebin…

Navicat导入SQL文件

安装Navicat 软件下载地址 https://wwz.lanzoub.com/i3T9S0gbq2wd 参考链接接 https://www.cnblogs.com/hhaostudy/p/15898030.html 准备导入SQL文件 新建连接 点击左上角连接 -> 选择MySQL 连接名:任意名称都可以,可输入localhost 主机&#x…

[计算机毕业设计]网络流量的在线恶意应用检测系统

前言 📅大四是整个大学期间最忙碌的时光,一边要忙着准备考研,考公,考教资或者实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过…

【Pytorch with fastai】第 17 章 :基础神经网络

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

【LeetCode每日一题:799.香槟塔~~~模拟】

题目描述 我们把玻璃杯摆成金字塔的形状,其中 第一层 有 1 个玻璃杯, 第二层 有 2 个,依次类推到第 100 层,每个玻璃杯 (250ml) 将盛有香槟。 从顶层的第一个玻璃杯开始倾倒一些香槟,当顶层的杯子满了,任…

〖全域运营实战白宝书 - 运营角色认知篇①〗- 初识运营,明晰运营的学习路径

✌ 大家好,我是 哈士奇 ,一位工作了十年的"技术圈混子", 致力于为开发者赋能的UP主, 目前正在运营着 TFS_CLUB社区。 ✌ 💬 人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。💬 &am…

ES6 入门教程 14 Set 和 Map 数据结构 14.1 Set

ES6 入门教程 ECMAScript 6 入门 作者:阮一峰 本文仅用于学习记录,不存在任何商业用途,如侵删 文章目录ES6 入门教程14 Set 和 Map 数据结构14.1 Set14.1.1 基本用法14.1.2 Set 实例的属性和方法14.1.3 遍历操作14 Set 和 Map 数据结构 14.1…

[附源码]java毕业设计实验教学过程管理平台

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…