NLP数据增强方法总结及实现

参考 https://blog.csdn.net/asialee_bird/article/details/96185504

1、数据增强

数据增强是扩充数据样本规模的一种有效地方法,数据的规模越大、质量越高越好,模型才能够有着更好的泛化能力。

2、简单数据增强(Easy Data Augmentation,EDA)

(1)EDA方法
同义词替换、随机插入、随机交换、随机删除。

同义词替换(Synonym Replacement, SR):从句子中随机选取n个不属于停用词集的单词,并随机选择其同义词替换它们;
随机插入(Random Insertion, RI):随机的找出句中某个不属于停用词集的词,并求出其随机的同义词,将该同义词插入句子的一个随机位置。重复n次;
随机交换(Random Swap, RS):随机的选择句中两个单词并交换它们的位置。重复n次;
随机删除(Random Deletion, RD):以 p p p 的概率,随机的移除句中的每个单词。
(2)EDA工具使用方法
先将需要处理的语料按照下面的例子处理好成固定的格式
0 今天天气不错哦。

1 今天天气不行啊!不能出去玩了。

0 又是阳光明媚的一天!

即,标签+一个制表符\t+内容

命令使用例子

$python code/augment.py --input=train.txt --output=train_augmented.txt --num_aug=16 --alpha=0.05

其中:

input参数:需要进行增强的语料文件
output参数:输出文件
num_aug参数:每一条语料将增强的个数
alpha参数:每一条语料中改动的词所占的比例

(3)EDA相关工具
中文语料的EDA数据增强工具
Synonyms中文近义词工具包
中文常用停用词表
EDA工具论文《EDA: Easy Data Augmentation Techniques for Boosting Performance on Text Classification Tasks》

4、基于上下文的数据增强方法

(1)方法论文:Contextual Augmentation: Data Augmentation by Words with Paradigmatic Relations

(2)方法实现代码:使用双向循环神经网络进行数据增强。

(3)该方法目前针对于英文数据进行增强,实验工具:spacy(NLP自然语言工具包)和chainer(深度学习框架)。

5、数据增强的作用

(1)增加训练的数据量,提高模型的泛化能力。

(2)增加噪声数据,提升模型的鲁棒性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值