㈠ NLP中简单的数据增强方法
训练机器学习或深度学习模型时,良好的数据往往是影响模型的效果最重要的因素之一。而数据不足时数据增强是一个常用的方法。
数据增强的方法可以作为我们训练nlp模型时一个快速改善 数据不平衡 或 数据缺失 的等问题。
1,增加训练的数据量,提高模型的泛化能力
2,增加噪声数据,提升模型的鲁棒性
现有NLP的Data Augmentation大致有两条思路,
(1) 同义词替换(SR: Synonyms Replace): 不考虑stopwords,在句子中随机抽取n个词,然后从同义词词典中随机抽取同义词,并进行替换。
Eg: “我非常喜欢这部电影” —> “我非常喜欢这个影片”,句子仍具有相同的含义,很有可能具有相同的标签。
(2) 随机插入(RI: Randomly Insert): 不考虑stopwords,随机抽取一个词,然后在该词的同义词集合中随机选择一个,插入原句子中的随机位置。该过程可以重复n次。
Eg : “我非常喜欢这部电影” —> “爱我非常喜欢这部影片”。
(3) 随机交换(RS: Randomly Swap): 句子中,随机选择两个词,位置交换。该过程可以重复n次。
Eg: “如何评价 2017 知乎看山杯机器学习比赛?” —> “2017 机器学习?如何比赛知乎评价看山杯”。
(4) 随机删除(RD: Randomly Delete): 句子中的每个词,以概率p随机删除。
Eg: “如何评价 2017 知乎看山杯机器学习比赛?" —> “如何 2017 看山杯机器学习 ”。
回翻方法中,我们用机器翻译把一段中文翻译成另一种语言,然后再翻译回中文。
Eg: “周杰伦是一位华语乐坛的实力唱将,他的专辑卖遍了全球。
" —>“Jay Chou is a strength singer in the Chinese music scene, his albums are sold all over the world.
”—>“周杰伦是中国音乐界的优秀歌手,他的专辑畅销全世界。”
这个方法已经成功的被用在Kaggle恶意评论分类竞赛中。反向翻译是NLP在机器翻译中经常使用的一个数据增强的方法,其本质就是 快速产生一些翻译结果达到增加数据的目的 。
回译的方法往往能 够增加文本数据的多样性 ,相比替换词来说,有时可以改变句法结构等,并保留语义信息。但是,回译的方法产生的数据依赖于 翻译的质量 ,大多数出现的翻译结果可能并不那么准确。
采用深度学习模型的方法主要为 生成和原数据相类似的数据 。
(1)增加的数据要保证和原数据一致的语义信息。
(2)增加的数据需要多样化。
抄自原文:
㈡ pytorch笔记01-数据增强
数据增强是扩充数据样本规模的一种有效地方法。深度学习是基于大数据的一种方法,我们当前希望数据的规模瞎缓扒越大、质量越高越好。模型才能够有着更好的泛化能力,然而实际采集数据的时候,往往很难覆盖掉全部的场景,磨昌比如:对于光照条件,在采集图像数据时,我哪行们很难控制光线的比例,因此在训练模型的时候,就需要加入光照变化方面的数据增强。再有一方面就是数据的获取也需要大量的成本,如果能够自动化的生成各种训练数据,就能做到更好的开源节流。
数据增强可以分为两类,一类是离线增强,一类是在线增强。
pytorch中数据增强的常用方法如下:
torchvision中内置的transforms包含了这些些常用的图像变换,这些变换能够用Compose串联组合起来。
原图:
class torchvision.transforms.CenterCrop(size)
原图像尺寸:(658, 411)
中心裁剪后尺寸:(200, 200)
class torchvision.transforms.ColorJitter(brightness=0, contrast=0, saturation=0, hue=0)
class torchvision.transforms.Grayscale(num_output_channels=1))
class torchvision.transforms.Pad(padding, fill=0, padding_mode='constant')
class torchvision.transforms.RandomCrop(size, padding=0, pad_if_needed=False)
class torchvision.transforms.RandomHorizontalFlip(p=0.5)
class torchvision.transforms.RandomVerticalFlip(p=0.5)
class torchvision.transforms.RandomRotation(degrees, resample=False, expand=False, center=None)
㈢ DL中图像数据增强
改变亮度,对比度,饱和度,加噪(高斯、椒盐、随誉哪机)
随机缩放,裁剪,翻转,旋转,扭曲(仿射变换)
随机擦除
使用随机值或者训练集的平均像素值作为mask像素值,mask的形状和位置可根据需要设定
cutout
和随机擦除类似减少过拟合的方法,但cutout擦除矩形区域存在一定概率不完全在原图像中
Hide and Seek
和随机擦除类似,核心还是去掉一些区域,使得其他区域也可以识别出物体,增加特征捕获能力
Grid Mask
不同于随机擦除、cutout和hide-seek在mask区域全部删除或者全部保留,Grid Mask采用结构化mask,并控制mask密度和size参数
mixup
同时对输入x及其对应label y做增强,对两张图片做融合,同时对他们的label做融合,其中yi,yj都是one-hot编码的label,lambda是一个融合比例取值范围为0到1。为对离散样本空间增加连续化样本,提高邻域类别间的平滑性。
计算方式:取两个batch的输入做融合,融合结果送入前馈网络得到one-hot形式的y‘,将该y’分别与融合前两个图像对应的label计算loss,再用以同样的lambda融合loss作为最终loss。
CutMix
从一幅图中剪切一个mask,粘贴到另外一幅图中。在图像生成过程中设置两幅图像的比例(例如0.4/0.6),得到对应比例的label。
FMix
不同于cutmix的矩形mask剪切粘贴,Fmix融合通道颜色将mask融入目标图
paste
随机选取一副源图像中的目标,粘贴到一幅图的随机位置,过程中伴随随机随机尺度变换。尤其适用OCR字符检测场景。
类标签平滑 label smooth
严格的one-hot label可能导致网络过拟合,因此对label进行soft化,使label有一定的概率来自均匀分布,如[0,0,1]变为[0,0,0.9]。相当于label上增加噪声,让模型训练中不要过度集中于概率较高的类别,原理类似soft NMS。
马赛克数据增强
采用4张(或其他偶数张)图拼成一张新的样本,达到:
(1)拼接缩放后,目标尺寸小于原尺寸,增加了小样本的数量、形态和位置。
(2)拼接后每个batch的目标数量增加,BN的效果更好。
(a) 图像经过一个正常的前馈训练步骤获得损失信号;
(b) 然后神经网络利用损失信号以一种对模型最有害的方式改变图像(类似弊或添加微小扰动变成难样本,很可能造成误分类,如图中红星);
(c) 在随后的训练中,模型训练学习修改后难样本。
需要注意的是,对抗训练对对抗样本的抵抗力提升的同时,可能影响普通样本的分类能力。
核心思想:通常检测数据集中简单样本大大多于困难样本,导致模型对简单场景过拟庆卜码合,困难场景欠拟合。因此先对候选RoI(Fast-RCNN)分类,选出更多难样本进行训练,提高参与训练的难样本的比例。
核心思想:CNN的feature maps冗余很必要(从ResNet50的feature maps可视化效果中得到佐证),那相比用大量的标准卷积计算,采用更多cheap的方法来获得冗余的feature maps,可以减小计算量和内存需求,并提升网络性能。 Ghost Mole 对标准卷积结果进行一系列cheap操作来生成大量的feature maps,cheap操作包括仿射变换、小波变换、分组卷积(硬件支持更好)等,作为独立模块可封装为 Ghost bottlenecks 。(思路清奇,一般考虑应该是冗余需要去除,这里反向考虑增加,诺亚这位同学厉害)
Refs:
YOLOv4 中的数据增强_机器学习算法那些事-CSDN博客
想读懂YOLOV4,你需要先了解下列技术(一) - 知乎
label smooth、mixup理解 - 知乎
全网最全:盘点那些图像数据增广方式Mosiac,MixUp,CutMix等. - 知乎
㈣ 图像处理和数据增强
前言:用CNN进行训练模型的时候,通常需要对图像进行处理,有时候也叫做数据增强,常见的图像处理的Python库:OpenCV、PIL、matplotlib、tensorflow等,这里用TensorFlow介绍图像处理的过程
进行图像的读取昌枣和解码,然后调用函数进行展示
结果如下:
图片的大小为:(512, 512, 3)
结果:耐磨拆
图片的大小为:(20, 20, 3)
注意:当放大时候,几乎图像不失真
上述为中间位置剪切或者填充,下面介绍任意位置剪切或者填充
这样就可以截取任意图像里面的内容了
下面的图像处理归结到数据增强里面了
当训练数据有限的时候,可以通过一些变换来从已有的训 练数据集中生成一些新的数据,来扩大训练数据。数据增强的方法有:
以水平面为对称轴如下:
转置,相当于矩阵的转置,90度转换
注意:颜色空间的转换必须讲image的值转换为float32类型,不能使用unit8类型
图像基本格式:
rgb(颜色)0-255,三个255为白色,转化为float32就是把区间变为0-1
hsv(h: 图像的色彩/色度,s:图像的饱和度,v:图像的亮度)
grab(灰度)
这样的方法,可以运用到车牌设别的过程中,对车牌自动进行截取。
高斯噪声、模糊处理
样本不均衡即有些类别图像特别多,有些特别少。类别不平衡数据的处理:Label shuffle
具体步骤如下图所示:
先按最多的类别进行游改随机抽取序号,组数为label的数目,然后对每个label中的样本书取模,然后分别对应自己序号的图像,最后得到的样本所有类别都一样多。
㈤ 怎样增强4g手机信号
如果您使用的是华为手机,手机状态栏的信号格数时多时少时,建议采取以下方法尝试解决:
1. 请避免使用磁吸/金属保护壳、磁吸支架或磁力吸盘
金属和磁性材质容易对信号造成干扰,导致手机信号变差。
2. 请更换其他手机卡尝试
建议您将其他手机卡安装到您的手机里查看,如果其他手机卡信号显示正常 ,可能是您的手机卡出现了问题,建议您前往运营商营业厅更换新的手机卡。
3. 请移动当前所处地点尝试
(1)一些较封闭的室内环境,例如楼栋间距密集的房屋内,手机信号可能会被遮挡,导致信号变差。您可以走出室外查看手机信号能否恢复正常。
(2)运营商网络覆盖程度根据地域不同有差异,城市区域基本满足覆盖,但一些较偏远的地区可能覆盖能力不足,这样就会导致手机信号差。
您可以通过是否只在同一区域时手机信号差,或者通过是否周边使用相同运营商电话卡旦粗的手机也信号差,判断是否为当前区域网络覆盖差导致。
4. 检查APN设置是否正确
APN设置不正确会影响网络的正常使用。
方法 1:
a.点击设置;
b.在顶部搜索栏内输入“APN”,点击接入点名称 (APN)进入移动数据页面;
c.点击接入点名称 (APN),进入APN页面;
d.打开右上角的三个点按钮;
e.点击重置为默认设置。
方法 2:
如果您的手机是EMUI 10.0及以上或Magic UI 3.0及以上的系统,或HarmonyOS 2.0及以上,您还可以按照以下步骤进行操作:
a.点击设置;
b.点击移动网络,随后点击移动数据;
c.在移动数据页面毁迟和中点击接入点名称 (APN),进入APN页面;
d.打开右上角的三个点按钮;
e.点击重置为默认设置。
温馨提醒:
如果您的手机是EMUI 8.X 、EMUI 9.X或Magic UI 2.X的系统,您可以按以下步骤进行操作:
设置 > 无线和网络 > 移动网络 > 接入点名称(APN) >纤盯 打开右上角的三个点按钮 > 重置为默认设置。
5. 请还原网络设置尝试
您可以进入设置,搜索还原网络设置,点击 还原网络设置。
温馨提示:还原网络设置会删除WLAN和蓝牙连接记录,且需要输入锁屏密码验证。
如果以上排查无法解决您的问题,建议您联系华为消费者服务热线(950800)获取更多帮助,或者提前备份好数据(微信/QQ等应用需单独备份),并携带相关购机凭证,到附近的华为客户服务中心检测。
㈥ 数据增强叠加组合与序列组合哪个好
序列组合还不错。
1、叠加隐并闭组合是将不同的数据增强方法结合在一起,如旋转、翻转、缩放、平移等,通过逐步组合实现复杂的数据变换,以达到使数据集更加丰富多样的目的。这种方法可以有效灶裂地提高模型的鲁棒性和稳定性,但需要针对具体问题进行合理设计和调整。
2、序列组合则是将不同的数据增强方法按照一定的顺序组合起来,形成不同的序列数据变换方式。这种方法主要应用于与时间序列相关的蔽陆数据增强任务,如音频信号处理、自然语言处理等领域。不同的序列组合方式可以产生不同的数据变换效果,从而提高模型的表现力和泛化能力。数据增强是深度学习领域中重要的技术之一,可以有效地解决数据不足和过拟合等问题,提高模型的性能和泛化能力。
㈦ 数据增强(解决过拟合)
为防止过拟合,除了正则化和Dropout还可以对样本数据做增强。
1、一般对train集合做猛哪猜数据增强,对valid或test不做数据增强。当模型效果不好时,可以对test做多次,比如10次数据扩增,最后做平均。--这点不是特枝型别理解。
2、做Cross Validtion 比如5折交叉验证,生成5个模型,最后投票缓闹。
3、不同的训练参数。联合前面两种方法。
4、keras中的方法,如果是图像,可以通过ImageDataGenerator进行增强。
㈧ 试述数字图像增强的主要方法。
【答案】:一空间域增强:①点运算:变换增强,如线性变换、直方图均衡化、指数增强等②邻域运算:滤波增强,氏槐如平滑/低通滤波、锐化/高通滤波二频率域增强:滤波增强,如平滑/低通滤波、锐化/高通滤波、带阻滤波和带通滤波三彩色增强:假彩色卜核贺密度分割,彩色合成四型派图像融合:多图像代数运算、多光谱图像增强五图像特征变换:压缩图像数据量,突出主要信息
㈨ yolov4-masaic数据增强方法
yolov4-masaic数据增强方法
原文链接: Mosaic数据增强_Alex-CSDN博客_mosaic数据增强
原理:Mosaic数据增强方式简单来说就是把4张图片,通过随机缩放、随机裁减、随机排布的方式进行握态拼接。根据论文的说法,优点是丰富了检源档测物体的背景和小目标,并且在计算Batch Normalization的时候一次会计算四张图片的数据,使得mini-batch大小不需要很大,一个GPU就可以达到比较好的效果。
流程图:
优点:
丰富数据集:随机使用4张图片,随机缩放,再随机分布进行拼接,大大丰富了检测数据集,特别是随机缩放增加了很多小目标,让网络的鲁棒性更好
减少GPU:直接计算4张图片的数据,使得Mini-batch大小并不需要很大,一个GPU就可以达到雹皮乱比较好的效果
缺点:
如果我们的数据集本身就有很多的小目标,那么Mosaic数据增强会导致本来较小的目标变得更小,导致模型的泛化能力变差